nav***
2025-12-27

팀의 온보딩 문서처럼 체계적으로, 실무 선배처럼 정확하고 현실적으로, 이 책이 당신의 첫 스프링 부트 가이드가 됩니다.

"한빛미디어 서평단 <나는 리뷰어다> 활동을 위해서 책을 협찬받아 작성한 서평입니다."
스프링 부트를 공부하면서 프로젝트를 몇 개 만들어보긴 했지만, 실무와는 거리가 있다는 느낌이었습니다. 코드는 돌아가는데 '이게 맞나?' 싶은 순간이 많았습니다. 그러던 차에 《스프링 부트 개발자 온보딩 가이드》를 이번 서평단으로 만나게 되었습니다.
이 책의 가장 큰 장점은 '요구사항'부터 시작한다는 점입니다. 실제 팀에서 받을 법한 과제를 단계별로 구현해 나가는 구조라, 출판사 페이지에서 제공하는 예제 코드를 보면 각 단계의 변화를 확인할 수 있었습니다. 저자는 책의 서문에서 "이 책은 깊이 있는 이론을 나열하기보다 핵심 개념을 간결하게 설명하고, 규모 있는 실습 예제를 통해 실제 현장에서 바로 사용할 수 있는 학습 속도와 실질적인 이해를 돕는 데 초점을 맞추었습니다"라고 밝힌 것처럼, 실무 중심의 학습에 집중합니다.


1장과 2장에서는 개발을 위한 환경 설정과 스프링부트에 대한 설명을 합니다. 이어서 3장~5장에서는 본격적인 개발 실무를 진행하는데 인메모리 API로 시작해 MySQL을 연동하고 복잡한 도메인 모델을 설계하면서 레이어드 아키텍처를 배울 수 있습니다. 컨트롤러, 서비스, 리포지토리의 역할을 왜 이렇게 나눠야 하는지 코드를 짜면서 체감할 수 있었습니다. 엔티티와 DTO 분리, 도메인 주도 설계의 개념도 실제 코드와 함께 설명되어 이해가 쉬웠습니다.
6장에서 7장의 Spring Security와 JWT 부분이 가장 어려웠습니다. 인증과 인가의 차이를 알고 있었지만 막상 구현하려니 막막하더라고요. Swagger UI로 직접 테스트하면서 토큰이 어떻게 발급되고 검증되는지 확인할 수 있어 이해가 됐습니다. 다만 OAuth2나 SSO 설명이 짧아 아쉬웠고, 프로젝트 완성 후 직접 추가해보면 좋을 것 같습니다.
8장은 운영과 실습을 해볼 수 있었던 장입니다. 테스트 환경을 컨테이너화하는 Testcontainers로 실제 DB 환경과 동일한 조건에서 통합 테스트를 돌려보니 운영에서 터질 문제를 미리 잡을 수 있겠더라고요. Docker로 컨테이너화하고 AWS ECR에 이미지를 푸시한 뒤 ECS 클러스터에서 실행하는 과정을 단계별로 따라 할 수 있었습니다.
트랜잭션 관리, REST API와 GraphQL 비교(N+1 문제 언급 포함) 같은 실무 팁도 코드와 함께 설명되어 있어 실무 감각을 키우는 데 도움이 됐습니다.


아쉬운 점은 깃(Git) 활용(브랜치나 커밋 컨벤션) 같은 협업 도구 활용법이 빠졌다는 것과 AWS 비용 관리 안내가 부족하다는 점입니다.
스프링 부트의 기본 개념을 알고 실무 프로젝트를 경험해 보고 싶은 주니어 개발자에게 추천합니다. 스프링 부트를 학습 중이라면 실무 감각을 익히고 포트폴리오에 추가하기에도 좋은 프로젝트가 될 것 같습니다.
올해는 '나는 리뷰어다'로 책을 읽으면서 많은 것을 배울 수 있었던 한 해였습니다. 감사합니다.