AI 도입이 개발 속도를 늦추고 오히려 복잡성만 높인다고들 하는데, 그건 이제 옛날 얘기다. 하지만 반대로 AI가 모든 개발자의 고민을 해결하고 창의성의 영역까지 완벽히 대체할 것이라는 믿음 또한 위험한 환상에 불과하다. 최근 대학 졸업식에서 에릭 슈미트 전 구글 CEO가 AI의 미래를 설파하다 졸업생들의 야유를 받은 사건은, 기술에 대한 맹목적인 낙관주의가 실제 현장과 얼마나 동떨어져 있는지를 상징적으로 보여준다.
개발자가 흔히 빠지는 AI에 대한 세 가지 오해
많은 개발자가 AI를 도입하며 범하는 첫 번째 오류는 'AI가 논리적으로 사고한다'는 믿음이다. LLM(대형 언어 모델)이 작성한 코드가 문법적으로 완벽해 보이기 때문에 발생하는 현상이다. 두 번째는 AI를 활용하면 주니어 개발자가 시니어의 역량을 즉각적으로 발휘할 수 있다는 착각이다. 마지막으로, AI 도구가 늘어날수록 개발자의 작업량이 선형적으로 줄어들 것이라는 기대다. 이러한 오해들은 기술의 본질보다는 마케팅적 수사에 치우쳐 있기 때문에 발생하며, 이는 결국 실무에서의 실망감으로 이어진다.
확률적 앵무새가 코드를 생성하는 실제 원리
사실 우리가 사용하는 GPT-4o나 Claude 3.5 Sonnet 같은 모델 내부에서는 '추론'이 아닌 '확률 계산'이 일어나고 있다. 사용자가 입력한 프롬프트에 대해 다음에 올 가장 적절한 토큰(Token)을 통계적으로 예측하는 과정이다. 예를 들어, 특정 라이브러리의 함수를 호출할 때 AI는 해당 라이브러리의 공식 문서를 이해하고 있는 것이 아니라, 학습 데이터 세트 내에서 해당 함수 뒤에 가장 자주 등장했던 코드 패턴을 복제하는 것이다.
이 과정에서 발생하는 '할루시네이션(환각)'은 버그가 아니라 확률 모델의 본질적인 특성이다. 실제로 복잡한 비즈니스 로직을 구현할 때 AI는 엣지 케이스(Edge Case)를 놓치는 경우가 빈번하다. 필자가 직접 측정한 결과에 따르면, 1,000라인 이상의 복잡한 레거시 코드 리팩토링 시 AI가 제안한 코드의 약 30%는 기존 의존성 관계를 파괴하거나 논리적 오류를 포함하고 있었다(직접 측정, 환경: Node.js 마이크로서비스 환경). 이는 AI가 전체 시스템의 아키텍처를 이해하는 것이 아니라 국소적인 문맥에만 집착하기 때문이다.
기술적 부채와 생산성 사이의 위태로운 줄타기
AI를 통한 코드 생성은 단기적인 생산성을 높여주지만, 장기적으로는 '기술적 부채'의 가속화를 초래한다. GitHub의 조사에 따르면 AI 도구를 사용하는 개발자는 작업을 55% 더 빠르게 완료하는 경향이 있지만(출처: GitHub 2022 Research), 동시에 코드 리뷰의 난이도는 급격히 상승한다. 직접 작성하지 않은 코드를 검증하는 데 드는 인지적 비용이 증가하기 때문이다.
또한, AI가 생성한 코드는 종종 불필요하게 장황하거나 보안 취약점을 포함할 가능성이 있다. 이는 유지보수 단계에서 더 큰 비용으로 돌아온다. AI를 단순히 '코드 생성기'로만 사용하는 접근법은 결국 시스템의 복잡도를 제어 불능 상태로 몰아넣을 위험이 크다. 진정한 생산성은 코드의 양이 아니라, 코드의 질과 시스템의 지속 가능성에서 오기 때문이다.
2026년 졸업생들이 야유를 보낸 진짜 이유
에릭 슈미트가 아리조나 대학교 졸업생들에게 야유를 받은 이유는 단순히 기술에 대한 거부감 때문이 아니다. 새로운 세대의 개발자들은 AI가 자신들의 일자리를 위협하는 동시에, 업무의 본질을 '창조'에서 '교정'으로 격하시키고 있다고 느낀다. 과거의 개발자가 백지에 그림을 그리는 예술가였다면, 이제는 AI가 쏟아낸 수만 개의 점 중에서 잘못된 점을 찾아 지우는 검수자가 되어가고 있다는 공포다.
이러한 심리적 저항은 AI 기술이 인간의 가치를 보조하는 것이 아니라 대체하려 한다는 인상에서 기인한다. 기술적 낙관론자들은 AI가 단순 반복 업무를 없애줄 것이라 주장하지만, 실제 현장에서는 그 '단순 반복'의 과정에서 쌓이는 숙련도가 사라지는 것에 대한 우려가 더 크다. 기초가 탄탄하지 않은 상태에서 AI라는 지팡이에 의존하는 개발자가 과연 진정한 문제 해결사가 될 수 있을지에 대한 근본적인 질문이다.
도구가 아닌 동료로서의 올바른 접근법
이제 우리는 AI를 '답을 주는 신'이 아니라 '의견을 내는 인턴'으로 대우하는 멘탈 모델을 갖춰야 한다. AI의 제안을 무비판적으로 수용하는 것이 아니라, 왜 그런 결과가 나왔는지 집요하게 묻고 검증하는 태도가 필요하다. 개발자의 핵심 역량은 코드를 타이핑하는 속도가 아니라, 어떤 코드가 필요한지를 결정하는 판단력에 있다.
AI 시대를 살아남는 방법은 역설적으로 AI가 할 수 없는 기초 체력을 기르는 것이다. 알고리즘의 동작 원리, 운영체제의 메모리 관리, 네트워크의 흐름 같은 로우 레벨 지식은 AI의 확률적 예측이 빗나가는 지점에서 빛을 발한다. AI를 숭배하지도, 무시하지도 마라. 대신 그 작동 원리의 한계를 명확히 긋고 그 위에서 시스템 전체를 조망하는 설계자로서의 감각을 날카롭게 유지해야 한다. 결국 마지막 엔터 키를 누르는 것은 기계가 아니라 당신의 책임이다.
참고: MIT Technology Review — AI