에이전틱 엔지니어링이란?
게시일: 2026년 4월 3일 | 원문 작성일: 2026년 3월 15일 | 저자: Simon Willison | 원문 보기
핵심 요약
Simon Willison이 직접 정의하는 에이전틱 엔지니어링(Agentic Engineering) — 코딩 에이전트와 함께 소프트웨어를 개발하는 실천의 의미, 그리고 바이브 코딩과의 차이점을 명확히 설명합니다.
- 에이전틱 엔지니어링의 정의 — 코딩 에이전트의 도움을 받아 소프트웨어를 개발하는 실천. Claude Code, Codex 등이 대표적.
- 에이전트의 핵심 정의 — “목표 달성을 위해 루프 안에서 도구를 실행하는 소프트웨어.” LLM ↔ 도구 호출 루프가 핵심.
- 코드 실행이 결정적 — 실행 없이는 LLM 출력은 그저 텍스트. 실행 가능하기에 반복 개선이 가능합니다.
- 인간의 역할은 여전히 크다 — 무엇을 만들지 판단하고, 맥락을 제공하고, 결과를 검증하는 일은 인간의 몫.
- 바이브 코딩과는 다르다 — 바이브 코딩은 코드를 잊고 프롬프트만으로 결과를 내는 것. 에이전틱 엔지니어링은 검증·반복·프로덕션화.
• • •
에이전틱 엔지니어링이란?
저는 **에이전틱 엔지니어링(Agentic Engineering)**이라는 용어로, 코딩 에이전트의 도움을 받아 소프트웨어를 개발하는 실천을 가리켜요.
**코딩 에이전트(Coding Agent)**란 무엇일까요? 코드를 작성하고 실행할 수 있는 에이전트예요. 대표적인 예로는 Claude Code, OpenAI Codex, Gemini CLI 등이 있어요.
그렇다면 **에이전트(Agent)**는 무엇일까요? 이 용어를 명확하게 정의하는 일은 적어도 1990년대부터1 AI 연구자들을 괴롭혀 온 난제예요. 하지만 GPT-5, Gemini, Claude 같은 대형 언어 모델(LLM) 분야에서 제가 받아들이게 된 정의는 이거예요:
에이전트는 목표를 달성하기 위해 루프 안에서 도구를 실행합니다.
“에이전트”는 여러분의 프롬프트와 함께 LLM을 호출하고, 도구 정의 목록을 전달하고, LLM이 요청하는 도구를 호출한 뒤 그 결과를 다시 LLM에 돌려보내는 소프트웨어예요.
코딩 에이전트의 경우, 그 도구 중 하나가 코드를 실행할 수 있는 도구예요.
여러분은 코딩 에이전트에게 목표를 정의하는 프롬프트를 입력해요. 그러면 에이전트는 그 목표가 달성될 때까지 코드를 생성하고 실행하는 루프를 반복해요.
코드 실행 능력이야말로 에이전틱 엔지니어링을 가능하게 하는 결정적인 역량이에요. 코드를 직접 실행할 수 없다면 LLM이 출력하는 모든 것은 별다른 가치가 없어요. 코드를 실행할 수 있기에, 이 에이전트들은 명백히 작동하는 소프트웨어를 향해 반복해서 나아갈 수 있어요.
• • •
에이전틱 엔지니어링
이제 코드를 작성할 수 있는 소프트웨어가 생겼는데, 우리 인간에게 남은 일은 무엇일까요?
할 일이 정말 많아요.
코드를 작성하는 것은 소프트웨어 엔지니어의 유일한 활동이었던 적이 없어요. 이 분야의 핵심은 언제나 무엇을 작성해야 할지 알아내는 것이었죠. 어떤 소프트웨어 문제든 수십 가지 잠재적 해결책이 있고, 각각 고유한 트레이드오프가 있어요. 우리의 역할은 그 선택지들을 탐색하며 우리 고유의 상황과 요구사항에 가장 잘 맞는 것을 찾아내는 거예요.
코딩 에이전트에서 훌륭한 결과물을 얻어내는 것은 그 자체로 깊이 있는 주제예요. 특히 이 분야가 눈이 돌아갈 만큼 빠른 속도로 계속 발전하고 있는 지금은 더욱 그렇죠.
우리는 코딩 에이전트에게 문제를 해결하는 데 필요한 도구를 제공하고, 적절한 수준의 세부 사항으로 문제를 명시해야 해요. 그리고 결과를 검증하고 반복해 나가면서, 문제가 견고하고 믿을 수 있는 방식으로 해결되는지 확인해야 하죠.
LLM은 과거의 실수로부터 스스로 배우지 않아요. 하지만 코딩 에이전트는 배울 수 있어요. 우리가 과정에서 배운 것들을 의도적으로 지시 사항과 도구 환경(tool harnesses)에 반영해 나간다면요.
효과적으로 활용하면, 코딩 에이전트는 우리가 훨씬 더 야심 찬 프로젝트에 도전할 수 있도록 도와줘요. 에이전틱 엔지니어링은 우리가 더 많고 더 나은 품질의 코드를 만들고, 더 큰 영향을 미치는 문제를 해결하는 데 도움이 되어야 해요.
• • •
이게 그냥 바이브 코딩 아닌가요?
“바이브 코딩(Vibe Coding)“이라는 용어는 2025년 2월 Andrej Karpathy2가 만들어냈어요. 공교롭게도 Claude Code 첫 출시 3주 전의 일이에요. 이 용어는 코드의 존재 자체를 “잊어버린 채로” LLM에게 코드를 작성하게 하는 방식을 가리켜요.
어떤 사람들은 이 정의를 확장해서 LLM이 코드를 생성하는 모든 경우를 바이브 코딩이라 부르기도 해요. 하지만 저는 그건 잘못됐다고 생각해요. 바이브 코딩은 본래 의미대로 쓸 때 더 유용해요. 검토되지 않은 프로토타입 수준의 LLM 생성 코드를, 저자가 프로덕션 수준으로 끌어올린 코드와 구분하는 용어가 필요하니까요.
• • •
이 가이드에 대하여
이 가이드가 다루려는 분야처럼, _에이전틱 엔지니어링 패턴(Agentic Engineering Patterns)_도 한창 진행 중인 작업이에요. 제 목표는 이 도구들로 작업할 때 실증적으로 효과가 있고, 도구가 발전해도 시대에 뒤떨어지지 않을 패턴들을 발굴하고 설명하는 거예요.
새로운 기법이 등장함에 따라 계속해서 챕터를 추가할 거예요. 어떤 챕터도 완성된 것으로 볼 수 없어요. 이 패턴들에 대한 이해가 발전함에 따라 기존 챕터도 계속 업데이트해 나갈 거예요.
• • •
역자 주
- 1990년대 에이전트 연구: 원문에서 링크된 인물은 Michael Wooldridge로, 다중 에이전트 시스템(Multi-Agent Systems) 분야의 권위자입니다. 그의 1995년 저서 Intelligent Agents는 에이전트 개념을 정립하는 데 큰 영향을 미쳤으며, Simon Willison이 2024년 그의 강연을 소개한 바 있습니다. ↩
- Andrej Karpathy: OpenAI 공동 창업자 중 한 명으로, Tesla에서 AI 및 자율주행 부문 디렉터를 역임했습니다. 현재는 AI 교육 스타트업 Eureka Labs를 운영하며 AI 연구와 교육에 관해 활발하게 글을 씁니다. “바이브 코딩”이라는 용어를 처음 제안한 것으로 널리 알려져 있습니다. ↩
저자 소개: Simon Willison은 Django 웹 프레임워크의 공동 창시자이자, Datasette 프로젝트의 제작자입니다. LLM과 에이전틱 엔지니어링을 비롯한 다양한 기술 주제에 대해 활발하게 글을 씁니다.
참고: 이 글은 Simon Willison이 Agentic Engineering Patterns 가이드에 게시한 챕터를 번역한 것입니다.
원문: What is agentic engineering? - Simon Willison (2026년 3월 15일)
생성: Claude (Anthropic)