1. AI 코딩의 진화: 에이전트 기반 코딩으로의 전환 [0]

thumbnail AI 코딩은 단순한 자동 완성 기능을 넘어, AI 에이전트가 직접 코드를 조작하고 전체 애플리케이션을 생성하는 방식으로 빠르게 발전하고 있다.

1.1. AI 코딩의 과거와 현재 [0]

  1. AI 코딩의 초기 단계 [9]
    1. 1년 전만 해도 AI 코딩은 IDE 내 자동 완성 기능이나 채팅 앱을 통한 코드 복사-붙여넣기 수준에 머물렀다. [9]
  2. 에이전트 기반 코딩의 등장 [12]
    1. 약 1년 전부터 AI 에이전트가 개발 워크플로우의 핵심 부분으로 자리 잡기 시작했다. [12]
    2. 이는 단순한 기능이 아니라 개발 과정의 필수적인 요소가 되었으며, 개발자가 직접 텍스트를 조작하는 대신 AI 모델이 코드를 작성하는 방식으로 변화했다. [17]
    3. 이제 개발자는 에이전트에게 원하는 바를 지시하고, 에이전트는 수많은 편집을 수행하며 때로는 전체 앱을 스스로 생성하기도 한다. [23]

1.2. Claude Code의 발전과 성공 요인 [25]

  1. 초기 AI 코딩의 한계 [25]
    1. 과거에는 AI가 코딩을 자동화하려는 시도가 많았지만, 모델 성능과 모델 위에 구축되는 스캐폴딩(scaffolding)이 충분히 좋지 않아 성공적이지 못했다. [25]
  2. Claude Code의 초기 버전과 가능성 [29]
    1. Claude Code의 초기 버전(Sonnet 3.5)은 모델과 하네스(harness)가 완벽하지 않았음에도 불구하고, 개발자들이 업무에 활용하기 시작하며 그 잠재력을 보여주었다. [29]
    2. 개발팀에 배포된 지 하루 만에 엔지니어들이 Claude Code를 사용하는 모습은 놀라운 경험이었다. [31]
  3. 모델 및 하네스 개선을 통한 발전 [35]
    1. 지난 1년간 모델(Sonnet 3.7, 4.0, Opus 4.1)과 하네스 모두 크게 발전했다. [35]
    2. 하네스는 모델을 효과적으로 제어하고 안내하는 시스템으로, 마치 말을 탈 때 안장(saddle)이 필요한 것과 같다. [37]
    3. 하네스는 시스템 프롬프트, 컨텍스트 관리, 도구, MCP 서버 플러그인, 설정, 권한 등 모델과 상호작용하는 모든 요소를 포함하며, 모델의 성능에 큰 영향을 미친다. [44]
    4. Anthropic 개발자들은 매일 Claude Code를 사용하며 모델의 한계를 파악하고, 이를 개선하여 모델이 더 오랫동안 자율적으로 작동하도록 학습시킨다. [50]

2. Claude Code의 평가, 확장성 및 미래 개발자의 역할 [58]

thumbnail Claude Code는 실제 개발 환경에서의 사용 경험을 통해 평가되고 있으며, 지속적인 확장성을 바탕으로 미래 개발자의 역할을 아이디어 구상과 상위 목표 설정으로 변화시키고 있다.

2.1. Claude Code의 평가 및 피드백 루프 [58]

  1. 실제 업무를 통한 평가 [58]
    1. Claude Code의 성능 평가는 개발자들이 매일 자신의 업무에 직접 사용하며 이루어진다. [58]
    2. 새로운 코드 작성, 버그 수정, 피드백 처리 등 다양한 실제 업무에서 모델이 얼마나 효과적인지 확인한다. [66]
    3. 이는 실제 삶과 가장 유사한 평가 방식이며, 모델의 새로운 기능(MCP를 통한 컨텍스트 가져오기, Slack 메시지 읽기, 자동 디버깅 등)을 놓치지 않고 파악할 수 있게 한다. [69]
  2. '느낌(Vibes)' 기반의 평가 [72]
    1. 제품 평가를 위한 벤치마크를 구축하려 노력했지만, 소프트웨어 엔지니어링의 복잡성을 모두 포착하는 합성 평가(synthetic evals)는 매우 어렵다. [72]
    2. 따라서 모델이 "더 똑똑하게 느껴지는지(does it feel smarter?)"와 같은 '느낌(vibes)'이 가장 큰 평가 지표가 된다. [73]
  3. 내부 피드백 루프의 중요성 [81]
    1. Claude Code는 사용자 피드백을 매우 중요하게 여기며, 이를 통해 제품을 개선한다. [83]
    2. 개발 초기부터 Slack에 단일 피드백 채널을 운영하고, 접수된 버그를 최대한 빠르게 수정하여 사용자들에게 즉시 알렸다. [84]
    3. 이러한 빠른 피드백 처리와 소통은 사용자들이 지속적으로 피드백을 제공하도록 장려하며, 제품 개선의 핵심 동력이 된다. [87]
    4. AI 개발은 미지의 영역이므로, 사용자들의 요구사항을 경청하는 것이 가장 중요하다. [89]

2.2. Claude Code의 확장성과 미래 [93]

  1. Claude Code의 확장 기능 [93]
    1. Claude Code는 처음부터 해킹 가능성(hackability)을 높이는 방향으로 개발되었다. [93]
    2. 주요 확장 지점은 다음과 같다.
      1. Claude.md: 코드베이스에 대한 추가 컨텍스트를 제공하는 파일로, 저장소의 루트 또는 하위 디렉토리에 배치할 수 있다. [95]
      2. 설정 및 권한 시스템: 정교한 설정 및 권한 관리가 가능하다. [97]
      3. 훅(Hooks): 사용자가 특정 지점에 기능을 연결할 수 있도록 한다. [99]
      4. MCP(Multi-Context Prompting): 다양한 컨텍스트를 모델에 제공하는 중요한 확장 지점이다. [101]
      5. 슬래시 명령어(Slash commands) 및 서브 에이전트(Sub-agents): 재사용 가능한 워크플로우를 정의할 수 있으며, 에이전트와 슬래시 명령어를 통해 Claude Code를 확장하는 새로운 방법이다. [102]
    3. 이러한 확장 기능들은 Claude Code를 다른 사람들이 쉽게 구축하고 활용할 수 있도록 하며, 모델의 자율성, 지시 준수 능력, 기억력 향상에도 기여한다. [110]

2.3. 미래 코딩 환경과 개발자의 역할 변화 [116]

  1. 미래 개발자의 업무 변화 [116]
    1. 6~12개월 후에는 직접 코딩과 AI 주도 코딩이 혼합된 형태가 될 것이다. [117]
    2. 직접 코딩은 텍스트를 직접 조작하는 대신 Claude를 통해 텍스트를 조작하는 방식으로 변화할 수 있다. [119]
    3. Claude가 선제적으로 코드를 작성하고 검토하면, 개발자는 변경 사항을 승인할지 결정하는 역할을 하게 된다. [121]
    4. 12~24개월 후에는 Claude가 개별 작업보다는 앱 구축과 같은 더 높은 수준의 목표에 집중하게 될 것이다. [122]
    5. 이는 개별 파일 변경에서 전체 PR 변경, 나아가 앱 구축 목표 달성으로 추상화 수준이 높아지는 것을 의미한다. [124]
  2. 미래 개발자를 위한 조언 [125]
    1. 코딩 에이전트의 등장으로 복잡했던 개발 스택(React, Next.js, 빌드 시스템 등)이 단순해지고, 아이디어만 있으면 쉽게 구현할 수 있게 되었다. [132]
    2. 이제는 아이디어가 세부 구현보다 더 중요해졌다. [137]
    3. 코드는 더 이상 귀한 것이 아니며, Claude Code처럼 코드를 계속해서 다시 작성할 수 있다. [137]
    4. 개발자는 여전히 코딩 기술(언어, 컴파일러, 런타임, 웹 앱 구축, 시스템 설계 등)을 배워야 한다. [140]
    5. 하지만 동시에 더 창의적이 되어야 하며, 스타트업이나 제품 아이디어가 있다면 이전에는 불가능했던 방식으로 바로 구현할 수 있다. [142]

2.4. Claude Code 활용 팁 [149]

  1. 초보자를 위한 팁: 코드 작성보다 질문부터 시작하기 [150]
    1. Claude Code를 처음 사용하는 경우, 바로 코드를 작성하기보다는 코드베이스에 대한 질문을 하는 것부터 시작하는 것이 좋다. [152]
    2. 예를 들어, "이 함수가 왜 이렇게 설계되었나요?"와 같은 질문을 하면 Claude Code가 Git 기록을 분석하여 답변을 제공한다. [155]
    3. 에이전트가 연구를 수행하는 방식에 익숙해진 후에 코딩을 시작하는 것이 효과적이다. [158]
  2. 작업 난이도에 따른 Claude Code 활용법 [159]
    1. 쉬운 작업: Claude가 한 번의 프롬프트로 거의 완벽하게 코드를 작성할 수 있는 작업이다. [160]
      1. GitHub에서 Claude를 이슈에 태그하여 PR을 작성하게 함으로써 터미널 작업을 자유롭게 할 수 있다. [163]
    2. 중간 작업: 터미널에서 계획 모드(plan mode)로 시작하여 Claude와 함께 계획을 수립한 후, 자동 수락(auto accept) 모드로 구현하게 한다. [166]
    3. 어려운 작업: 개발자가 주도하고 Claude는 도구로 활용하는 페어 프로그래밍 방식이다. [168]
      1. Claude를 코드베이스 연구, 아이디어 프로토타입 제작, 시스템 경계 파악 등에 사용하고, 유닛 테스트 작성을 맡길 수 있지만, 대부분의 코딩은 개발자가 직접 수행한다. [169]