어떤 개발자는 단 4주 만에 새로운 프로그래밍 언어를 만들었다. 그 이름은 Cutlet. 놀랍게도 그는 이 프로젝트를 진행하며 코드 한 줄도 직접 읽지 않았다. 모든 것을 AI, 즉 Claude Code에 전적으로 맡겼다. 이 실험은 AI가 단순히 코드를 제안하는 수준을 넘어, 이제는 스스로 복잡한 소프트웨어를 설계하고 구현하는 경지에 이르렀음을 명확하게 보여준다. 이러한 AI의 역량은 소프트웨어 개발의 풍경을 급진적으로 바꾸고 있다.

AI가 만드는 코드, 속도와 생산성의 혁명

Ankur Sethi의 `Cutlet` 개발 사례는 AI가 가져온 생산성 혁명의 단면을 보여준다. 그는 LLM(거대 언어 모델)을 활용하여 macOS와 Linux에서 빌드 및 실행되며 실제 프로그램을 돌리는 언어를 단기간에 완성했다. 코드를 직접 검토하지 않고도 작동하는 결과물을 얻었다는 사실은 AI 에이전트의 자율성과 역량이 얼마나 발전했는지 드러낸다.

이는 비단 특정 개발자의 개인적 실험에만 그치지 않는다. claudecodecamp.com의 블로거는 "잠자는 동안 코드를 작성하는 에이전트"를 개발했다. 이 에이전트들은 몇 시간 동안 작동하며, 그가 미처 읽어보지도 못한 수많은 코드 변경사항을 새로운 브랜치에 올린다. 이는 인간의 개입 없이도 AI가 독립적으로 계획을 수립하고, 코드를 작성하며, 심지어는 테스트까지 실행하는 에이전트의 가능성을 증명한다.

이러한 현상은 Bassam Eledath가 설명하는 '에이전트 공학의 8단계'에서 상위 단계에 해당한다. 최신 AI 도구들은 개발자들이 보일러플레이트 코드 작성이나 반복적인 수정 작업에서 해방되도록 돕는다. AI는 복잡한 시스템 아키텍처를 이해하고, 추상적인 요구사항을 구체적인 구현으로 바꾸어 놓는다. LLM의 급격한 발전이 가져온 폭발적인 생산성이다.

이 흐름은 소프트웨어 개발의 패러다임을 근본적으로 바꾼다. 소수의 인원으로도 과거에는 상상하기 어려웠던 규모의 프로젝트를 단기간에 완성하는 일이 일상화된다. 인간 개발자는 이제 코드 작성자가 아닌, AI 에이전트를 조율하고, 아키텍처를 설계하며, 궁극적으로 AI가 생성한 결과물의 '품질 가드레일'을 구축하는 역할에 집중한다. Anthropic 팀이 Cowork 같은 제품을 10일 만에 출시하는 사례는, AI 역량을 실질적인 생산성으로 전환하는 팀과 그렇지 못한 팀 간의 격차가 얼마나 큰지 명확히 보여준다. AI를 잘 활용하는 팀은 그렇지 못한 팀보다 압도적인 속도로 결과물을 만들어낸다.

AI 코드의 그림자: 신뢰, 책임, 그리고 인간의 역할

그러나 AI의 엄청난 생산성 뒤에는 해결해야 할 근본적인 문제가 도사린다. AI가 만든 코드의 품질과 신뢰성에 대한 의문이다. 최근 몇 차례 서비스 중단 사태를 겪은 Amazon은 AI가 보조하는 코드 변경사항에 대해 반드시 시니어 엔지니어의 최종 서명을 의무화했다. 이는 단순히 AI가 제시한 코드를 맹목적으로 받아들이지 않겠다는 단호한 입장이다. 심각한 시스템 장애는 AI 코드의 잠재적 위험을 현실로 인식하게 만들었다.

오픈소스 프로젝트 Debian 역시 AI가 생성한 기여를 어떻게 처리할지에 대한 격렬한 논의 끝에 결국 어떤 결정도 내리지 않았다. Lucas Nussbaum은 AI 생성 코드의 명확한 공개와 함께 기여자가 기술적 타당성, 보안, 라이선스 준수 등에 대해 전적으로 책임을 져야 한다는 초안을 제시했다. 이는 오픈소스 커뮤니티의 근본 철학과 AI의 특성이 충돌하는 지점을 보여준다. 코드의 출처와 책임 소재가 불분명해지는 상황은 프로젝트의 지속 가능성에 직접적인 위협이 된다.

이러한 움직임은 AI 생성 코드에 대한 근본적인 '신뢰' 문제에서 비롯한다. AI는 때로 그럴듯하지만, 미묘한 오류를 포함하거나, 보안 취약점을 만들고, 기존 라이선스 규정을 위반하는 코드를 생성한다. 개발자들이 claudecodecamp.com 블로그에서 언급했듯이, AI가 코드를 작성하고 AI가 테스트를 작성하면 "자기 축하 기계"가 된다. AI는 자신이 이해한 바를 바탕으로 테스트를 만들고, 이 테스트는 AI가 코드를 작성하며 가진 '오해'를 그대로 반영한다. 결국, 원작자가 아닌 독립적인 관점의 검토가 불가능해지는 것이다. 인간 개발자는 쏟아지는 AI 코드를 일일이 검토할 물리적 시간도, 능력도 부족하다.

이러한 문제는 기업과 사회 전반에 걸쳐 새로운 거버넌스 및 책임 모델을 요구한다. AI 생성 코드의 법적 책임은 누가 지는가? AI가 만든 버그로 인해 발생한 손해는 누가 배상하는가? 기술적 정확성을 넘어 윤리적, 법적 프레임워크가 필요하다. 또한, 인간 개발자의 역할은 단순히 코드를 검토하는 것을 넘어, AI가 올바른 방향으로 작동하도록 '가드레일'을 설계하고, AI의 한계를 이해하며, 최종적인 책임과 의사결정을 내리는 데 집중한다. "신뢰할 수 있는 AI"를 위한 새로운 테스트 및 검증 방법론의 개발이 필수적이다. 이는 인간의 비판적 사고와 책임감이 그 어느 때보다 중요해지는 시대가 열렸음을 의미한다.

결국 AI 에이전트에게 자율성을 줄수록, 인간이 져야 할 책임의 무게도 함께 커진다.

참고