본문으로 건너뛰기

Andrej Karpathy: 프로그래머에는 두 종류가 있다 -- AI와 함께 코딩하는 사람과 도태되는 사람

Andrej Karpathy: 프로그래머에는 두 종류가 있다 -- 10배의 개발자

Andrej Karpathy는 자신이 하는 말의 무게를 압니다. 테슬라 전 AI 총괄 디렉터, OpenAI 초기 연구원, 스탠퍼드 대학의 전설적인 컴퓨터 비전 강좌 창시자 -- 그는 십수 년째 직접 코드를 작성하고 실 서비스 AI 시스템을 출시해왔습니다. 그가 자신의 개발 워크플로가 지난 20년간 가장 큰 변화를 겪었다고 말한다면, 귀를 기울일 만합니다.

핵심 주장은 이렇습니다. Deep Code 같은 도구는 화려한 자동완성이 아닙니다. 레버리지 승수입니다. 예전과 같은 시간을 들이고도 10배의 결과를 내고, 예전이라면 엄두도 내지 못했던 프로젝트에 도전할 수 있게 됩니다. AI는 여전히 실수를 합니다. 과잉 설계를 하고, 잘못된 가정을 내리고, 정작 이의를 제기해야 할 때 입을 닫기도 합니다. 하지만 순효과는 부정할 수 없습니다. 더 빨리 적응할수록, 더 큰 우위를 차지합니다.

지난 몇 주 동안 저는 Claude Code로 코드를 많이 작성했습니다. 제가 배운 것들을 공유하겠습니다.

코딩 워크플로

최근 LLM 코딩 성능이 한 차원 도약하면서 제 워크플로가 뒤집어졌습니다. 11월만 해도 IDE 자동완성으로 직접 타이핑하는 비율이 약 80%, 에이전트가 20% 정도였습니다. 12월이 되자 정반대가 되었습니다. 에이전트가 작성한 코드가 80%, 제가 다듬는 시간이 20%.

이제는 그냥 말로 코드를 불러내는 수준이 되었습니다. 원하는 것을 평범한 언어로 설명하면 그대로 구현되는 걸 지켜봅니다. 솔직히 프로그래머로서의 자존심이 조금 꿈틀거리긴 합니다. 하지만 코드베이스 전체를 한꺼번에 다루는 능력 -- 리팩토링, 스캐폴딩, 코드들을 서로 연결하는 것 -- 은 그냥 지나칠 수가 없습니다. 특히 리듬을 익히고 나면 말이죠. 설정을 어떻게 조정하는지, 어디서는 완벽하고 어디서는 엉망이 되는지 감을 잡게 되면 더더욱.

이것은 제가 코드를 작성해온 지난 20년의 개발 워크플로 중 가장 큰 변화입니다. 그리고 그 변화는 몇 주 만에 일어났습니다. 꽤 많은 엔지니어(두 자릿수 퍼센트)가 이미 같은 경험을 하고 있을 겁니다. 일반 대중은요? 이런 일이 벌어지고 있다는 걸 아는 사람이 한 자릿수 퍼센트에 그칠 겁니다.

IDE / 에이전트 떼 / 피할 수 없는 실수

두 가지 이야기가 떠돕니다. "IDE는 죽었다"와 "자율 에이전트 떼가 알아서 다 한다"입니다. 두 가지 모두 지금으로서는 과장되어 있다고 봅니다.

모델은 여전히 실수를 합니다. 프로젝트가 정말로 중요하다면 눈을 떼지 마세요. 저는 IDE를 사이드 창에 띄워두고 매의 눈으로 관찰합니다.

다만 실수의 양상이 달라졌습니다. 문법 오류가 아닙니다. 더 교활합니다 -- 개념적 오류, 서두르는 주니어 개발자가 저지를 법한 실수입니다. 모델이 조용히 가정을 채워 넣고, 그게 틀려도 다시 확인하지 않은 채 그 잘못된 전제 위에 계속해서 코드를 쌓아 올립니다.

자신의 불확실성을 잘 관리하지도 못합니다. 멈춰서 "여기서 A로 할까요, B로 할까요?"라고 묻지 않습니다. 모순을 지적하지 않습니다. 반박하는 일이 드뭅니다. 좀 지나치게 비위를 맞추려 합니다. 먼저 계획을 작성하게 한 뒤, 그 계획에 맞춰 실행하게 하면 크게 도움이 됩니다. 가벼운 인라인 계획 모드 같은 게 정말 필요하다고 생각합니다.

과잉 설계하는 경향도 여전합니다. 여기저기 추상화의 층을 쌓아 올립니다. 코드가 부풀어 오릅니다. 그리고 자기가 만들어낸 쓸모없는 코드를 거의 정리하지 않습니다.

천 줄짜리 거대한 구현을 뱉어내는 걸 본 적이 있습니다 -- 느리고, 부서지기 쉽고, 불필요한 우회로투성이인 코드였죠. 그러고는 "더 간단한 방법으로 할 수 없을까?"라고 물었습니다. 그러자마자 "아, 물론이죠!" 하고 전체를 백 줄로 압축해버렸습니다.

때로는 이해하지 못했거나 마음에 안 든다는 이유만으로 작업과 무관한 주석이나 코드를 삭제하거나 고쳐 쓰기도 합니다. 제 CLAUDE.md에 그러지 말라고 명시해 두었는데도 여전히 그럽니다. 하지만 그 모든 걸 감안하더라도 순향상은 엄청납니다. 진심으로 예전으로 돌아갈 수 없겠다고 생각합니다.

사람마다 각자의 방식을 찾습니다. 제 방식은 이렇습니다. 왼쪽에는 Ghostty에서 Claude Code 세션 두어 개를 띄우고, 오른쪽에는 코드를 읽고 정밀하게 편집하기 위해 IDE를 띄워둡니다.

끈기

에이전트가 문제를 붙들고 늘어지는 걸 지켜보는 건 솔직히 매혹적입니다. 녀석은 지치지 않습니다. 좌절하지 않습니다. 인간이었다면 한 시간 전에 "됐어, 내일 다시 해보자"라고 했을 겁니다. 녀석은 그냥... 계속합니다.

영원히 버티는 것 같은 시간을 보내기도 합니다. 그러다 30분쯤 지나면 마침내 돌파합니다. 그 순간이 오면 "와, AGI 같은 느낌이네"라는 생각이 듭니다.

문득 깨닫게 됩니다. 정신적, 육체적 체력은 일을 해내는 데 있어 핵심 병목입니다. LLM이 그 한계를 박살 내버렸습니다.

속도 향상

LLM이 얼마나 더 빠르게 만들어주는지 수치로 정확히 말하기는 어렵습니다. 예전에 하던 일은 확실히 더 빠르게 합니다. 하지만 더 큰 변화는, 예전이라면 아예 시도조차 하지 않았을 일들에 손을 대게 되었다는 것입니다.

이유는 두 가지입니다.

  1. 예전에는 "노력 대비 수확이 적다"고 느꼈던 수많은 잡일이 이제는 아주 사소해졌습니다.
  2. 예전에는 지식이나 기술이 부족해 피했던 코드베이스가 갑자기 손이 닿는 곳에 있습니다.

그러니까, 가속이 일어나는 겁니다. 하지만 그 이상으로 확장이 일어나고 있습니다. 제가 할 수 있는 일의 범위가 넓어졌습니다.

레버리지

LLM에서 가장 강력한 점 중 하나는 이것입니다. 정의한 목표에 도달할 때까지 반복하는 데 아주 능합니다. 그 "AGI 맛"이 나는 순간의 상당수가 바로 이 특성에서 비롯됩니다.

핵심은 이것입니다. 세세하게 간섭하지 마세요. 성공의 기준을 알려주고, 경로는 스스로 찾게 두세요.

먼저 테스트를 작성하게 한 뒤, 그 테스트를 통과하게 만들 수 있습니다. MCP로 브라우저를 연결해 반복시킬 수도 있습니다. 간단하고 명백히 올바른 알고리즘을 작성한 뒤 "똑같은 결과를 내면서 성능을 최적화해"라고 말할 수도 있습니다.

사고방식이 명령형에서 선언형으로 바뀝니다. "A 하고, B 하고, C 해"가 아니라 "결과가 이렇게 되어야 해"라고 말합니다. 에이전트가 알아서 몇 차례 반복하고, 여러분은 공짜로 레버리지를 한 겹 더 얻습니다.

재미

예상치 못한 일입니다만, 코딩이 실제로 더 재밌어졌습니다. 지루하고 반복적인 채우기 작업은 에이전트가 흡수합니다. 남는 건 창조적인 부분들입니다.

막히는 일도 훨씬 줄었습니다. 막히는 건 정말 끔찍합니다. 지금은 거의 항상 "협업하면 적어도 진전이라도 낼 수 있다"는 길이 있습니다. 그래서 시작 자체가 훨씬 쉬워졌습니다.

다만, 정반대로 느끼는 분들도 만났습니다. LLM 코딩이 행복도를 떨어뜨린다는 겁니다.

장기적으로 보면, 엔지니어는 두 진영으로 갈린다고 봅니다. 코드를 작성하는 행위 자체를 사랑하는 사람과, 무언가를 만들어 내는 일을 사랑하는 사람.

위축

벌써 느껴집니다. 처음부터 코드를 작성하는 제 능력이 서서히 사라지고 있습니다. 뇌에서 '생성'(코드 작성)과 '판별'(코드 읽고 리뷰하기)은 분명히 다른 기술입니다. 코드를 작성하려면 방대한 세부 문법을 기억해야 합니다. 코드를 읽는 건 논리와 구조를 이해하는 일입니다. 그러니까 생성하는 근육은 약해져도, 코드를 리뷰하는 일은 여전히 효과적으로 할 수 있습니다 -- 어딘가 어긋난 부분을 찾고, 버그를 잡아낼 수 있습니다.

쓰레기 대홍수

마음의 준비를 합니다. 2026년은 콘텐츠 쓰레기 대폭발의 해가 될지 모릅니다.

GitHub, Substack, arXiv, YouTube, Reddit -- 모든 디지털 콘텐츠 플랫폼이 AI가 생성한 자료로 넘쳐날 겁니다. 멋져 보이지만 실속은 없는, AI로 똥칠을 한 생산성 쇼의 물결을 보게 될 겁니다. 그 사이사이에 진짜이고 손에 잡히는 생산성 향상도 섞여 있겠죠. 하지만 그걸 찾으려면 직접 뒤져야 합니다.

질문

앞으로 10배 엔지니어는 어떤 모습일까요? 평범한 엔지니어와 최고 엔지니어의 격차가 더 벌어질까요? 제 추측은 이렇습니다. 훨씬 더 벌어질 겁니다.

일반주의자가 전문가를 능가하기 시작할까요? LLM은 세부 사항(마이크로)을 채우는 데는 비할 데 없이 뛰어나지만, 큰 그림을 그리고 장기 전략을 세우는 것(매크로)에서는 상대적으로 약합니다. 그 기울기는 전체 판을 내다볼 수 있는 사람에게 유리합니다.

5년 뒤에 LLM과 코딩하는 건 어떤 느낌일까요? StarCraft? Factorio? 음악을 연주하는 것?

사회에서 디지털 지식 노동에 병목이 걸린 부분은 과연 얼마나 될까요?

결론: 그래서 우리는 어디에 서 있는가

LLM 에이전트의 능력 -- 특히 Claude Code -- 는 2025년 12월쯤 전체적인 일관성의 임계점을 넘었습니다. 그것은 소프트웨어 엔지니어링에 상전변(相轉變)을 일으켰습니다. 일을 해내는 방식이 사실상 하룻밤 사이에 한 자릿수 위로 도약했습니다.

지금은 지능이 그 주변의 모든 것을 앞질러 달려가는 느낌입니다. 도구 연동은 아직 따라잡지 못했습니다. 팀에는 새로운 워크플로와 협업 패턴이 필요합니다. 업계는 방금 일어난 일을 아직 소화하는 중입니다.

2026년은 격렬할 겁니다. 모두가 이 새로운 능력을 흡수하고 내재화하려 안간힘을 쓰고 있습니다. 창문은 지금 열려 있습니다. 이것을 먼저 깨닫는 사람들이 압도적인 우위를 선점할 겁니다.