Claude Code로 실서비스(v2) 갈아엎고 운영 중인 후기
커뮤니티 플랫폼을 폴리글랏 모노레포로 재구축한 개발기. AI 툴을 단순 보조가 아니라 팀 프로세스에 편입시켜 굴려본 경험 공유.
1. 한 줄 요약
혼자 설계한 대형 서비스를 Claude Code를 PM(오케스트레이터)으로 세우고, 서브에이전트 병렬 개발 + 컨벤션 자동 검증 + 교차 리뷰 파이프라인 구축해서 실서비스 운영까지 올렸음.
2. 타임라인
2025.08 ~ 12: v2 아키텍처 설계 및 순수 수작업 개발
2025.12: Cursor 도입 (간 보기)
2026.01: Claude Code 전면 전환 (파이프라인 구축)
2026.03: v2 정식 오픈
현재: 안정적으로 트래픽 받으면서 AI 중심으로 기능 확장 중
요약: 4개월 걸리던 삽질, AI 파이프라인 제대로 태우고 2개월 만에 오픈함.
3. 서비스 규모 (운영 실측)
개인이 운영하는 것치고는 트래픽 변동폭이 제법 있는 편인데, 이 대규모 코드 확장을 AI 파이프라인으로 다 소화하고 있음.
유저: 누적 회원 2만 명대 / DAU 4~5천 명 (평일 저녁 시간대 집중)
컨텐츠: 누적 게시글 90만 건 이상
트래픽: 실시간 동시접속 최대 1,000명 규모 (WebSocket 단일 Node 프로세스로 메모리 ~120MB 컷)
인증: 실시간 세션 토큰 발급 일 평균 10만 건 안팎
4. 소스 구조 (폴리글랏 모노레포)
각 언어와 프레임워크는 철저하게 '목적'에 맞게 찢어놓음. 경계가 명확할수록 AI가 일하기 편하기 때문.
Kotlin (Spring Boot 3.5 / JDK 21 / 헥사고날 아키텍처)
도메인 27개 × 레이어 격자로 쪼갠 100+ 서브모듈
독립 실행 앱 7개 (메인 API, 파일, 배치, 푸시 워커 등 분리)
폴리스토어: RDB + ClickHouse(분석) + Redis(캐시) + ES(검색) 구조 (별도 어댑터 모듈 분리)
소스 파일 약 4,700개
Vue (Vue 3.5 / TS / Vite / Tailwind 4)
단일 대형 SPA,
.vue컴포넌트 1,100개+, src 기준 약 37만 라인백엔드 OpenAPI 스펙 -> 프론트 TS 타입 자동 생성으로 풀스택 타입 안전성 확보
Node.js (TypeScript)
WebSocket 브로커 (Socket.io + Redis Pub/Sub) -> 인증·영속화는 백엔드에 넘기고 실시간 fan-out과 접속 상태(presence)만 담당하는 상태 최소화 브로커. 수평 확장 용이.
미니게임 서버(오목·알까기 등), 크롤러, AI 채팅 분석 등 목적별 분리
5. 핵심: Claude Code를 '팀'으로 굴린 방법
"이것 좀 짜줘" 식의 챗봇 스타일은 한계가 명확함. 사람 팀의 SDLC(개발 생명주기)를 통째로 자동화함.
PM 오케스트레이션: 메인 에이전트는 직접 코딩 안 함. 요청 오면 플랜 짜고 작업 단위 나눠서 전문가 서브에이전트들에게 병렬 디스패치 후 취합/빌드/검증만 담당.
스택별 전문가 에이전트(8개): Kotlin, Vue 반응성, Node WebSocket 등 기술별 전문가와 시니어 리뷰어, 버그 헌터 에이전트를 적재적소에 스위칭.
컨벤션 강제 주입: 구현 전에 도메인 규칙을 프롬프트에 통째로 먹이고, 구현 후 린트/테스트 통과 못 하면 Git 커밋 자체를 블로킹함. (AI 특유의 코드 스타일 중구난방 원천 차단)
git worktree 물리 격리: 병렬 작업 시 코드 덮어쓰기 방지를 위해 작업 공간 자체를 분리.
2단계 플랜 리뷰 (가성비 최고 단계):
기술 리뷰: 구현 전, 외부 AI CLI(타사 모델)로 완성도·컨벤션 교차 검증 (메인 모델 토큰 아끼는 효과)
시나리오 검증: "유저가 A를 누르면 B가 뜨고..." 식으로 흐름을 시뮬레이션해서 빠진 API나 권한 엣지케이스 사전에 컷.
실패 자산화 (규칙 명문화): 운영 중 터진 사고나 AI 오진 사례는 룰 문서에 박아두고 다음 작업 시 컨벤션으로 자동 로딩함. (같은 실수 반복 안 함)
6. 결론 및 느낀 점
AI 코딩의 병목은 모델 성능이 아니라 프로세스 설계(아키텍처, 컨벤션, 리뷰 게이트)다.
대규모 헥사고날 모노레포처럼 경계가 명확하고 격리된 구조일수록 AI 병렬 개발 효율이 극대화된다.
혼자서 다루기 벅찬 규모의 서비스도 프로세스만 잘 짜면 "AI를 팀으로 조직해서" 1인 개발 및 운영이 넉넉하게 가능하다.
ps. 위 요약 내용도 Claude 시켜서 제 말투로 정리해 본 건데, 보시기에 어떨지 모르겠네요. 참고가 되었으면 합니다.