Claude Code에 '확인할 필요가 없는 범위'를 지정하자 개발 시간이 하루 30분으로 줄었다
요약
개발자가 AI 코딩 도구(Claude Code)를 활용하여 웹사이트 개발 시간을 획기적으로 단축한 경험을 공유합니다. 핵심은 모델의 성능보다 '작업 흐름'과 '보고 빈도'를 명확히 정의하는 것입니다. 이를 통해 AI가 스스로 구현, 테스트, 커밋까지 자동화하며, 개발자는 최종 결과 요약만 확인하게 되었습니다.
핵심 포인트
- AI에게 작업 범위와 순서를 미리 지정하여 자율성을 부여해야 합니다.
- 개발 과정의 보고 빈도를 줄이고, 한 사이클 단위로 결과를 모아 요청하는 것이 효율적입니다.
- 테스트 환경(Feature 테스트, Seed 데이터)을 갖추면 AI가 스스로 검증하고 수정할 수 있습니다.
- 변경 파일 목록만 확인하도록 요청하여 전체 코드 diff를 읽는 부담을 줄였습니다.
저는 혼자 웹 제작 회사를 운영하고 있습니다. 올여름, 사내 고객 관리 시스템(Laravel 12, 약 3,500행)과 고객에게 납품하는 매장 사이트의 기본 틀(블로그・예약・회원・LINE 연동)을 Claude Code가 거의 전부 작성해 주었습니다.
가장 효과적이었던 것은 모델의 성능이나 프롬프트의 표현 방식이 아니라, '무엇을 확인하고 무엇을 확인하지 않을지'를 처음에 결정한 것이었습니다. 이 글에서는 그 이야기만 다루겠습니다.
사용을 처음 시작했을 때는 '막히면 질문하기' 방식으로 사용했습니다. 에러 메시지를 붙여넣고 해결 방법을 묻거나, Blade 작성법을 물어보는 식입니다. 편리했지만, 개발 속도는 1.3배 정도였습니다.
그 이유는 판단을 전부 제가 했기 때문입니다. 다음에 무엇을 만들지 결정하는 것도, 어떤 파일을 열지 결정하는 것도, 동작 확인을 하는 것도, 커밋하는 것도 저였습니다. Claude Code가 코드를 작성하는 시간보다, 제가 '다음에 무엇을 요청할지'를 생각하고 있는 시간이 더 길었습니다.
그래서 Claude Code에게 다음 표를 그대로 전달했습니다.
| 구분 | 처리 방식 |
|---|---|
| Phase 설계(어떤 기능을 어떤 순서로 만들지) | 반드시 사람이 확인한 후에 구현 |
| ... | |
| 이것이 없었기 때문에, Claude Code는 몇 분 간격으로 '이 파일을 수정해도 될까요?'라고 물어왔습니다. 반대로 이 표를 전달한 후에는, 한 번의 지시만으로 30분~1시간 동안 조용히 구현 → 테스트 → 커밋까지 진행됩니다. |
'외부 서비스에 대한 실접근은 한마디 설명 후에'라는 내용을 넣은 것은 Instagram Graph API 동작 확인 중에 Claude Code가 curl로 실제 인증 URL을 시도하는 것을 목격했기 때문입니다. 확인 행위 자체는 올바르지만, 무엇을 하려고 하는지 알 수 없는 상태에서 외부 통신이 이루어지는 것은 위험합니다. 금지 대신 '한마디 설명'으로 한 이유는, 확인할 때마다 멈추면 자동화의 의미가 사라지기 때문입니다.
또 하나 결정한 것이 보고 빈도입니다. 처음에는 기능을 하나 만들 때마다 '동작 확인해 주세요'라며 멈췄습니다. 이렇게 하면 제가 붙어있어야만 했습니다.
요점 정리 → 구현 → 동작 확인 → 커밋을 한 사이클로, 저에게 하는 확인은 1시간에 한 번 정도로 모아달라고 요청했습니다.
동작 확인은 php artisan test와 curl로 Claude Code 자신이 수행하고, 저는 결과 요약만 볼 것입니다. 이를 위해 정리한 것은 단 세 가지입니다.
- 모듈별로
tests/Feature를 배치하여--filter로 실행할 수 있는 상태 -
migrate:fresh --seed로 관리자・요금제・메일 템플릿이 들어가는 상태 -
php artisan serve를 띄워 curl로 상태 코드를 볼 수 있는 상태
이 세 가지가 갖춰지자, Claude Code는 구현 후에 스스로 테스트를 작성하고, 실패하면 수정하며, 통과한 후에 커밋합니다. 저에게 오는 보고는 'Reservation 모듈 추가, 테스트 7건 통과, 커밋 완료'와 같은 한 줄입니다.
사소하지만 효과적이었던 규칙이 하나 더 있습니다.
파일을 변경했다면, 매번 어떤 파일을 업데이트했는지 보고에 포함해 달라고 요청했습니다. 변경 사항이 없다면 '변경 없음'이라고 적어달라고 했습니다.
보고서만 읽어도 '건드려서는 안 될 파일에 손이 가지 않았는지'를 10초 만에 확인할 수 있게 되었습니다. 모든 차이점(diff)을 다 읽을 필요가 없어졌습니다.
이런 운영 방식을 적용한 후, 제가 개발에 사용하는 시간은 하루당 15~30분입니다. 아침에 지시하고, 낮에 결과를 보고 다음 것을 지시하며, 저녁에 커밋 로그를 보는 식입니다.
규모는 이렇습니다.
| 항목 | 사내 CMS |
|---|---|
| 프레임워크 | Laravel 12 / PHP 8.3 |
| ... | |
| 작성된 코드의 거의 전부가 Claude Code에 의해 생성되었고, 저는 '무엇을 만들지', '어디서 판단을 나눌지', '동작했는지'만 확인했습니다. |
권한 분리만큼 효과적이었던 것이 설계 합의를 README에 기록하게 하는 것입니다. Claude Code는 세션을 넘어가면 문맥을 잊지만, README는 잊지 않습니다. '예약 확정 메일은 일반 텍스트(plain text)로. 이유: 매장 측에서 자유롭게 문면을 편집하기 위함'과 같이 이유와 함께 남겨두면, 다른 세션에서 'HTML 메일로 해달라'고 요청했을 때 'README에 일반 텍스트 방침과 이유가 있습니다. 변경할까요?'라고 확인해 옵니다.
AI가 과거의 자신과의 합의를 지켜주는 상태입니다.
*이 글은 Zenn에도 게시했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기