Affirm Retooled for Agentic Software Development in One Week
개요
Affirm은 2026년 2월, 800명 이상의 엔지니어를 대상으로 일주일간 'Agentic AI Retooling Week'를 개최하여 ideation부터 구현, 테스트, 코드 리뷰까지 실제 업무에 AI 에이전트 기반 개발을 도입했습니다. 이 경험을 통해 Affirm은 기존 개발 시스템을 재고하고 AI 에이전트 지원 PR 비율을 60% 이상으로 높였습니다.
주요 내용
* AI 에이전트 기반 개발 도입 배경: Affirm은 1.3억 건 이상의 연간 거래량을 처리하는 신용 네트워크 규모 확장을 위해 고품질 소프트웨어 출시 역량 강화가 필수적이었으나, 12년 된 모노레포 구조의 병목 현상(느린 테스트, 수동 코드 리뷰, 불안정한 CI, 구형 배포 인프라)으로 제약을 받고 있었습니다. 2025년 하반기부터 AI 보조 개발 투자를 진행했고, Anthropic의 Opus 4.5와 같은 모델 발전으로 코딩 에이전트가 코드베이스 탐색, 계획 수립, 코드 작성, 테스트 실행 및 실패 반복 처리를 최소한의 인간 개입으로 안정적으로 수행할 수 있게 되자, 800명 전체 엔지니어에게 이 가속도를 적용하고자 했습니다.
* AI Retooling Week 준비:
* 목표: 평균 개발자가 별도의 설정이나 전문 지식 없이도 대부분의 코딩 작업을 자동화할 수 있는 반복 가능한 에이전트 기반 워크플로우를 2주 안에 구축하는 것을 목표로 9명의 엔지니어로 구성된 워킹 그룹을 소집했습니다.
* 핵심 결정:
1. 단일 기본 툴체인: Claude Code를 기본 에이전트 코딩 도구로 선정하고, 워크플로우 전체를 해당 도구의 기본 기능에 맞춰 작성하여 명확한 시작점을 제공했습니다.
2. 로컬 우선 개발: 툴링 환경이 중앙 집중식 플랫폼으로 수렴되지 않았으므로, 엔지니어들이 즉시 생산성을 발휘할 수 있도록 로컬 개발을 우선시했습니다.
3. 명시적인 인간 체크포인트: 의도 제공, 계획 승인, 코드 검토, 병합 등 판단이 필요한 지점에는 인간의 개입을 명확히 두었습니다.
* 도구 및 워크플로우:
* 워크플로우 원칙: '하나의 작업 = 하나의 에이전트 세션 = 하나의 PR'.
* 사전 의사 결정: 구현 시점의 상호 작용 대신, 계획 단계에서 아키텍처 및 범위 결정을 미리 내려 에이전트에게 명확하게 범위가 정해진 작업을 제공했습니다.
* 단계별 커스텀 툴링:
* Plan: 요구사항을 구조화된 구현 계획으로 변환하고 잘 정의된 작업으로 분할합니다.
* Review: 코드가 작성되기 전에 엔지니어가 계획을 검토하고 승인합니다.
* Execute: 에이전트가 전용 워크트리에서 단일 작업을 구현합니다.
* Verify: 에이전트가 테스트 및 린터를 실행하고, 발견된 문제를 해결하며 자체 코드를 검토합니다. CI 실패 시 빌드 로그를 가져와 실패를 상관관계 분석하고 수정을 제안합니다.
* Review: 엔지니어가 에이전트의 출력을 검토하고 편집합니다. AI 생성 코드를 동료에게 보내기 전에 반드시 검토하도록 했습니다.
* Deliver: 엔지니어가 인간의 승인을 받고 병합합니다.
* 컨텍스트 파일 시스템: 코드베이스의 여러 수준(규약, 도메인 지식, 팀 결정)에서 에이전트가 접근할 수 있는 컨텍스트 파일을 유지했습니다.
* 내부 플러그인: 툴링을 내부 플러그인을 통해 배포하고, 중앙 마켓플레이스에서 팀별 스킬을 구축 및 공유했습니다.
* AI Retooling Week 실행:
* 구조: 리더십 시작 행사, 실시간 데모, '가능성의 예술' 세션, 팀 주도 데모, 조직 전체 데모 등으로 구성되었습니다.
* 지원: 시간대별 전담 지원 채널 운영, 헬프데스크 세션, 팀별 에이전트 PR 제출 리더보드 추적 등을 통해 학습과 실제 적용을 병행했습니다.
* 측정: 채택률, PR 볼륨, 오픈 vs. 병합 PR 수, 토큰 사용량 등을 측정했으며, 주간 예산의 약 70%를 사용했습니다.
* 결과 및 문제점:
* 긍정적 결과:
* 주간 종료 시 엔지니어링 조직의 92%가 최소 하나 이상의 에이전트 지원 PR을 제출했으며, 대부분은 여러 개를 제출했습니다.
* 초기 회의적이었던 엔지니어들도 중반부터 에이전트 도구의 유용성을 발견했으며, 재교육 주간 이후에도 모멘텀을 이어가고자 하는 팀들이 많았습니다.
* 주요 병목 현상:
* 변경 검토 프로세스: 약 40%의 응답자가 수동 검토 프로세스가 병목 현상이라고 지적했습니다.
* CI 속도 및 안정성: 단위 테스트는 약 8분, 전체 회귀 테스트는 100분 이상 소요되어 에이전트 기반 개발의 빠른 반복 검증 요구에 부합하지 못했습니다.
* 툴 통합 마찰: 수십 개의 MCP(Managed Cloud Platform)를 통한 내부 시스템 연동 요청이 보안 검토 프로세스를 압도했으며, 각 통합은 신중한 평가가 필요한 보안 표면을 확장했습니다. CLI가 MCP보다 안정적인 경우가 많았으나, 표준화된 구성 및 SLA 부족으로 통합이 오히려 부담이 되었습니다.
* 문서 접근성: 10년 이상 축적된 기술 및 제품 사양이 여러 플랫폼과 코드에 산재하여 에이전트가 품질 높은 출력을 생성하기 위한 명확하고 통합된 컨텍스트 확보에 어려움을 겪었습니다.
* 로컬 검증 부재: 빠른 로컬 검증 없이 CI로 많은 PR이 몰리면서 Buildkite에 부하가 걸리고, 내부 테스트 격리 서비스 및 CI 파이프라인이 다운되는 경우도 발생했습니다.
* 결론: 에이전트 코딩은 기존 개발 파이프라인의 모든 마찰 지점을 증폭시켰습니다.
* 격차 해소를 위한 투자:
* 컨텍스트 중앙화 및 모범 사례: 아키텍처 결정, 도메인 컨텍스트, 모범 사례 등을 구현 전에 에이전트가 접근할 수 있는 곳에 저장하여 출력 품질을 높이고 검토 부담을 줄이는 작업을 진행 중입니다.
* 활성화 및 거버넌스: 재교육 주간을 실행했던 스프린트 팀을 상설 팀으로 전환하여, 통합 관리, 툴 검색 용이성 개선, 지원 모델 구축, 비용 및 가치 도출 추적 등의 업무를 수행합니다.
* 에이전트 친화적인 CI: CI 노이즈를 줄이기 위해 빌드 실패 시 코드, 테스트, 인프라 문제인지 즉시 파악할 수 있도록 실패 분류를 자동화하고, CI에 도달하기 전에 에이전트 및 엔지니어에게 신호를 제공할 수 있도록 로컬 테스트를 강화하며, 테스트 스위트의 크기를 적절하게 조정합니다.
* 독립적인 코드 검증: 에이전트가 생성한 코드와 테스트 간의 잠재적인 오류 일치를 방지하기 위해 PR diff를 수용 기준 및 여러 모델과 교차 확인하는 파일럿 시스템을 운영 중입니다.
시사점
Affirm의 AI Retooling Week 경험은 강제적인 변화 주기, 전담 지원 팀, 단일 기본 툴체인 선정, 그리고 리더십의 확고한 의지가 AI 에이전트 기반 개발의 성공적인 도입과 빠른 채택에 결정적인 역할을 함을 보여줍니다. 이는 점진적인 접근 방식보다 훨씬 효과적이었으며, 기업들이 AI 기술을 통해 개발 생산성을 극대화하고 경쟁 우위를 확보하려면 현재의 기회가 사라지기 전에 과감하게 투자하고 변화해야 함을 시사합니다.
댓글
GitHub Discussions