
무신사 쿠폰 시스템, DB 성능 64% 개선으로 기술 부채를 갚다
무신사는 쿠폰 시스템의 레거시 병목을 분석해 API와 쿼리 구조를 개선했습니다. 그 결과 DB 성능을 64% 높이고 고트래픽 구간의 CPU 알람을 안정화했습니다.

무신사는 쿠폰 시스템의 레거시 병목을 분석해 API와 쿼리 구조를 개선했습니다. 그 결과 DB 성능을 64% 높이고 고트래픽 구간의 CPU 알람을 안정화했습니다.

Java 기반 레거시 포인트 시스템을 Kotlin으로 전환한 과정과 기준을 정리했습니다. 테스트 강화와 점진적 배포로 안정성과 코드 품질을 함께 높였습니다.

토스뱅크 인턴들이 변수명 추천 플러그인과 민감정보 마스킹 플러그인을 만든 경험을 소개했습니다.\nDRI 문화와 수평적 협업 속에서 문제를 정의하고 해결하며 성장한 과정을 정리했습니다.

빌더 패턴은 편리하지만 필수 인수 누락을 런타임에 드러내기 쉬워 더 견고한 대안이 필요했습니다. 특별한 이유가 없다면 생성자나 팩토리 함수로 대체하는 방식을 제안했습니다.

널 객체 패턴은 호출부를 단순하게 만들 수 있지만, 오류 값과 정상 값을 구분해야 할 때는 부적합했습니다. 타입으로 구분 가능한 경우에는 Optional이나 null 같은 정적 표현을 우선 고려해야 했습니다.

암호화 설계를 위해 고전 암호부터 현대 암호, 하이브리드와 봉투 암호화까지의 흐름을 정리했습니다. JPA와 Hibernate 확장 포인트를 활용해 실무에서 암복호화를 자동화한 경험도 소개했습니다.


Kotlin Flow를 단방향 데이터 스트림 관점에서 활용해 Android 화면 상태 관리를 단순화한 사례를 설명했습니다. shareIn, merge, combine, flatMapLatest의 사용 기준과 주의점을 정리했습니다.


Spring Batch 기반 동기 연동의 병목을 Kotlin Coroutine으로 개선한 사례를 소개했습니다. Kafka와 비동기 호출을 결합해 처리 시간과 리소스 효율을 함께 높였습니다.
쿠팡 파트너스
이 게시물은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

Spring Modulith를 활용해 모놀리스와 MSA 사이에서 도메인 경계를 강제한 실무 경험을 정리했습니다. 불확실한 전환기에 논리적 모듈 분리로 운영 부담과 결합도를 함께 줄인 사례를 공유했습니다.


레거시 WebFlux 신용점수 조회 서비스를 WebMVC로 전환하며, Nginx 트래픽 미러링으로 실서비스 검증을 수행했습니다. 응답 자동 비교와 짧은 타임아웃으로 사용자 영향 없이 안정적으로 마이그레이션했습니다.

여러 경로로 모은 업체 정보의 중복을 병합으로 정리하고, 변경 이력을 바탕으로 대표 프로필의 값을 고도화했습니다. 필드별 정책을 분리해 더 합리적인 정보를 노출하도록 개선했습니다.


결제 도메인의 오류 처리를 위해 sealed class를 검토한 뒤 Arrow의 Either를 도입한 과정을 정리했습니다. 트랜잭션, 캐시, 예외 처리와의 충돌을 피하기 위해 계층별 경계도 함께 설계했습니다.