★ 이론서가 채워주지 못하는 경험을 담아 요즘 우아한 개발이 돌아왔다
★ 현업 개발자의 생생한 경험이 필요한 당신에게 알려주는 실전 백엔드 개발기
★ 믿고 보는 우아한형제들 기술 시리즈, 대망의 세 번째 이야기
'요즘 우아한' 시리즈는 우아한형제들 기술블로그에 쌓인 글 중 분야를 넘어 함께 읽을 만한 것을 골라 책으로 엮어 왔다. 《요즘 우아한 개발》이 조직문화와 개발 전반을, 《요즘 우아한 AI 개발》이 AI 활용을 다뤘다면, 이번 《요즘 우아한 백엔드 개발》은 대규모 서비스를 떠받치는 백엔드 기술에 초점을 맞춘다. 시중의 백엔드 입문서가 '무엇을 어떻게 쓰는가'를 가르친다면, 이 책은 '왜 그렇게 결정했는가'에 답한다. 같은 기술이라도 어떤 맥락에서 어떤 대안과 저울질했는지가 실무에서는 더 중요하기 때문이다. 입문서를 여러 권 떼어도 좀처럼 채워지지 않던 '실무 감각'의 정체가 바로 이 판단의 경험이다. 이 책은 그 경험을 통째로 빌려주는 자리에 선다.
누가 읽으면 좋은가요?
연차 1~3년의 주니어 개발자라면, 혼자서는 만나기 어려운 대규모 서비스의 문제 상황과 그 해결 과정을 간접 경험할 수 있다. "내 서비스에서도 곧 겪을 일"을 미리 들여다보는 셈이다. 3~5년 차 미드레벨 개발자에게는 복잡한 비즈니스 요구사항을 기술로 풀어내는 사고의 틀을 제공한다. 검색 성능, 재고 이관, 출고 최적화처럼 비즈니스와 맞닿은 문제를 어떻게 기술 과제로 번역하는지가 곳곳에 담겨 있다. 5년 차 이상 시니어와 기술 리드에게는 다른 조직의 기술 전략과 의사결정 과정을 벤치마킹하는 자료가 된다. 스타트업에서 더 큰 트래픽의 회사로 옮기려는 개발자, 아키텍트 역할을 준비하는 개발자에게도 좋은 길잡이다.
PART 1 우형이 마주한 아키텍처 고민들은 시스템이 커지며 불거지는 구조의 문제를 다룬다. 자바 기반 포인트 시스템을 코틀린으로 전환한 이야기, 의존성이 얽힌 재고 도메인을 헥사고널 아키텍처로 안전하게 분리한 과정, 대규모 트래픽을 받던 C++ 시스템을 자바로 옮긴 결정, 그리고 카프카 대신 RDB 기반 Task Queue를 택한 판단까지, 언어와 구조를 바꾸는 결정의 뒷면을 보여준다.
PART 2 우형이 대규모 트래픽을 다루는 법은 트래픽이 몰릴 때의 생존 기술을 모았다. 카프카 컨슈머에 동적 쓰로틀링을 적용하고, 엘라스틱서치 인덱스 구조와 쿼리를 최적화해 검색 성능을 끌어올리며, Server-Sent Events로 주문 알림을 더 빠르고 안정적으로 전달하는 사례가 이어진다.
PART 3 우형이 데이터를 다루는 법은 데이터 정합성과 이관을 정면으로 다룬다. B마트 OMS의 출고 최적화, WMS 재고 이관에 쓴 분산 락, postgres_fdw로 마이그레이션 생산성을 높인 경험, 그리고 Spring Cache와 Redis를 함께 쓸 때 터지는 record 직렬화 오류의 원인과 해결까지, 데이터가 꼬이기 전에 잡는 법을 정리했다.
PART 4 기술로 비즈니스 성과 높이기는 기술이 곧 비용과 매출로 연결되는 지점을 보여준다. 클라우드 인스턴스 Rightsizing 추천 시스템, 사장님 입점 승인툴 고도화, 생산성 측정 지표 개발, 개발이 조직의 성과로 이어지는 과정을 담았다.
PART 5 AI로 새로운 가능성 실험하기는 현업에 AI를 끌어들인 실험 기록이다. GPT로 상품 카탈로그 아이템을 생성하고, 제미나이를 중앙 정보 저장소 삼아 흩어진 업무 메모를 정리하며, 해커톤에서 MCP 서버를 직접 구현해본 후기가 실려 있다.
PART 6 우아하게 문제 해결하기는 장애와 버그 한가운데서의 분투를 모았다. 서킷브레이커로 장애 전파를 막는 법, GuardDuty 이벤트로 침해 대응 아키텍처를 고도화한 사례, RADIUS 인증 실패의 추적, "IllegalArgumentException은 400인가 500인가" 같은 HTTP 상태 코드 설계 논쟁, @NaturalId 활용, Redis 커넥션 급증 이슈, @CacheEvict의 함정까지 다룬다. 실무에서 한 번쯤 마주칠 문제들의 해결 과정을 그대로 담았다.
각 글은 우아한형제들 기술블로그의 원문을 바탕으로, 책으로 읽기 좋게 다시 손봤다. 실제 코드와 아키텍처 다이어그램을 함께 싣고, 맥락을 이해하는 데 필요한 용어와 각주를 보강했다. 흩어진 블로그 글을 검색해 가며 읽을 때와 달리, 비슷한 고민끼리 묶인 장 구성을 따라가다 보면 한 조직이 백엔드 문제를 풀어 온 사고의 결을 자연스럽게 익히게 된다. 블로그에서는 한 편으로 끝났을 이야기들이, 책에서는 앞뒤 맥락과 함께 놓이며 서로를 보완한다. PART 1에서 도메인을 분리한 이야기가 PART 3의 데이터 이관, PART 6의 장애 대응과 어떻게 맞물리는지 한 흐름으로 읽힌다.
우아한형제들은 2016년부터 기술블로그를 운영하며 수많은 개발 경험을 공개해 왔다. 배달의민족과 B마트라는, 초당 수십만 건의 요청이 오가는 대규모 서비스를 직접 운영한다는 점에서 이 글들은 가공된 예제가 아니라 현장의 기록이다. 한 개인의 경험담이 아니라 수십 명의 개발자가 각자의 도메인에서 부딪힌 문제를 기록했다는 점도 다르다. 그래서 같은 백엔드라도 결제, 검색, 물류, 보안, 인프라까지 시선이 다양하다. 성공만이 아니라 실패와 시행착오까지 투명하게 드러낸다는 점도 이 책의 신뢰를 만든다. 《요즘 우아한 개발》과 《요즘 우아한 AI 개발》로 이미 검증된 시리즈의 세 번째 책이라는 점에서, 백엔드 개발자에게 이 책은 기다릴 만한 가치가 있다.
지금 백엔드 어딘가에서 막혀 있다면, 같은 길을 먼저 지나온 사람들의 판단을 빌려 보길 권한다. 정답을 그대로 베끼기 위해서가 아니라, 내 상황에 맞는 결정을 스스로 내리는 힘을 기르기 위해서다.