콘텐츠로 이동

미래: Software 3.0과 루프 엔지니어의 역할

소프트웨어 개발의 역사는 세 번의 근본적 패러다임 전환으로 요약된다. Andrej Karpathy가 정의한 틀이다.

┌─────────────────────────────────────────────────────────────────┐
│ 소프트웨어 패러다임의 세 시대 │
└─────────────────────────────────────────────────────────────────┘
Software 1.0 (전통 프로그래밍)
입력 → [명시적 규칙: if/else, 알고리즘] → 출력
개발자가 규칙을 직접 작성한다
강점: 예측 가능, 결정론적
약점: 복잡한 패턴 규칙화 불가
Software 2.0 (딥러닝)
입력 → [학습된 가중치: 신경망] → 출력
개발자가 데이터와 목적함수를 설계한다
강점: 패턴 인식, 자동 일반화
약점: 해석 불가, 데이터 의존
Software 3.0 (LLM 기반)
입력 → [자연어 지시 + LLM] → 출력
개발자가 목표와 컨텍스트를 설계한다
강점: 유연성, 즉각 적응, 자연어 인터페이스
약점: 비결정론적, 루프 없이 실패 감지 어려움

Software 3.0에서 LLM은 새로운 **컴퓨팅 기판(computing substrate)**이다. 코드를 실행하는 CPU처럼, 자연어 지시를 실행하는 새로운 층이 생겼다. 이 기판 위에서 “프로그래밍”은 프롬프트를 작성하고, 컨텍스트를 설계하고, 루프를 구축하는 것으로 변한다.

Software 3.0의 등장과 함께 개발자의 도구 상자도 진화했다. 계층들이 대체가 아니라 누적되었다.

┌─────────────────────────────────────────────────────────────────┐
│ 엔지니어링 계층의 누적 │
└─────────────────────────────────────────────────────────────────┘
┌────────────────────────┐
│ 루프 엔지니어링 │ ← 현재 (2025~)
│ 하네스 + 루프 구조 │
└──────────┬─────────────┘
│ 흡수·포함
┌──────────┴─────────────┐
│ 컨텍스트 엔지니어링 │ 2025년 부상
│ 무엇을 모델에 넣을지 │
└──────────┬─────────────┘
│ 흡수·포함
┌──────────┴─────────────┐
│ 프롬프트 엔지니어링 │ 2022~2024년
│ 어떻게 모델에게 말할지│
└──────────┬─────────────┘
│ 기반
┌──────────┴─────────────┐
│ 모델 그 자체 │ LLM
└────────────────────────┘

프롬프트 엔지니어링은 개별 모델 호출을 최적화했다. 컨텍스트 엔지니어링은 무엇을 컨텍스트에 넣을지를 다뤘다. 루프 엔지니어링은 이 두 가지를 모두 포함하면서, 루프 구조, 하네스, 종료 조건, 상태 관리, 안전 메커니즘 전체를 설계한다.

Boris Cherny의 통찰: 루프를 작성하는 것이 일이다

섹션 제목: “Boris Cherny의 통찰: 루프를 작성하는 것이 일이다”

Claude Code 책임자 Boris Cherny는 이 변화를 가장 직접적으로 표현했다.

“나는 더 이상 Claude에 프롬프트하지 않는다. 루프를 돌리며 무엇을 할지 알아내게 한다. 내 일은 루프를 작성하는 것이다.”

이 문장은 Software 3.0에서 개발자의 역할 변화를 압축한다. 단일 프롬프트를 고민하는 것이 아니라, 에이전트가 작업을 자율적으로 수행할 수 있는 구조를 설계하는 것이 핵심 역량이 된다.

Addy Osmani는 이를 “루프 엔지니어링”이라 명명했다. 프롬프트가 아니라 루프를 설계하는 사람, 하네스를 구축하는 사람이 Software 3.0 시대의 핵심 엔지니어다.

Software 3.0 시대의 루프 엔지니어에게 요구되는 역량은 전통적 소프트웨어 엔지니어링과 겹치는 부분도 있고, 새로운 부분도 있다.

계속 필요한 역량:

  • 시스템 설계와 추상화
  • 디버깅과 근본 원인 분석
  • 테스트와 검증 설계
  • 보안과 에러 처리

새롭게 중요해진 역량:

  • 루프 구조 설계 — 어떤 패턴이 어떤 문제에 적합한지
  • 하네스 엔지니어링 — 에이전트를 감싸는 제어 시스템 구축
  • 평가 설계 — 에이전트의 성공을 어떻게 기계적으로 측정할지
  • 컨텍스트 아키텍처 — 무엇을 언제 어떤 형식으로 모델에게 제공할지
  • 실패 모드 예측 — 루프가 어떻게 무너지는지 미리 파악

덜 중요해지는 것:

  • 개별 알고리즘의 구현 세부사항 (에이전트가 작성)
  • 보일러플레이트 코드 작성 (에이전트가 생성)

METR의 측정에 따르면 AI가 50% 신뢰도로 완료할 수 있는 작업의 길이가 약 7개월마다 두 배가 된다. 현재 약 1시간 수준의 작업을 자율적으로 처리하는 에이전트는, 이 추세가 이어진다면 수개월 안에 수일~수주 단위의 작업을 처리하게 된다.

이것은 루프 엔지니어에게 두 가지 의미를 갖는다.

기회: 반복적이고 명확한 목표를 가진 작업들이 루프로 자동화 가능해진다. 개발자는 더 높은 수준의 문제 — 무엇을 만들 것인가, 어떤 목표를 달성할 것인가 — 에 집중할 수 있다.

책임: 더 오래, 더 자율적으로 작동하는 루프는 더 많은 것을 할 수 있고, 더 크게 잘못될 수도 있다. 안전 메커니즘, 감사 가능성, 인간 감독 포인트를 루프 설계에 내장하는 것이 더욱 중요해진다.

이 사이트는 루프를 “돌게 만드는” 것에서 “믿을 수 있고, 안전하고, 경제적으로 만드는” 것까지 다뤘다. 단일 호출의 한계에서 시작해, 기본 루프 해부, 단일 에이전트 패턴, 워크플로 패턴, 컨텍스트 관리, 루프 제어, 실패·보안·관찰 가능성, 멀티 에이전트, 자기개선 RL, 그리고 실전 케이스 스터디까지.

Software 3.0 시대에 루프를 작성하는 것이 곧 소프트웨어를 작성하는 것이 된다. 루프 엔지니어로서의 여정이 여기서 시작된다.

퀴즈를 불러오는 중…

참고 자료