
빠르게 생성하고, 다시 검증한다.
프로세스가 만들어내는 리뷰 품질
지난 포스팅인 [개발자의 종말, 구현자의 시작]에서 언급했던 AI 워크플로우를 기억하시나요? 단순히 코드를 짜는 단계를 넘어, 이제는 전체적인 시스템을 설계하고 AI를 적재적소에 배치해 효율을 극대화하는 구현자(Implementer)의 시대가 왔음을 말씀드렸습니다.
오늘은 그 철학을 실천에 옮긴 사례를 공유하려 합니다. 바로 저에게 할당된 십수 명의 언리얼 엔진 수강생을 위한 'AI 코드 리뷰 시스템' 구축기입니다. 여러 프로젝트를 동시에 코드 리뷰하는 물리적 한계를 어떻게 Cursor와 프롬프트 엔지니어링으로 개선했는지, 제가 정의한 5단계 워크플로우에 맞춰 설명해 보겠습니다.
1. 요구사항 분석 (Requirement Analysis)
"물리적 한계와 품질 사이의 갈등"
십수 명의 학생이 제출하는 코드를 매주 혼자 리뷰하면서 일관된 품질을 유지하는 것은 현실적으로 고부하입니다. 하지만 교육자로서 '대충' 할 수는 없죠. 제가 정의한 핵심 요구사항은 다음과 같았습니다.
- 일관성: 리뷰어의 컨디션에 상관없이 동일한 기준(심각도, 컨벤션 등) 유지.
- 근거 중심: "이게 더 좋아요" 식의 추상적 조언이 아닌, 정확한 파일 위치와 라인을 명시할 것.
- 성장 가이드: 단순 오타 수정을 넘어 다음 제출물에서 개선해야 할 '학습 방향성' 제시.
2. 설계 (Design)
"멀티 스테이지 검증 시스템"
AI의 가장 큰 적은 '할루시네이션(환각)'입니다. 할루시네이션 가능성을 낮추기 위해 단일 프롬프트가 아닌 [리뷰 생성 => 리뷰 검증]이라는 2단계 구조를 설계했습니다. 또한, 이전 버전의 코드와 현재 버전을 비교 분석할 수 있는 '비교 모드'를 도입해 실력 향상 폭을 측정하도록 기획했습니다.
3. 프롬프트 작성 (Prompt Engineering)
"룰은 강제하되, 관찰에 기반할 것"
설계한 내용을 바탕으로 Cursor에서 사용할 두 가지 핵심 프롬프트를 작성했습니다.
코드 리뷰 프롬프트
이 프롬프트는 리뷰의 '뇌' 역할을 합니다. 추측성 표현을 철저히 금지하고, 모든 지적에 대해 (파일경로:라인범위) 근거를 요구합니다. 특히 Blocking(필수 수정)과 Non-blocking(권장)을 명확히 구분해 학생이 우선순위를 파악할 수 있게 했습니다.
코드 리뷰 검증 프롬프트
AI가 작성한 리뷰를 다시 AI가 검사하는 '감시자' 프롬프트입니다. 1차 리뷰는 생산성을 위해 생성하고, 2차 검증은 형식 / 근거 / 금지 표현 위반을 줄여 결과물 편차를 낮추기 위해 분리했습니다. 룰 누락은 없는지, 섹션이 붕괴되거나 표현이 일탈되는 등, 리뷰의 룰 위반을 줄여 일관성을 확보합니다. code-review-tutoring.md가 변경 및 확장될 때, 리뷰 결과물이 룰을 계속 준수하는지 점검하는 장치로 사용합니다.
4. 튜닝 및 검증 (룰 준수)
"AI가 놓친 것은 없는가?"
실제 수강생의 코드를 넣어보며 프롬프트를 튜닝했습니다. 처음에는 AI가 지나치게 관대한 피드백을 남기는 경향이 있어, 문장 톤은 단정하게 유지하되, 지적은 구체적 근거와 영향 중심으로 나오도록 규칙을 강화했습니다. 그래서 개인 평가 / 감정 표현 금지 룰을 강화해 철저히 "사실 => 근거 => 영향"의 구조로 출력되도록 교정했습니다.
verify 프롬프트는 단순한 검사를 넘어, 시스템의 확장성을 담보하는 장치가 되었습니다. '학습 방향성'이나 '코드 퀄리티 분석' 같은 새로운 평가 기준을 추가할 때마다, 이 감시 장치가 결과물의 형식이 무너지지 않도록 파수꾼 역할을 해주었기 때문입니다.
5. 사용 (Usage)
# path1에 있는 코드들에 대해 코드 리뷰를 진행
/code-review-tutoring @path1
# path1에 대한 코드 리뷰를 진행하고 path2(이전 버전)와 비교하여 코드 퀄리티 변화도 출력
/code-review-tutoring @path1 @path2
# 직전 리뷰 텍스트에 대해 룰 위반 여부만 분석
/verify-code-review-tutoring
"튜터의 역할: 최종 큐레이터"
이제 저는 여러 프로젝트의 코드를 처음부터 끝까지 읽는 대신, AI가 정리해 준 [강점/약점/학습 방향성] 보고서를 먼저 검토합니다.
- Cursor가 프롬프트에 따라 1차 리뷰 생성.
- 검증 프롬프트로 룰 위반 여부를 체크.
- 최종적으로 제가 내용을 분석하고 정제하여 학생에게 전달.
Agent 사용 이전에는 한명의 코드 리뷰를 진행하는데에 30분에서 1시간 이상이 소모되었습니다. 시간이 부족하면 근거(파일 / 라인)까지 정교하게 남기기 어려웠습니다. 하지만 이러한 리뷰 시스템을 도입한 후에는 Cursor가 언급한 코드와 그 근처 코드들만 읽으면 되었고, 해당 코드가 왜 좋은 코드인지에 대한 리뷰 근거(파일:라인 / 함수 / 클래스)와 영향 설명을 함께 제공했습니다. 핵심 구간을 우선 확인할 수 있게 된 것입니다. 그래서 저는 더 짧은 시간에 근거 기반으로 코드 리뷰를 진행할 수 있었습니다. 그렇게 학생들은 훨씬 더 구체적이고 일관된 피드백을 받을 수 있게 되었습니다.
마치며: 구현자로서의 첫걸음
이 시스템은 단순히 업무를 자동화한 것이 아닙니다. 튜터라는 역할을 수행함에 있어 나의 전문성이라는 엔진을 AI라는 부스터에 달아 효율을 극대화한 결과물입니다.
수강생 십수 명에 대한 코드 리뷰가 소모만 되는 작업이 되지 않도록 반복되는 분석, 정리 파트를 자동화하고 저는 판단이 필요한 지점(설계 의도, 트레이드오프, 학습 방향성)에 시간을 더 배분할 수 있게 되었습니다. 오히려 더 깊이 있는 가이드에 집중할 여력이 생겼죠. 여러분도 본인의 업무에서 반복되는 '분석과 정리'의 패턴을 찾아보세요. 그것이 바로 여러분이 '구현자'로서 첫발을 내디딜 지점입니다.
긴 글을 마무리하며, 이 워크플로우가 어떤 분들에게 특히 필요했는지 궁금합니다.
아래 중 어디에 해당하시나요? 번호로 댓글만 남겨주시면 큰 힘이 됩니다.
- 현업 개발자: PR/코드리뷰가 병목이고, 근거 기반 리뷰 표준화가 필요하다.
- 팀 리더 / 테크리드: 리뷰 품질을 개인 역량이 아니라 팀 프로세스로 만들고 싶다.
- 1인 / 프리랜서 / 창업 준비: 반복되는 분석·정리를 줄이고 납기/품질을 안정화하고 싶다.
- 관심 독자: AI 워크플로우/프롬프트 설계 사례를 계속 보고 싶다.
현재 진행 중인 업무에 AI를 접목시킬 때, 어디를 자동화하고, 어디서 사람이 판단해야 하는지 설계가 고민이라면
방명록(또는 이메일)로 편하게 남겨주세요.
이메일 주소 : chessire@naver.com
이전글
개발자의 종말? 구현의 민주화
개발자의 시대 2015년부터 시작된 개발자 붐이 갑작스레 막을 내리고 있습니다. 그 당시 게임업계 대기업 3사(3N)의 연봉인상 릴레이부터 네카라쿠배까지 경험했던 저로서는 놀라울 따름입니다. 2
chessire.tistory.com
'AI > Workflow' 카테고리의 다른 글
| AI로 블로그 3개월, PV 86% 오른 이야기 (0) | 2026.03.01 |
|---|---|
| 개발자의 종말? 구현의 민주화 (0) | 2026.02.02 |