AI 코드의 80/20 법칙

AI가 10분 만에 내 기능의 80%를 작성했다.

코드는 깔끔했다. 로직은 작동했다. 해피 패스(happy path)는 첫 시도에 바로 작동했다. 생산성이 높다고 느꼈다. 15분이면 다 끝낼 수 있을 줄 알았다.

그건 화요일이었다. 목요일 저녁이 되었는데도 나는 여전히 같은 기능을 작업하고 있었다.

AI가 실패한 것이 아니었다. 잘못된 것을 성공시킨 것이었다. AI는 쉬운 부분은 해냈지만, 어려운 부분은 나에게 남겨두었다.

AI는 해피 패스를 처리한다. 하지만 다음은 처리하지 못한다:

  • 빈 상태(Empty states): 사용자의 데이터가 없을 때는 어떻게 될까?
  • 에러 처리(Error handling): API가 실패하거나 네트워크가 끊기면 어떻게 될까?
  • 비즈니스 로직(Business logic): AI는 당신 회사의 구체적인 규칙을 알지 못한다.
  • 확장성(Scale): 코드는 사용자 한 명에게는 작동하지만, 만 명에게는 실패한다.
  • 유지보수(Maintenance): AI는 다음 달의 변경 사항이 아니라, 오늘을 위해 코드를 작성한다.

처음 80%는 빠르고 마법 같다. 하지만 진짜 작업은 마지막 20%에 있다. 그 마지막 부분이 전체 시간의 80%를 차지한다.

최근에 나는 200줄의 코드를 생성하는 데 30초의 프롬프트를 썼다. 그리고 그것을 수정하는 데 3시간을 썼다. AI가 무시한 null 체크, 에러 경로, 그리고 엣지 케이스(edge cases)를 직접 추가해야 했다.

30초는 뼈대(scaffolding)를 세우는 시간이었고, 3시간이 실제 작업이었다.

AI는 업무량을 줄여주는 것이 아니라, 위치를 옮기는 것이다. 구조를 작성하는 데 쓰던 시간을 코드가 프로덕션 환경에 적합하도록(production-ready) 보장하는 데로 옮기는 것이다.

AI를 사용한다면, 접근 방식을 바꿔라:

  • 시간을 더 넉넉히 잡아라: AI가 작업에 10분이 걸린다고 하면, 40분을 계획하라.
  • 실패를 대비해 프롬프트를 작성하라: 에러와 빈 입력을 어떻게 처리할지 AI에게 명시적으로 물어봐라.
  • 테스트를 먼저 작성하라: 코드를 생성하기 전에 실패하는 테스트를 먼저 작성하라. 이렇게 하면 AI가 당신의 기준을 충족하도록 강제할 수 있다.

80%는 데모 단계까지 가게 해주지만, 20%는 프로덕션 단계까지 가게 해준다.

당신의 비율은 어떠한가? AI가 시작한 일을 끝내는 데 얼마나 걸리는가?

Source: https://dev.to/harsh2644/the-8020-rule-of-ai-code-why-the-last-20-takes-80-of-your-time-3pcg

Optional learning community: https://t.me/GyaanSetuAi