Agile은 끝나고, Architecture가 돌아왔다.

2 minute read

원문:
“Agile is Out, Architecture is Back”


🧭 개요: 펜듈럼의 움직임

Craig Adam은 소프트웨어 개발의 흐름이 극단을 오가며 변화해왔음을 설명한다.

  • 초기에는 “스펙이 신성”했고, “아키텍처 다이어그램이 코드보다 먼저”였으며, 변화는 “화물선 조종처럼 느리고 관료적”이었다.
  • 이후 Agile이 등장하며 “완벽보다 속도”를 중시했고, “Working software over comprehensive documentation”이 새로운 구호가 되었다.
  • 이제 AI 도구(GitHub Copilot, Claude Code 등)가 코드 생성을 주도하면서, “코드가 작성되는 환경을 설계하는 것”이 개발자의 역할이 되고 있다.
  • “펜듈럼은 다시 의도성으로 움직이고 있다.” 즉, 설계와 문서화가 다시 중요해지고 있다.

⚡️ Vibe Coding과 그 한계

“Just vibe it.” — Andrej Karpathy가 유행시킨 이 표현은 AI 기반 개발의 새로운 흐름을 상징한다.

  • “좋은 프롬프트 하나로 80%까지 도달”할 수 있는 시대.
  • “마법처럼 느껴지는” 빠른 개발이 가능하지만, “생각의 속도로 작성된 코드”는 “우유처럼 상한다.”
  • “얕은 이해를 조장”하고, “모델이 암묵적으로 아키텍처 결정을 내리며” 복잡성이 쌓인다.
  • 해결책은 “속도를 늦추는 것”이 아니라 “운전대를 누가 잡고 있는지 바꾸는 것.”
  • “우리는 더 많은 vibe coder가 아니라, 그것을 통제할 수 있는 아키텍트가 필요하다.”

🏗️ 함수가 아닌 프레임워크를 설계하라

Craig은 “전술적 개발은 상품화되고 있다”고 말한다.

  • AI는 “TypeScript resolver, GraphQL schema, Flutter widget”을 몇 초 만에 생성 가능.
  • “전략적 레이어는 여전히 인간의 영역”이며, 개발자는 “프레임워크, 경계, 패턴”을 설계해야 한다.
  • 핵심 질문은 “이 엔드포인트를 어떻게 구현할까?”가 아니라 “이 시스템의 가장 깔끔한 계약은 무엇인가?”
  • “버그를 고치는 것”보다 “그런 버그가 생기지 않도록 구조를 설계”하는 것이 중요.
  • “가장 가치 있는 개발자”는 “가장 많은 코드를 작성하는 사람”이 아니라 “코드가 살아갈 시스템을 설계하는 사람.”

🤖 새로운 청중: 인간이 아닌 AI

과거에는 “다음 개발자”를 위해 코드를 작성했지만, 이제는 “다음 개발자가 AI”.

  • AI는 “패턴 매칭 머신”이며, “명확한 구조, 네이밍, 예시”가 있어야 제대로 작동.
  • 필요한 요소:
    • “예측 가능한 패턴”
    • “엄격한 제약”
    • “선별된 예시”
    • “깨끗한 추상화”
  • “우리는 더 이상 단순히 코드를 작성하는 것이 아니라, 미래의 코파일럿을 위한 학습 데이터를 설계하고 있다.”

📜 새로운 매니페스토

Agile Manifesto는 “working software over comprehensive documentation”을 강조했지만, 이제는 그 원칙이 흔들리고 있다.

  • “작동하는 소프트웨어”가 “이해되지 않는 소프트웨어”가 되었다.
  • 새로운 가치 재해석:
    • “comprehensive structure over working software”
    • “curated systems over individuals and interactions”
    • “responding to context over responding to change”
  • “2005년의 병목은 속도였다. 2025년의 병목은 방향이다.”

🧠 다음 세대 개발자의 역할

기존의 “기능을 작성하는 개발자”에서 “기능이 만들어지는 환경을 정의하는 개발자”로 역할이 변화하고 있다.

Craig은 다음 다섯 가지에 집중하라고 조언한다:

  1. 시스템 중심 사고: “코드를 잘 쓰는 것”보다 “시스템을 형성하는 것”이 중요.
  2. 가드레일 구축: “패턴을 설정하고, 타입/테스트/스키마로 의도를 전달.”
  3. 예시 큐레이션: “코드베이스는 학습 환경이다. 나쁜 예시는 혼란을 증폭시킨다.”
  4. 리뷰 레이어 소유: “AI는 기능적 코드를 생성하지만, 아키텍처적 판단은 인간의 몫.”
  5. 천재 개발자가 되지 말 것: “문제를 해결하는 것보다, 문제를 예방하는 시스템을 만드는 것이 리더십.”

🧩 결론: 미래는 설계된다

Craig은 다음과 같이 요약하고 있다:

“가장 가치 있는 개발자는 AI의 원시적인 힘을 활용하면서도 명확성, 응집력, 방향성을 유지할 수 있는 시스템 설계자다.”

  • “속도는 여전히 중요하지만, 방향이 더 중요하다.”
  • “구조가 더 중요하다. 원칙이 더 중요하다.”
  • “다음 세대의 개발자는 인턴도, 동료도 아닌, 당신의 리드를 따르려는 지능형 머신이다.”