Skip to content
View clroot's full-sized avatar
📖
📖
  • Seoul

Organizations

@projects-coco

Block or report clroot

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
clroot/README.md

Backend Engineer · Full-stack capable

반복되는 큰 흐름은 고정하고, 바뀌는 정책만 제어하는 구조를 선호합니다


👋 About

반복되는 큰 흐름은 고정하고, 바뀌는 정책만 제어하는 구조를 중심으로 개발해왔습니다.

그래서 기능을 빠르게 추가하는 것보다, 정책이 추가되거나 수정될 때 기존 흐름이 흔들리지 않는지를 먼저 봅니다.

주로 Kotlin + Spring 기반의 백엔드 시스템을 설계하고, 필요에 따라 Next.js (React) 기반의 프론트엔드 개발도 함께 진행합니다.


🛠 Tech Stack

Backend

  • Kotlin, Spring Boot 4.0
  • JPA / Hibernate Reactive, PostgreSQL
  • Kotlin Coroutines, Kafka

Frontend

  • TypeScript, React 19, Next.js 15+
  • TanStack Query, Zustand

Test / Infra

  • Kotest, MockK, ArchUnit, Testcontainers
  • Docker, Docker Compose

📌 Highlight Projects

✨ Selah

개인 프로젝트 (Backend + Frontend 단독)

서버조차 평문을 알 수 없는 개인 기록 서비스입니다. E2E 암호화 기술을 적용하여 사용자의 프라이버시를 최대한 보장합니다.

  • E2E 암호화: AES-256-GCM + PBKDF2/HKDF 키 파생, Web Crypto API 활용
  • Hexagonal Architecture + DDD: ArchUnit으로 아키텍처 규칙 자동 검증
  • Multi-OAuth: Google, Apple, Kakao 지원 및 계정 연결
  • 보안·복구·편의 기능 사이의 트레이드오프를 문서로 명시

🔗 Selah API Server 🔗 Selah Web Application


📦 Hibernate Reactive Coroutines

개인 프로젝트 (오픈소스 라이브러리)

Spring Data JPA 스타일을 Hibernate Reactive + Kotlin Coroutines 환경에서 사용할 수 있게 해주는 라이브러리입니다.

  • PartTree 기반 동적 쿼리 생성: Spring Data 메서드 네이밍 규칙 호환
  • Spring Transaction 통합: Propagation, Isolation, Timeout 지원
  • Spring Boot 3.x & 4.0 멀티버전 지원

🔗 hibernate-reactive-coroutines on GitHub


🧱 Internal SDK (Private)

B2B 교육/장학 서비스용 사내 공통 SDK

여러 고객사에 유사하지만 조금씩 다른 서비스를 제공하는 환경에서, 반복되는 비즈니스 로직을 표준화하고 재사용성을 극대화하기 위해 개발했습니다.

  • 모듈화된 SDK 아키텍처: 인증, 알림, 출결, 컨설팅 등 13+개 핵심 도메인 모듈화
  • Hexagonal Architecture: 도메인/애플리케이션/어댑터 계층 분리
  • Kafka 기반 이벤트 처리로 시스템 간 결합도 감소
  • Testcontainers 기반 통합 테스트로 안정성 확보

다수의 실제 운영 서비스에서 핵심적인 역할을 수행하고 있습니다. (비공개 레포지토리)


👨‍💻 Other Projects

Company

  • B2B 교육 플랫폼 개발: 다수 고객사를 위한 SaaS형 학습 관리 시스템(LMS)을 개발하고 운영했습니다. (Kotlin, Next.js)
  • 레거시 시스템 현대화: PHP/그누보드4 기반의 레거시 시스템을 Kotlin/Spring 기반의 MSA 구조로 성공적으로 전환했습니다.
  • 사내 풀스택 보일러플레이트: Hexagonal Architecture 기반의 Kotlin 백엔드와 Next.js 프론트엔드로 구성된 표준 템플릿을 개발하여 신규 프로젝트의 생산성을 향상시켰습니다.
  • 운영 자동화 스크립트: 데이터 마이그레이션, 통계 집계, 외부 API 연동 등 반복적인 운영 업무를 자동화하는 Python 스크립트를 개발했습니다.

🧠 How I Think About Code

“반복되는 것을 매번 다시 만들지 않기 위해,
바뀌는 부분만 안전하게 다룰 수 있는 구조를 고민합니다.”

  • 구조는 오래 유지되고, 정책만 교체될 수 있어야 한다고 생각합니다.
  • 사이드 이펙트가 넓게 퍼지는 변경을 가장 위험하다고 봅니다.
  • 기술 선택보다, 이 구조가 얼마나 오래 버틸 수 있는지를 더 중요하게 봅니다.

계속 성장하는 개발자를 목표로 합니다.

Solved.ac 프로필

Pinned Loading

  1. selah-api-server selah-api-server Public

    Kotlin

  2. selah-web-application selah-web-application Public

    TypeScript

  3. hibernate-reactive-coroutines hibernate-reactive-coroutines Public

    Spring Data JPA-like convenience for Hibernate Reactive + Kotlin Coroutines

    Kotlin