AI와 함께 복리로 성장하는 법: 완료 전 검증과 우아함의 요구 3_완벽을 만드는 마지막 1%

AI가 내놓은 결과물이 “그럴듯해 보인다”는 것과 “실제로 완벽하게 작동한다”는 것 사이에는 거대한 간극이 존재한다.
보리스 체르니 워크플로우의 세 번째 단계는 AI의 근본적인 한계인 ‘할루시네이션(환각)’과 ‘타협하는 속성’을 제어하여, 결과물의 품질을 시니어 전문가 수준으로 격상시키는 엄격한 검증 시스템에 대해 다룬다.

1. “다 됐습니다”라는 말을 의심해야 하는 이유

많은 사용자가 AI에게 업무를 맡긴 후 가장 당혹스러워하는 지점은 AI가 확신에 찬 어조로 “완료했습니다”라고 말했지만, 정작 실행해보면 오류가 발생하거나 논리적 허점이 발견될 때이다.
이러한 현상이 발생하는 이유는 AI의 작동 방식에 있다.

1. 완료 편향(Completion Bias): AI는 사용자의 요청에 대해 빠르게 ‘완성된 형태’를 보여주고 싶어 하는 성향이 강하며, 이 과정에서 내부적인 검증 절차를 생략하기도 한다.
2. 작동과 품질의 혼동: AI는 코드가 문법적으로 맞거나 문장이 매끄러우면 그것이 실제 비즈니스 로직이나 맥락에 부합하지 않더라도 성공적이라고 판단할 위험이 있다.
3.최소 저항 경로 선택: AI는 문제를 해결할 때 가장 먼저 떠오른, 혹은 가장 흔한 방식을 선택하려는 경향이 있어 구조적으로 엉망인 결과를 내놓기도 한다.

보리스 체르니는 이러한 인간과 AI 사이의 신뢰 격차를 메우기 위해 ‘완료 전 검증’과 ‘우아함 요구’라는 두 가지 강력한 처방전을 제시한다.

2. Verification Before Done: 증명되지 않은 완성은 없다

이 원칙의 핵심은 작업이 실제로 작동한다는 것을 객관적으로 증명하기 전까진 절대 “완료”라고 말하지 않는 태도이다. 단순히 “코드를 짰다”가 아니라 “테스트를 통과했다”는 데이터가 뒷받침되어야 한다.

ㄱ. 테스트 자동화와 결과 보고

AI는 결과물을 제출하기 전, 스스로 다음과 같은 검증 루프를 돌려야 한다.

1. 실제 실행: 코드를 작성했다면 직접 런타임에서 실행해보고 에러 로그가 없는지 확인한다
2. 엣지 케이스 점검: 데이터가 비어 있거나(null), 예상치 못한 형식이 들어왔을 때도 시스템이 멈추지 않는지 스스로 테스트 시나리오를 만들어 확인한다
3. 변경 사항 비교(Diff Check): 기존 코드나 문서와 비교하여 의도하지 않은 부분이 수정되지는 않았는지 최종 확인 절차를 거친다.

ㄴ. 시니어의 기준 적용 (Staff Engineer 기준)

보리스 체르니는 AI에게 스스로 다음과 같이 묻게 한다. “이 결과물을 시니어 개발자(Staff Engineer)에게 제출했을 때 승인받을 수 있는 수준인가?” 단순히 돌아가는 수준을 넘어 유지보수가 가능하고 확장성 있는 구조인지를 스스로 검토하게 함으로써 작업의 표준을 높인다.

3. Demand Elegance: 효율을 넘어선 ‘우아함’의 추구

‘우아함(Elegance)’은 비단 미학적인 관점만을 의미하지 않는다. 가장 단순하면서도 명확하며, 나중에 누가 보더라도 이해하기 쉬운 구조를 만드는 것을 의미한다.

ㄱ. 두 번째 생각의 힘

AI는 문제 해결에 집중하다 보면 복잡한 조건문을 덕지덕지 붙인 ‘스파게티 코드’를 만들기 쉽고, 이때 사용자는 AI에게 “더 나은, 더 우아한 방법이 없을까?”라고 한 번 더 질문할 것을 요구한다.

1. 가독성 개선: 복잡한 로직을 논리적으로 명쾌하게 정리한다.
2. 불필요한 중복 제거: 같은 목적을 수행하는 더 간결한 함수나 표현이 있는지 탐색한다.

ㄴ. 선택적 적용 (Simplicity First)

다만, 모든 작은 작업에 우아함을 따지는 것은 과도한 엔지니어링이 될 수 있다.
오타 수정이나 단순한 변수 변경 같은 명확한 작업은 즉시 처리하되, 복잡한 비즈니스 로직이나 아키텍처 설계에 이 규칙을 집중적으로 적용한다.

4. 비개발자를 위한 적용 사례: 보고서 작성의 검증

이 원리를 일반 사무 업무에 적용한다면 다음과 같은 ‘검증 레이어’를 둘 수 있다.

1. 데이터 검증(Verification): AI가 작성한 보고서 내 통계 수치가 원문 자료와 일치하는지, 오타나 비문은 없는지 AI 스스로 ‘교정 모드’를 돌려 확인 보고서를 제출하게 한다.
2. 구조의 우아함(Elegance): 초안이 완성된 후, “이 내용을 더 직관적인 도표나 한 눈에 들어오는 요약문으로 바꿀 방법은 없는지” 자문하게 하여 가독성을 극대화한다.

5. 신뢰할 수 있는 결과물을 만드는 법

보리스 체르니 워크플로우의 세 번째 단계는 AI를 ‘시키는 대로만 하는 조수’에서 ‘자신의 결과물에 책임을 지는 전문가’로 바꾼다. 완료 전 검증을 통해 실수를 걸러내고, 우아함 요구를 통해 결과물의 수준을 높이는 과정은 협업의 신뢰도를 결정짓는 핵심 요소이다.

이제 우리는 방향을 잡고(Plan), 역할을 나누어(Subagent), 완벽한 결과물(Verification & Elegance)을 만드는 법을 알게 되었다. 마지막 시리즈 4편에서는 사용자의 개입 없이도 스스로 문제를 해결하고 업무의 연속성을 유지하는 ‘자율적 버그 수정’과 ‘태스크 관리’ 시스템에 대해 살펴볼 것이다.

댓글 남기기