- 최근 연구에 따르면 오픈소스 개발자가 자신이 잘 아는 코드베이스에서 AI 도구를 사용할 때 오히려 작업 시간이 19% 늘어남
- 개발자들은 AI가 자신을 더 빠르게 만들었다고 믿지만, 실제로는 더 느려진다는 인지와 현실 간의 괴리가 존재함
- 핵심 원인은 개발자가 가진 정교한 멘탈 모델(이해 구조) 과 AI 간의 지식 전달 한계임
-
Peter Naur의 이론에 따르면, 프로그래밍에서 가장 중요한 것은 개발자 머릿속의 "정신적 모델"임
- 덴마크의 컴퓨터 과학 선구자이자 2005년 튜링상 수상자. 프로그래밍 언어 구문을 설명하는 데 사용되는 Backus-Naur 형식 (BNF) 표기법 에 기여함
-
장기적 관점에서 프로젝트를 깊이 이해하려면 직접 코드를 작성하며 멘탈 모델을 구축하는 것이 중요함
AI가 오픈소스 개발자를 느리게 만드는 현상
-
Metr의 연구에 따르면 AI 도구 사용 시 오히려 문제 해결 속도가 19% 느려지는 결과가 나옴
- 개발자들은 작업 전 AI가 24% 빠르게 도와줄 것이라 기대했고, 작업 후에도 실제보다 20% 빠르다고 믿음
- 이 연구는 자신이 깊이 이해한 오픈소스 프로젝트를 직접 관리하는 숙련 개발자를 대상으로 진행됨
- 결과가 모든 개발자에게 일반화되지는 않지만, 이 집단에서는 AI 도구가 생산성에 역효과를 낸다는 사실을 보여줌
- 기업 환경이나, 새로운 코드베이스에 적응해야 하는 일반적인 개발자에게는 AI 도구가 생산성 향상에 더 긍정적인 역할을 할 수 있음
왜 AI가 숙련 오픈소스 개발자를 느리게 만드는가
- Peter Naur의 “Programming as Theory Building” 논문에 따르면 프로그래밍의 진정한 결과물은 코드가 아니라 ‘프로젝트에 대한 개발자의 멘탈 모델’ 임
- 이 멘탈 모델은 시스템의 이해, 문제 진단, 효과적 개선의 핵심임
-
LLM 기반 AI는 개발자의 멘탈 모델에 직접 접근할 수 없으며, 일부 정보를 제공해도 지식 전달 과정에서 본질적 손실이 발생함
- 예시로, 누군가에게 아기 재우기를 맡길 때 명확하게 설명했어도 실제로는 의도와 다르게 행동하는 일이 잦음
-
멘탈 모델의 전달은 극도로 복잡하며, AI가 텍스트만으로 이를 흡수하는 것은 거의 불가능함
- 따라서 자신이 깊이 이해한 프로젝트에서 AI에게 작업을 위임하면 오히려 생산성이 저하됨
- 개발자의 풍부한 맥락 정보와 직관적 이해는 AI가 쉽게 대체할 수 없음
현업에서 AI 도구를 금지해야 할까?
- 꼭 그렇지는 않음. “스스로 잘 알고, 잘 이해한 프로젝트에서 일하는 사람”에게만 해당함
- 많은 기업 개발자는 이미 떠난 선임자의 코드를 유지보수하거나, 시스템 전체 구조를 깊이 이해하지 않은 상태에서 작업하는 경우가 많음
- 이런 환경에서는 AI가 코드베이스를 빠르게 파악하고 변경사항을 자동 생성함으로써 단기적 생산성 향상에 기여할 수 있음
-
단기적인 비즈니스 가치 생산과 즉각적 효율만 본다면 AI 도구는 생산성에 긍정적인 역할을 할 수 있음
멘탈 모델 구축과 AI
- 만약 프로젝트에 대한 멘탈 모델이 없다면, LLM이 생산성 향상을 도와줄 수 있음
- 그러나 소프트웨어 개발의 본질이 ‘멘탈 모델 구축’에 있다면, AI에 지나치게 의존할 경우 그 능력이 저하될 수 있음
- 장기적으로 프로젝트를 깊이 이해하고 능동적으로 변화시키고 싶다면 직접 코드 작성 경험이 필요함
- 반대로, ‘그냥 돌아가게만 하는’ 식의 작업이라면 AI 활용이 효율적일 수 있음
추가 논의 및 결론
- 현재 수준의 AI 도구로는 충분한 멘탈 모델을 가진 개발자의 생산성을 향상시키기 어려움
- AI가 멘탈 모델을 제대로 지원하거나, 숙련 개발자의 생산성을 혁신적으로 높일 수 있는 방향은 아직 연구 및 발전이 필요함
- 향후 모델이 발전하면 인간 개발자가 멘탈 모델을 굳이 갖지 않아도 될 날이 올 수도 있으나, 현재 수준에서는 직접적인 이해와 학습이 필수
- 최종적으로, AI는 ‘내가 무엇을 하고 있는지 깊이 이해하는 환경’에서는 방해가 되고, ‘빠른 결과물이 중요한 환경’에서는 생산성 도구가 될 수 있음