PRODUCTION · VIBE CODING
프로덕션 바이브코딩
실무 TO DO LIST
Andrej Karpathy가 정의한 바이브코딩을 실제 프로덕션 환경에서 성공적으로 운용하기 위해 반드시 챙겨야 할 체크리스트. 강연 내용을 기반으로 정리했습니다.
체크리스트 완료율
0 / 0 완료
// 이 체크리스트에서 다루는 것
올바른 도구 & 모델 선택
프로세스 & 워크플로 설정
규칙(CLAUDE.md) 작성
요건 정의 & 설계 문서화
테스트 & 코드 품질 관리
보안 & 컴플라이언스
일관성 유지 전략
실무 프롬프팅 팁
★
목표 레벨 확인 — 레벨 4에 집중
// 어느 수준의 바이브코딩을 목표로 하는가
1
함수 자동완성 (Copilot 수준)
2
스크립트 1개 생성
3
설계에 AI 관여
4
📌 프로젝트 수준 관리 (오늘의 목표)
5
완전 자율 개발 (미래)
레벨 4란? 설계, 리팩토링, 테스트, 배포, 태스크 관리까지 AI가 주도하는 수준. 사람은 방향성과 검증에 집중.
1
올바른 도구 & 모델 선택
// 바이브코딩 성패를 가르는 가장 중요한 요소
필수 Claude Code를 메인 도구로 사용한다
커서, Windsurf보다 프로젝트 수준 관리에 압도적으로 우수. Anthropic이 자사 엔지니어용으로 만든 CLI 도구. 규칙만 잘 세우면 처음부터 끝까지 사람 개입 없이 완성 가능.
필수 모델은 Claude (Sonnet/Opus) 계열을 선택한다
벤치마크 점수보다 실제 개발 전체 공정 이해도가 중요. Claude는 “개발자의 다음 행동”을 예측하도록 훈련됨. 복잡한 작업엔
Opus, 일반 작업엔 Sonnet 사용.권장 Anthropic Claude Code 공식 문서를 정독한다
프로세스, 워크플로, 프롬프팅 등 핵심 내용이 정리되어 있는 현 시점 교과서. 다른 툴을 써도 반드시 읽을 것.
권장 Armin Ronacher의 “Agent Coding Recommendations” 블로그를 정독한다
Flask 제작자. 현재 바이브코딩계 최고 레퍼런스. 기술 스택 선정 기준과 작업 방식이 상세히 정리되어 있음.
권장 정기적으로 RealWorld App 기준으로 모델/툴 벤치마크를 돌려본다
새 모델이 나오면 RealWorld App 스펙을 던져주고 “똑같이 만들어봐” → 완성 시간과 품질로 성능 비교.
Claude Code 원탑
메인 개발 도구. CLI 기반, 헤드리스 모드, 자식 인스턴스 병렬 실행 지원.
Perplexity MCP
아키텍처 조사, 디버깅 힌트. AI가 직접 검색해서 활용.
Playwright / Browser Use
프론트엔드 개발 시 브라우저 조작 및 E2E 테스트 자동화.
GitHub Issues / Jira
태스크 추적. AI가 직접 이슈 생성·완료 처리 가능.
2
규칙(Rules) 설정 — CLAUDE.md
// AI의 행동 지침. 처음 잘 잡아야 나중이 편하다
깨진 창문 이론: 처음 만들어진 코드의 틀이 나쁘면 AI도 그 패턴을 따라간다. 초기 규칙 설정이 전체 코드 품질을 좌우한다.
필수 프로젝트 시작 시
CLAUDE.md 규칙 파일을 먼저 생성한다요건 정의 후 Claude Code에게
/init 명령으로 자동 생성 가능. 매번 프롬프트 히스토리와 함께 입력으로 사용되므로 핵심만 응축해서 작성.필수 규칙은 영문으로 작성한다
한글보다 영문 프롬프트 효율이 높고, AI의 행동을 더 강력하게 제약할 수 있음.
권장 사용자 전역 규칙을
~/.claude/ 디렉토리에 설정한다개인 개발 스타일, 선호 언어, 공통 제약사항을 전역으로 적용. 프로젝트별 규칙과 병행 사용.
권장 커맨드(Command/Workflow)를 미리 만들어 반복 작업을 자동화한다
/commit, /tutorial-update 등 자주 쓰는 작업을 커맨드로 등록. 여러 작업을 배치처럼 순차 처리 가능.주의 AI가 문서와 규칙을 자동으로 최신 상태로 유지하도록 규칙에 명시한다
AI의 일관성 없는 코드 생성을 억제하는 핵심 방법. 코드나 문서의 예시·템플릿을 제공해 “이걸 따라서 만들어라”고 강제.
3
요건 정의 & 설계 문서화 (PRD)
// 바이브코딩에서 가장 중요한 단계
필수 PRD(요건 정의 문서)를 먼저 작성한다 — 육하원칙 기준
누가(대상), 언제, 무엇을, 어디에(플랫폼), 왜 만드는가, 어떻게 만들 것인가. 6가지 중 AI가 컨텍스트를 이해할 수 있을 만큼 포함.
필수 설계 문서를 작성하고 파일을 적절히 분리한다
요건 정의를 구체화. 하나의 파일에 컨텍스트가 너무 많아지지 않도록 파일 분리 필수. 기존 문서는 Markdown으로 변환해서 저장소에 포함.
필수 태스크를 작성하고 각 태스크에 인수 조건(Acceptance Criteria)을 명시한다
“이 태스크가 끝났다는 것을 어떻게 증명하는가”를 반드시 포함. 증거(스크린샷, 테스트 결과 등) 첨부를 AI에게 요구.
권장 의존성 없는 태스크는 병렬로 처리한다
AI에게 태스크 분할 후 의존성 파악을 시킨 뒤, 의존성 없는 것들은 별도 인스턴스에서 병렬 실행. 백엔드/프론트엔드 병렬 개발 가능.
권장 GitHub Issues 또는 Jira에 태스크를 등록해 AI가 추적하도록 한다
팀 작업 시 필수. AI가 이슈 트래커를 보면서 현재 작업 상황을 파악하고 진행 상태를 업데이트.
권장 플래닝 모드로 먼저 계획만 수립한 뒤 구현한다
Claude Code의
Planning Mode 활용. 코드 작성 전 계획 검토 → 방향 확인 → 구현 순서로 진행.4
테스트 & 코드 품질 관리
// AI 코드를 100% 믿으면 안 된다 — TDD로 검증
AI 생성 코드를 무조건 믿으면 안 된다. “코드를 믿는다”는 말은 무관심이고, 무관심은 의심보다 더 비열하다. 반드시 TDD로 작동을 검증할 것.
필수 TDD 방식으로 개발한다 — 테스트 먼저, 구현 코드 나중
AI에게 시키면 된다. “토큰이 더 들긴 해도 이 변명은 통하지 않는다.” 바이브코딩 성공자들은 모두 TDD로 작업.
필수 Husky로 커밋 전 Lint + Build + Test가 자동 실행되도록 설정한다
통과하지 못하면 커밋 자체가 불가능하게. 로컬에서도 커밋 차단, Push는 더더욱 불가. 양질의 코드가 자동으로 보장됨.
필수 CI/CD 파이프라인에 정적 분석, Lint, 타입 체커, 테스트를 포함한다
가능한 적은 비용으로 기계적으로 수행 가능한 작업들. 캐시 적용으로 빌드 속도 단축 필수 (특히 Java/Spring 계열).
권장 프론트엔드 개발 시 E2E 테스트(Playwright)를 자동 생성하도록 한다
UI 테스트를 AI가 자동 생성. 브라우저 조작과 시각적 확인이 필요한 작업에 활용.
권장 자동화된 코드 리뷰에 일관성 규칙을 포함한다
기존 코드와 일관성이 맞는지 확인. Lint와 Formatter 적극 활용 — AI가 읽는 코드도 일관성 유지가 중요.
권장 디버깅용 로그 필터링 스크립트를 AI에게 미리 만들어두도록 한다
에러나 디버깅 정보만 필터링하는 스크립트 → AI가 실행 후 필요한 정보만 가져와 디버깅. 토큰 절약 효과.
5
아키텍처 & 기술 스택
// 바이브코딩과 궁합 좋은 구조 선택
필수 가능한 작은 단위로 나눠서 구현 → 검증을 빠르게 반복한다
바이브코딩의 핵심 비법. 컨텍스트 윈도우 한계를 극복하는 방법이기도 함. 마이크로서비스 아키텍처와 상성이 매우 좋음.
필수 SOLID 원칙을 적용한 구조로 잡는다
수정에 닫혀 있고 확장에 열린 구조. 결합도 낮고 응집도 높은 코드. 작은 모듈을 조합해 복잡한 동작을 구성.
필수 Clean Architecture로 핵심 비즈니스 로직을 격리한다
폴더 구조와 클래스 설계에 Clean Architecture 원칙 적용. DDD보다 현 시점에서 실용성이 높음.
권장 백엔드 언어는 Go(Golang)를 우선 고려한다
컨텍스트 전달이 명확하고 언어 자체가 심플. 강타입, 테스트 캐싱이 빠름. 생태계 변화가 적어 LLM이 안정적으로 코드 생성. (JS/TS는 문법이 자주 바뀌어 LLM이 혼란)
권장 README와 구현 문서를 항상 최신 상태로 유지한다
AI가 README를 수시로 참고해 개발 정보를 얻음. 처음부터 만들고 지속적으로 AI가 자동 업데이트하도록 규칙에 포함.
권장 버전 관리를 철저히 하고 커밋 메시지를 AI가 성실히 작성하도록 한다
AI가
git add → 커밋 메시지 작성 → 푸시까지 처리. 커밋 단위를 적절히 분리하는 커맨드를 미리 설정해두면 좋음.6
보안 & 컴플라이언스
// 프로덕션에서 반드시 챙겨야 하는 항목
필수 소스코드를 외부로 노출시키지 않는 환경에서 개발한다
국내 컴플라이언스 충족 방법: Claude 직접 사용 or Amazon Bedrock을 통한 Claude 사용. 프라이빗 테넌시에서 코드가 외부에 나가지 않도록 설정.
필수 AI가 만든 코드의 하드코딩 및 예외처리 오용을 반드시 검토한다
AI는 실패를 막기 위해 하드코딩이나 예외처리로 문제를 덮는 경향이 있음. 이 “난폭함”을 테스트와 코드 리뷰로 걸러내야 함.
참고 소버린 AI 이슈를 인지하고 대응 전략을 수립한다
미국 서버에 있는 AI는 미 법원 명령으로 로그 수집 가능. 미국 외 모든 국가에서 일정 수준의 자체 AI 확보가 필요한 시대. Upstage Solar 등 국내 특화 모델도 검토.
7
실무 프롬프팅 팁
// AI와 소통하는 방법이 생산성을 결정한다
P = (X × Y) + Z
P = 총 생산성
X = 개발자 생산성
Y = 툴&프로세스
Z = AI 순수 생산성
개발자가 자기 몫(X)을 하지 않으면 Z만으로 폭발적 생산성을 기대하기 어렵다. 사람과 툴이 함께 성장해야 한다.
필수 요청 시 의도(Why)를 함께 전달한다
“커넥션 풀 늘려줘” ❌ → “커넥션 풀이 부족한데 비용 최소화하며 구조를 개선할 방법은?” ✅. 목적을 알면 AI가 더 좋은 해결책을 제안.
필수 작업 전 AI에게 먼저 물어본다 — “뭘 알려줘야 해?”
“이 작업을 하려면 내가 뭘 알려줘야 해?” 라고 먼저 질문. AI가 필요한 컨텍스트를 요청하게 해서 작업 품질 향상.
권장 어렵고 복잡한 작업엔
think hard 키워드를 사용한다AI가 훨씬 더 열심히 사고하도록 유도하는 마법의 키워드. 디버깅이나 복잡한 설계 작업에 특히 효과적. Opus 모델과 병행 사용도 좋음.
권장 AI의 장황한 코드 생성 습성을 규칙으로 억제한다
AI는 복잡하게 짜려는 습성이 있음. 단순하고 명확한 코드를 선호하도록 규칙에 명시. 불필요한 추상화 금지 규칙 포함.
권장 최신 라이브러리 버전 사용을 규칙에 명시한다
AI는 학습 데이터 기준 1~2년 전 버전의 라이브러리를 선호하는 경향이 있음. 명시적으로 최신 버전 사용을 요구해야 함.
