Search

AI 협업 개발

이 글은 시리즈의 마지막 편입니다. Claude Code와 Ralph Loop를 활용해 1,208번의 루프를 돌리면서 배운 것들을 정리합니다. 기술적인 내용보다는 AI와 협업하는 방식 자체에 대한 교훈을 다룹니다.

AI는 도구가 아니라 협업자다

처음에는 AI를 "빠른 코드 생성 도구"로 접근했습니다. "이 기능 만들어줘"라고 요청하고 결과를 복붙하는 방식이었습니다.
이 방식은 금방 한계가 왔습니다. 결과물이 프로젝트의 맥락과 맞지 않았고, 매번 수정이 필요했습니다.
방식을 바꿨습니다. AI를 새로 합류한 팀원처럼 대했습니다. 프로젝트 구조를 설명하고, 코딩 규칙을 전달하고, 현재 상태를 공유했습니다. 그러자 결과물의 품질이 달라졌습니다.

지시의 품질이 결과의 품질이다

백로그 항목을 어떻게 쓰느냐가 구현 품질을 결정합니다.
모호한 지시
- [ ] 알림 기능 개선
Markdown
복사
구체적인 지시
- [ ] [AUTO-TRADE-BUY-SELL-ALERT] BUY/SELL 신호 전용 강조 알림 — BUY/SELL 시에만 별도 강조 메시지 추가 발송 — "매수 신호 발동!" 헤더 + 진입가/목표가/스탑로스 포함 — HOLD/SKIP은 기존 요약 메시지만 유지 — SentAlertRepository로 당일 중복 발송 방지
Markdown
복사
구체적인 지시에는 무엇을, 어떻게, 어디까지, 하지 말아야 할 것이 포함됩니다. 이 네 가지가 명확할수록 AI는 의도에 맞게 구현합니다.

규칙은 파일로 고정한다

구두로 "이렇게 해줘"라고 말한 규칙은 다음 루프에서 잊힙니다. 파일에 기록한 규칙은 1,000번의 루프 후에도 지켜집니다.
CLAUDE.md에 규칙을 추가하는 것을 습관으로 만들었습니다. 같은 지적을 두 번 이상 하게 되면 그 내용을 파일에 적었습니다.
# 반복되는 실수 → CLAUDE.md에 추가 set 대신 changeXxx()를 사용한다. ← 루프 120에서 처음 지적 double 대신 BigDecimal을 사용한다. ← 루프 230에서 처음 지적 요청하지 않은 기능을 추가하지 않는다. ← 루프 310에서 처음 지적
Markdown
복사
규칙 파일이 쌓일수록 AI의 코드가 프로젝트 스타일에 가까워졌습니다.

검증을 자동화하지 않으면 품질이 무너진다

루프가 빠르게 돌아갈수록 검증을 생략하고 싶어집니다. 하지만 검증 없는 루프는 결국 돌아와서 더 큰 수정 비용을 만듭니다.
이 프로젝트에서 매 루프마다 세 단계 검증을 유지했습니다.
1.
./gradlew build — 컴파일 에러 확인
2.
curl 응답 확인 — API 정상 동작 확인
3.
브라우저 스크린샷 + JS errors=0 — 화면 렌더링 확인
이 세 단계가 자동으로 돌아가는 구조를 만들어두면 사람이 확인할 내용은 결과만 보는 것으로 줄어듭니다.

작게 쪼갤수록 빠르다

직관과 반대입니다. 항목을 크게 잡으면 한 번에 많은 것이 완성될 것 같지만, 실제로는 수정이 많아지고 검증이 어려워집니다.
"예상 0.5루프" 또는 "예상 1루프" 단위로 쪼개는 것이 결국 더 빨랐습니다.
# 큰 항목 하나보다 - [ ] 자동매매 리스크 관리 전체 구현 ← 수정 발생 시 전체가 흔들림 # 작은 항목 여럿이 낫다 - [ ] [TRAILING-STOP] 트레일링 스탑 스케줄러 — 예상 0.5루프 - [ ] [BREAK-EVEN-STOP] 손익분기 스탑 — 예상 0.5루프 - [ ] [DRAWDOWN-ALERT] 포지션 하락 경보 — 예상 0.5루프
Markdown
복사

AI가 할 수 없는 것

1,200번의 루프를 돌리면서 AI가 하지 못한 것도 명확해졌습니다.
요구사항 결정은 사람이 해야 합니다. "이 기능이 필요한가", "우선순위가 맞는가"는 AI가 판단할 수 없습니다. 백로그를 채우는 것은 사람의 역할이었습니다.
트레이드오프 판단도 사람의 영역입니다. "속도와 정확도 중 무엇을 택할 것인가", "이 기능을 지금 만들어야 하는가"는 AI가 결정하지 않았습니다.
최종 검토도 마찬가지입니다. 빌드가 되고 화면이 렌더링되더라도 "이게 맞는 방향인가"를 판단하는 것은 사람이었습니다.
AI는 결정된 것을 구현하는 속도를 높여줬습니다. 무엇을 만들지는 여전히 사람이 결정했습니다.

이 방식이 유효한 이유

혼자서 이 규모의 프로젝트를 만들려면 수개월이 걸립니다. 도메인 클래스 200개, 템플릿 20개, 외부 API 50개를 순수하게 손으로 만드는 것은 현실적으로 어렵습니다.
AI와 협업한 결과 약 3주 만에 완성됐습니다. 차이는 AI가 구현 속도를 높여줬기 때문이 아닙니다. 반복 작업을 AI에게 위임하고 사람은 설계와 판단에 집중할 수 있었기 때문입니다.
앞으로도 이 방식을 유지할 것입니다. 백로그를 채우고, 루프를 돌리고, 결과를 검토하고, 다시 백로그를 채웁니다.
이 시리즈가 비슷한 방식으로 AI와 협업하려는 분들에게 작은 참고가 되기를 바랍니다.

시리즈 정리

주제
1편
Claude Code로 암호화폐 투자 대시보드 만들기
2편
Ralph Loop 설계하기 — BACKLOG.md와 상태 파일 운영법
3편
Claude Code를 실제로 어떻게 사용했나
4편
AI와 함께 자동매매 시스템을 설계한 과정
5편
AI와 함께 개발하면서 겪은 문제들과 해결 방법
6편
AI 협업 개발