
정확히 1년 전, AI 업계의 권위자 안드레 카파시(Andrej Karpathy)는 다음과 같은 트윗을 남겼습니다.
"제가 '바이브 코딩'이라 부르는 새로운 방식의 코딩이 등장했습니다. 지수적 성장을 수용하고 코드가 존재한다는 사실조차 잊어버린 채, 온전히 그 '기분(Vibes)'에 몸을 맡기는 방식입니다."
개발자들은 열광했고 이 용어는 순식간에 퍼져나갔습니다. 하룻밤 사이에 관련 튜토리얼이 쏟아졌고, "그냥 바이브 코딩으로 해버려"라는 말이 모든 개발 관련 질문의 마법의 주문이 되었습니다.
그리고 사람들은 이 '바이브 코딩'으로 만든 앱을 실제 서비스(Production) 환경에 배포하기 시작했습니다. 결과는 처참했습니다.
2026년 2월 4일 — 첫 트윗으로부터 정확히 1년 뒤 — 카파시는 다시 트윗을 올렸습니다. 주제는 같았지만, 결론은 완전히 달랐습니다.
"오늘날 LLM 에이전트를 통한 프로그래밍은 전문가들의 기본 워크플로우로 자리 잡고 있습니다. 단, 훨씬 더 철저한 감독과 정밀 조사가 동반됩니다. 개인적으로 제가 현재 가장 좋아하는 용어는 '에이전틱 엔지니어링(Agentic Engineering)'입니다."
바이브 코딩이라는 용어를 만든 장본인조차 그 방식에서 벗어난 것입니다. 도대체 무엇이 변했고, 어떤 방식이 그 자리를 대체했으며, 지금 우리가 소프트웨어를 구축할 때 이것이 왜 중요한지 알아봅시다.
1. 핵심 차이점: 도구가 아닌 '규율(Discipline)'의 문제
많은 사람들이 오해하는 핵심은 바로 여기에 있습니다. 에이전틱 엔지니어링은 단순히 "더 좋은 AI 도구를 쓰는 것"이나 "더 많은 자동화"를 의미하지 않습니다.
- 🔥 바이브 코딩 (Vibe Coding)
- 정의: 직감에 의존하며 코드 리뷰를 생략하는 것을 말합니다.
- 방식: 프롬프트를 대충 입력하고, 결과물을 그대로 수용하여 실행합니다. 에러가 나면 에러 메시지를 복사해 다시 붙여넣고 재시도합니다.
- 문제점: AI 자체가 문제가 아닙니다. AI가 만든 결과물을 '인간이 리뷰하지 않는다'는 것이 진짜 문제입니다.
- 🏗️ 에이전틱 엔지니어링 (Agentic Engineering)
- 정의: AI가 코드 구현을 담당하되, 인간이 아키텍처, 품질, 정확성을 완전히 통제(Ownership)하는 것을 말합니다.
- 방식: 인간이 직접 타이핑하는 코드는 아주 일부일 수 있습니다. 나머지는 여러분의 지휘 아래 일하는 에이전트들이 작성합니다. 이 모든 과정에 철저한 '엔지니어링 규율'이 적용됩니다.
똑같은 도구를 사용하지만, 접근하는 규율과 태도는 완전히 다릅니다.
[한 줄 요약]
바이브 코딩 = YOLO (일단 지르고 보자).
에이전틱 엔지니어링 = AI가 구축하고, 인간이 책임진다.
2. 바이브 코딩이 실무 대규모 확장에서 실패한 3가지 이유
적절한 엔지니어링 전문성 없이 LLM을 남용하면, 아무 쓸모가 없거나 기존 코드를 망가뜨리는 이른바 "AI 슬롭(AI Slop, 쓰레기 코드)"을 양산하게 됩니다. 이는 결국 팀의 기술 부채를 폭발적으로 늘리고, 디버깅과 리팩토링에 엄청난 시간을 낭비하게 만듭니다.
실제 서비스 환경에서 바이브 코딩이 실패할 수밖에 없었던 3가지 치명적 이유는 다음과 같습니다.
2-1. 대규모 보안 취약점 양산
AI 에이전트가 코드를 빨리 짠다고 해서 '안전한' 코드를 짜는 것은 아닙니다. 만약 일주일에 1,000개의 PR(Pull Request)을 작성하는 에이전트가 단 1%의 취약점만 만들어내도, 매주 10개의 치명적인 보안 구멍이 생깁니다. 바이브 코딩에는 이를 걸러낼 최소한의 게이트조차 없었습니다.
2-2. 유지보수 불가능한 아키텍처
바이브 코딩은 '설계 단계'를 건너뜁니다. 생각나는 대로 기능을 요청하고 AI가 구현하면 다음으로 넘어갑니다. 그 결과 3개월만 지나도 개발자 본인은 물론 AI조차 이 코드가 왜 이런 구조를 가졌는지 이해하지 못하게 됩니다. 애초에 설계 논리가 없었기 때문입니다.
2-3. 컨텍스트 붕괴 (Context Collapse)
바이브 코딩 세션이 길어질수록 AI의 답변 품질은 급격히 떨어집니다. 에이전트는 이전의 결정들을 잊어버리고, 코드끼리 스스로 모순을 일으키기 시작합니다. 변경 사항(Diff)을 꼼꼼히 읽지 않는 개발자는 이를 절대 눈치채지 못합니다.
💡 2026년 엔지니어링 팀의 가장 큰 위협: 인지적 부채(Cognitive Debt) 통제되지 않은 AI 활용, 컨텍스트 손실, 신뢰할 수 없는 에이전트의 행동이 누적되어 생기는 비용입니다. 바이브 코딩은 그 어떤 개발 방식보다 빠르게 이 부채를 쌓아 올렸습니다.
3. 에이전틱 엔지니어링 실무 4단계 워크플로우
과정 자체가 복잡한 것은 아닙니다. 다만 바이브 코딩이 내다 버렸던 '규율'을 다시 세우는 과정입니다.
Step 1: 스펙(Spec) 먼저 작성하기
프롬프트를 입력하기 전에 반드시 설계 문서를 작성하세요. "이 기능의 목적은 무엇인가? 엣지 케이스는 무엇인가? 데이터 모델은 어떤 형태인가? 어떤 문제가 발생할 수 있는가?" 이것이 에이전트가 '훌륭한 코드'를 짤지, '그럴싸한 쓰레기'를 만들지 결정하는 가장 중요한 단계입니다. AI의 도움을 받아도 좋지만, 에이전트가 코드를 건드리기 전에 인간이 먼저 기준을 세워야 합니다.
Step 2: 범위가 지정된 단위 작업으로 쪼개기
잘 설계된 에이전틱 시스템은 작업을 작은 모듈로 쪼갭니다. 이를 통해 기술 부채 없이 기존 코드에 깔끔하게 통합되도록 합니다.
- ❌ 바이브 코딩 식 프롬프트: "사용자 인증 시스템 만들어줘" (너무 모호하여 AI가 멋대로 구조를 결정함)
- ⭕ 에이전틱 식 프롬프트: "기존 Resend 연동을 사용해 비밀번호 재설정 이메일 흐름을 구현해 줘. 토큰은 Redis에 15분 TTL로 저장해. 상세 스펙은 여기 첨부할게."
Step 3: 동료의 PR처럼 깐깐하게 리뷰하기
가장 지키기 어려운 규칙입니다. 에이전트는 엄청난 속도로 코드를 쏟아내고, 사람은 대충 훑어보고(Skimming) 승인하고 싶은 유혹에 빠집니다. 이 유혹에 넘어가는 순간 유지보수 불가능한 코드가 탄생합니다. 모든 변경 사항(Diff)을 정독하세요. 모듈이 무슨 역할을 하는지 명확히 설명할 수 없다면 절대 병합(Merge)해서는 안 됩니다. 이해 안 가는 코드는 AI에게 다시 물어보고 검증하세요.
Step 4: 끊임없이 테스트하기
바이브 코딩은 "작동하는 것처럼 보일 때" 배포합니다. 하지만 에이전틱 엔지니어링은 "테스트를 통과했을 때" 배포합니다. 대충 훑어본 AI 생성 테스트가 아니라, 인간이 직접 작성하거나 깐깐하게 리뷰한 탄탄한 테스트 코드를 기준으로 삼아야 합니다.
4. 에이전틱 엔지니어링의 실제 성과와 새로운 멘탈 모델
이것은 단순한 이론이 아닙니다. 에이전틱 엔지니어링을 제대로 도입한 기업들은 이미 엄청난 성과를 내고 있습니다.
4-1. 엔터프라이즈 성공 사례
- TELUS: 13,000개의 AI 솔루션을 통해 50만 시간 이상을 절약했습니다.
- Zapier: 조직 전체의 AI 도입률 89%를 달성했습니다.
- Stripe: 에이전트들이 매주 1,000개 이상의 PR을 성공적으로 병합하고 있습니다.
이러한 성과는 AI에게 무작정 일을 던져준 결과가 아닙니다. 탄탄한 코드 리뷰 프로세스와 관리 구조(Governance)를 갖추고, 그 통제 하에 AI를 대규모로 실행했기에 가능했던 일입니다.
4-2. 코더(Coder)에서 아키텍트(Architect)로
이제 개발자의 역할은 근본적으로 바뀌고 있습니다. 여러분은 더 이상 코드를 직접 타이핑하는 사람이 아닙니다. 여러분의 새로운 역할은 다음과 같습니다.
- 무엇을, 왜 만들지 정의하는 사람
- AI가 작업할 판(아키텍처)을 설계하는 사람
- AI의 결과물을 날카롭게 리뷰하는 사람
- 최종 배포 여부를 결정하는 사람
새로운 시대의 개발자 가치는 타이핑 속도나 API 암기력으로 결정되지 않습니다. '문제를 얼마나 명확하게 정의하는가'와 '결과를 얼마나 정확하게 판단하는가'에 달려 있습니다. 단순한 프롬프터가 아닌 최고의 아키텍트이자 깐깐한 리뷰어만이 살아남는, 훨씬 더 가치 있는 기술이 요구되는 시대입니다.
5. 이번 주 당장 시작해야 할 3가지 습관
새로운 도구는 필요하지 않습니다. 도구는 똑같지만, 이 세 가지 습관이 완전히 다른 결과를 만듭니다.
- 프롬프트 입력 전 스펙(Spec) 적기: 단 한 줄, 글머리 기호 하나라도 좋습니다. 일을 시키기 전에 억지로라도 먼저 구조를 생각하세요.
- 모든 Diff(변경 사항) 정독하기: 대충 넘기지 마세요. AI가 200줄을 고쳤다면 200줄을 다 읽어야 합니다. 스스로 설명할 수 없는 코드는 절대 병합하지 마세요.
- 구현보다 테스트 먼저 챙기기: 테스트 코드가 없다면 먼저 작성하세요. 그다음 AI에게 그 테스트를 통과하도록 코드를 짜게 하세요.
💡 마치며: 여러분의 생각은 어떠신가요? 프롬프트를 치기 전 스펙부터 작성하는 것, 쏟아지는 AI 코드를 꼼꼼히 리뷰하는 것, 아니면 내 일을 AI에게 위임하고 신뢰하는 것 중 여러분은 어떤 것이 가장 어렵게 느껴지시나요? 자유롭게 의견을 남겨주세요!
'IT > AI' 카테고리의 다른 글
| 앤스로픽 AI 일자리 지수: 주니어 사무직이 진짜 위기인 이유 (대체 직업 Top 10) (0) | 2026.03.25 |
|---|---|
| [AI 코딩] 혼자서 20인분 개발하기! YC CEO의 비밀 무기 'gstack' 완벽 가이드 (0) | 2026.03.24 |
| YOLO26 실전 가이드: 차세대 객체 탐지 모델 활용 전략 (0) | 2026.03.02 |
| ⚠️ 기술 쓰나미가 몰려온다 (5) | 2025.04.14 |
| 생산성을 300배 끌어올린 13가지 AI 툴 소개 (1) | 2025.04.11 |
IT 기술과 개발 내용을 포스팅하는 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!