공통 패키지 공유와 빌드 복잡성 증가 트레이드오프 직접 경험 후 판단 결
모노레포를 구성한 경험에서 가장 큰 장점은 공통 컴포넌트와 타입 정의를 한 곳에서 관리할 수 있다는 점이었습니다. 인턴 팀에서 Turborepo 기반으로 세 개의 서비스를 묶었는데, 공유 UI 라이브러리 변경이 즉시 모든 앱에 반영되어 중복 코드가 줄었습니다.
반면 단점도 분명했습니다. 빌드 파이프라인 설정이 복잡해졌고, 특히 CI/CD에서 변경된 패키지만 골라 빌드하는 변경 감지 로직을 직접 구성해야 했습니다. 처음에는 전체 빌드가 매번 돌아가면서 파이프라인 시간이 오히려 길어지는 문제가 있었습니다.
결국 팀에서는 서비스 간 코드 공유 비율이 높을 때 모노레포가 효과적이고, 독립적으로 배포 주기가 다른 서비스끼리는 멀티레포가 더 단순하다는 결론을 내렸습니다. 현재 프로젝트 성격에 맞는 선택이 중요하다고 생각합니다.