
Claude Code Plan 모드를 사용해야 하는 이유
최근 회사에서 LMS 리뉴얼 프로젝트를 진행하며 Claude Code를 적극적으로 활용했습니다.
처음에는 AI가 프로젝트를 대부분 구현해 줄 것이라고 생각했고, 구현 속도를 높이는 데 집중했습니다.
하지만 프로젝트를 진행할수록 구현보다 설계가 훨씬 중요하다는 사실을 깨달았습니다.
처음에는 Plan 모드를 사용하지 않고 바로 구현을 시작했습니다.
프로젝트 개요를 간단히 설명한 뒤 “회원 관리 기능을 만들어 주세요.”, “DB를 설계해 주세요.”와 같은 요청을 주로 사용했습니다.
CRUD 기능이나 프로젝트 구조 생성은 매우 빨랐지만, 프로젝트 규모가 커질수록 AI가 세부 요구사항을 놓치는 경우가 많았습니다.
가장 기억에 남는 사례는 DB 설계였습니다.
당시 일정이 촉박했던 저는 DB 설계 대부분을 AI에게 맡겼고, 큰 틀만 확인한 채 개발을 진행했습니다.
하지만 개발이 어느 정도 진행된 후 삭제 이력을 보관해야 하는 기능이 필요하다는 사실을 확인했습니다.
문제는 대부분의 테이블이 Hard Delete 방식으로 설계되어 있었다는 점입니다.
실제 서비스에서는 삭제 이력을 보관해야 하는 경우가 많은데, AI가 생성한 설계에는 이러한 요구사항이 반영되지 않았습니다.
결국 이미 구현한 API와 서비스 로직을 다시 수정하여 Soft Delete 방식으로 변경해야 했고, 삭제 기록이 필요한 데이터가 실제 운영 환경이었다면 복구할 수 없는 상황이 발생할 수도 있었습니다.
이 경험 이후 개발 방식을 완전히 바꾸었습니다.
먼저 프로젝트 개요, 사용자 역할, 핵심 기능, 요구사항을 Markdown 문서로 정리한 뒤 Claude Code의 Plan 모드를 사용하기 시작했습니다.
또한 “내가 전달한 내용을 어떻게 이해했는지 설명하고, 모호한 부분이 있다면 질문해 달라.”라고 요청하여 AI가 프로젝트를 충분히 이해한 이후 구현을 시작했습니다.
Plan 모드를 사용하기 전에는 구현 속도는 분명 빨랐습니다.
하지만 설계가 부족한 상태에서 기능을 계속 추가하다 보니 중간에 수정해야 하는 부분이 많았고, 프로젝트 구조도 점점 복잡해졌습니다.
반면 Plan 모드를 사용한 이후에는 초기 설계 시간이 약 2시간 정도 더 소요되었습니다.
요구사항을 정리하고 설계 문서를 검토하는 과정이 추가되었기 때문입니다. 처음에는 오히려 비효율적인 방법이라고 생각했습니다.
하지만 프로젝트가 진행될수록 생각이 완전히 바뀌었습니다.
AI가 프로젝트를 훨씬 정확하게 이해하면서 요구사항에 맞는 섬세한 구현이 가능해졌고, 기능을 추가하거나 수정할 때 기존 구조를 크게 변경하는 일이 줄어들었습니다.
처음부터 탄탄하게 설계한 덕분에 유지보수도 훨씬 수월해졌으며, 불필요한 수정 작업이 줄어들면서 개발 시간과 비용 역시 자연스럽게 절감되었습니다.
이번 경험을 통해 Plan 모드는 단순히 AI의 응답 품질을 높여주는 기능이 아니라 프로젝트 전체의 품질을 높이는 개발 방식이라는 것을 느꼈습니다.
AI는 빠르게 코드를 생성해 주지만 프로젝트의 방향을 결정하는 것은 결국 개발자의 역할입니다.
Claude Code를 사용하고 있다면 구현부터 시작하기보다 Plan 모드에서 프로젝트를 충분히 설계하고, AI가 요구사항을 정확하게 이해했는지 먼저 확인해 보시기 바랍니다.
초기에는 조금 더 시간이 걸릴 수 있지만, 프로젝트 규모가 커질수록 그 차이는 유지보수성과 코드 품질에서 분명하게 나타난다고 생각합니다.

Plan 모드는 언제 사용하는 것이 좋을까요?
모든 프로젝트에서 Plan 모드를 사용할 필요는 없다고 생각합니다.
간단한 CRUD 기능을 테스트하거나 하루 안에 끝나는 토이 프로젝트라면 일반 모드만으로도 충분히 빠르게 개발할 수 있습니다.
오히려 Plan 모드로 요구사항을 정리하는 시간이 더 길게 느껴질 수도 있습니다.
반면 프로젝트 규모가 커질수록 Plan 모드의 장점은 더욱 크게 나타났습니다.
특히 다음과 같은 프로젝트라면 Plan 모드 사용을 추천합니다.
- 팀원과 함께 진행하는 프로젝트
- 실제 서비스를 개발하는 프로젝트
- DB 설계가 중요한 프로젝트
- 사용자 권한(Role)이 여러 개인 프로젝트
- 장기적인 유지보수를 고려해야 하는 프로젝트
초기 설계에는 시간이 조금 더 필요하지만, 이후 수정 작업이 줄어들고 코드의 일관성이 유지되기 때문에 결과적으로는 개발 시간과 비용을 절감하는 데 도움이 되었습니다.
개인적으로는 작은 프로젝트에서는 빠른 구현을 위해 일반 모드를 사용하고, 실제 서비스나 규모가 있는 프로젝트에서는 Plan 모드를 활용하는 것이 가장 효율적인 방법이라고 생각합니다.


