AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

Node.js 메인테이너가 경고하는 AI 시대 개발자의 진짜 위험

“2시간 만에 블룸버그 터미널 클론을 만들었습니다. 코드 한 줄 안 쓰고, 리뷰도 안 했어요.”

이런 자랑을 들었을 때, Node.js 메인테이너 Matteo Collina는 다르게 묻습니다. “그 클론에 버그가 있어서 누군가 잘못된 거래를 한다면 누가 책임지나요? 새벽 3시에 장애가 나면 누가 디버깅하나요?”

사진 출처: O’Reilly Radar

Matteo Collina는 Node.js, Fastify, Pino, Undici의 메인테이너이자 Node.js Technical Steering Committee 의장입니다. 그는 최근 “The Human in the Loop“라는 글에서 AI 시대 개발자의 진짜 위험을 경고했습니다. 개발자가 사라지는 게 아니라, 개발자가 책임을 포기하는 것이 위험하다고요.

출처: The Human in the Loop – Nodeland

도어맨 오류: AI는 겉보기 업무만 본다

광고 전문가 Rory Sutherland는 ‘도어맨 오류(Doorman Fallacy)’라는 개념을 제시했습니다. 시카고의 한 고급 호텔이 회전문을 설치하며 도어맨을 해고했는데, 비용은 절감됐지만 손님 만족도가 떨어진 사례입니다. 도어맨의 ‘겉보기 업무’는 문 여는 것이었지만, 진짜 역할은 손님을 이름으로 맞이하고, 안전감을 주고, 호텔의 품격을 상징하는 것이었습니다.

AI 코딩도 마찬가지입니다. 개발자의 겉보기 업무는 코드 타이핑이지만, 진짜 역할은 판단, 맥락 이해, 책임입니다. AI는 타이핑을 대신할 수 있지만, 나머지는 못합니다. 그런데 많은 사람들이 “타이핑만 자동화하면 됐다”고 착각합니다.

실전에서 본 것: 이해 없는 코드의 재앙

Collina는 10년 넘게 오픈소스 프로젝트를 유지보수하면서 이해하지 못한 코드를 머지한 적이 있다고 고백합니다. “후회스럽지만 모든 메인테이너가 한 번쯤 겪는 일이죠. 그리고 항상 나중에 문제가 됩니다. 버그는 더 고치기 어렵고, 동작을 설명하기도 어렵고, 기술 부채가 쌓입니다.”

이게 사람이 천천히 쓴 코드일 때의 얘기입니다. 그런데 AI는 몇 초 만에 수백 줄을 생성합니다. “AI 속도로 코드를 생성할 수 있다면, 이해 없이 배포할 수 있는 잠재적 피해 규모는 훨씬 큽니다.”

블룸버그 터미널이 월 3만 달러인 건 코드가 복잡해서가 아닙니다. 금융 시장, 규제, 데이터 무결성, 시스템 안정성을 이해하는 사람들이 뒤에 있기 때문입니다. 수년간 쌓인 멘털 모델, 무엇이 잘못될 수 있는지에 대한 직관. 그걸 AI가 2시간 만에 복제할 순 없습니다.

병목의 이동: 코딩에서 리뷰로

Collina의 워크플로우는 완전히 바뀌었습니다. Node.js나 Undici의 보안 취약점이 보고되면, 그는 이슈를 AI에게 던집니다. AI가 구현을 하고, 그는 리뷰를 합니다. 최근 몇 달간 이 방식으로 수십 개의 패치를 배포했습니다.

“내 생산성의 병목은 더 이상 코딩 속도가 아니라 리뷰 능력입니다. 그리고 그게 맞다고 생각합니다.”

그가 리뷰할 때 보는 건 이겁니다. 이 패치가 정말 공격 벡터를 막는가? AI가 놓친 엣지 케이스는 없나? 이게 올바른 수정인가, 아니면 그냥 작동하는 수정인가? 아키텍처에 맞는가? 하위 호환성은 유지되는가? 내가 책임질 수 있는 코드인가?

사실 이건 새로운 일이 아닙니다. “오픈소스 메인테이너로서 저는 늘 다른 사람이 쓴 코드를 리뷰해왔습니다. 한 번도 만난 적 없는 기여자들의 PR을 검토하고, 평가하고, 머지할지 결정하죠. AI는 그냥 또 다른 기여자일 뿐입니다.”

차이는 이제 이게 주요 스킬이 되었다는 겁니다. 더 빠른 패턴 인식, 일반적인 실패 모드에 대한 멘털 모델, 더 효율적인 동작 검증 방법. “2026년에 중요한 건 프롬프트 기술이나 ‘에이전트 인프라’가 아닙니다. 판단력입니다.”

진짜 위험: “AI가 썼으니까 괜찮겠지”

Collina가 걱정하는 건 소프트웨어 개발이 죽는다는 게 아닙니다. “‘AI가 썼으니까 리뷰 안 해도 돼’가 용인되는 문화”가 생기는 겁니다.

리뷰를 멈추는 순간, 코드에 대한 책임도 멈춥니다. 새벽 3시에 프로덕션이 터졌을 때, “AI가 썼으니까”는 변명이 될 수 없습니다. 코드를 쓰는 건 AI가 하지만, 그 코드에 이름을 거는 건 여전히 사람입니다.

산업혁명이 대량 생산을 가능하게 했지만 동시에 산업 재해와 오염이라는 새로운 문제를 만든 것처럼, AI 코딩 시대도 새로운 위험을 낳습니다. 안전 관행, 규제, 문화적 규범을 개발하는 데 수십 년이 걸렸습니다. 우리는 AI로 생성된 소프트웨어에 대해 그 과정의 시작점에 있습니다.

사라지는 역할, 중요해지는 역할

Collina는 동의합니다. 어떤 역할은 사라집니다. “Jira에서 태스크를 가져다가, 하고, 퇴근하는 프로그래머. 그 일은 이제 AI가 더 빠르고 저렴하게 할 수 있습니다.”

하지만 소프트웨어 엔지니어와 아키텍트의 역할은 오히려 더 중요해졌습니다. 시스템을 설계하고, 무엇을 만들지 결정하고, 구현이 의도와 맞는지 판단하는 일. AI가 자신 있게 내놓은 코드가 겉보기엔 맞는데 실제론 틀린 경우를 잡아내는 일. 프롬프트로 전달할 수 없는 맥락을 이해하는 일.

“이건 새로운 스킬이 아닙니다. 시니어 엔지니어가 늘 해온 일이죠. 차이는 이제 이게 주요 스킬이 되었다는 겁니다.”

루프 안의 인간을 보호하라

Collina는 매일 AI를 씁니다. 그 어느 때보다 생산적입니다. 하지만 그는 병목이 리뷰라는 걸 받아들이고, 그 능력을 키우는 데 집중합니다. AI 회의론도, AI 맹신도 아닌 실용적 균형입니다.

그의 메시지는 명확합니다. “루프 안의 인간은 수정해야 할 버그가 아닙니다. 보호해야 할 기능입니다.”

도어맨이 단순히 문을 여는 사람이 아니었듯, 개발자도 단순히 코드를 치는 사람이 아닙니다. 겉보기 업무는 자동화할 수 있지만, 판단과 책임과 맥락은 자동화할 수 없습니다. AI 시대에 위험한 건 기술이 발전하는 게 아니라, 우리가 그 차이를 잊어버리는 겁니다.

참고자료:


AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)

Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다