핵심 요약
Instacart의 Caper 스마트 카트 팀은 유지보수 효율성과 기술 부채 해결을 위해 기존 Fragment와 XML 기반의 안드로이드 앱을 Jetpack Compose로 전환하기로 결정했다. 초기에는 수 분기가 소요될 것으로 예상되었으나, AI 코딩 어시스턴트를 활용한 4단계 마이그레이션 전략을 통해 작업 속도를 5~7배 향상시켰다. 이 과정에서 AI 지침을 코드처럼 관리하고 단계별로 검증하는 워크플로를 구축하여 프로덕션 환경의 안정성을 확보했다. 결과적으로 기술 부채 해결 비용을 획기적으로 낮추며 성공적인 현대화를 진행 중이다.
배경
Android Fragment & XML Layouts, Jetpack Compose 기초, Kotlin DSL, AI Coding Assistants (Cursor, GitHub Copilot 등)
대상 독자
레거시 앱 현대화를 고민하는 안드로이드 개발자 및 AI 코딩 도구 도입을 검토하는 팀 리드
의미 / 영향
AI는 단순 코드 작성을 넘어 대규모 아키텍처 전환의 비용을 낮추는 핵심 도구가 되고 있다. 이는 기업이 기술 부채를 처리하는 방식을 근본적으로 변화시키며 과거에는 불가능했던 대규모 리팩터링을 상시화할 수 있게 한다.
섹션별 상세
점진적 전환을 위해 1단계 암시적 Fragment 호스트 도입, 2단계 타입 안정적 내비게이션 구축, 3단계 순수 Compose 화면 전환, 4단계 Compose 내비게이션 완성을 정의했다. 이 방식은 대규모 변경으로 인한 장애 위험을 최소화하고 프로덕션 환경의 안정성을 유지하면서 기능을 하나씩 이관할 수 있게 한다.
Phase 2의 내비게이션 마이그레이션에서 AI를 활용해 단순 반복적인 리팩터링 속도를 5~7배 높였으며 약 300~350시간의 공수를 절감했다. Git 히스토리를 컨텍스트로 제공하고 실시간으로 교정하며 마이그레이션 가이드를 업데이트하는 반복적 루프를 통해 AI의 정확도를 극대화했다.
325행 이상의 상세한 마이그레이션 가이드를 작성하여 AI가 실행할 프로그램처럼 관리했으며 이를 구조화된 'AI 스킬' 모듈로 발전시켰다. 17단계의 워크플로를 통해 분석, 구현, 시각적 회귀 테스트(Paparazzi 활용), 정리 과정을 체계화하여 복잡한 다중 파일 수정 작업에서도 일관성을 유지했다.
강력한 AI 코딩 어시스턴트의 등장으로 과거에는 비용 대비 효율이 낮아 방치되었던 대규모 리팩터링 작업의 ROI가 획기적으로 개선되었다. 엔지니어의 역할은 직접 코드를 수정하는 '실행'에서 아키텍처 설계, 패턴 정의, AI 생성 코드의 '검증 및 감독'으로 이동하고 있다.
Caper 팀은 Phase 4인 Compose 내비게이션 전환을 Phase 3와 병행하며 피처 플래그를 통해 두 시스템을 동시에 지원하고 있다. 이전 단계에서 구축한 타입 안정적 루트와 검증된 패턴 덕분에 최종 단계의 전환 속도는 더욱 가속화될 것으로 예상된다.
실무 Takeaway
- AI 지침(Prompt)을 인간용 문서가 아닌 AI가 실행할 '코드'로 간주하고 상세하게 작성하여 결과물의 일관성을 확보해야 한다.
- Paparazzi와 같은 스크린샷 테스트 도구를 활용하여 AI가 생성한 Compose UI와 기존 XML UI 간의 시각적 일치 여부를 자동 검증한다.
- 대규모 마이그레이션 시 내비게이션 구조 변경과 UI 전환을 분리하는 단계적 접근법을 통해 AI 적용 리스크를 관리한다.
- AI 도구 자체보다 이를 활용하는 워크플로(학습-컨텍스트 제공-실시간 교정-가이드 업데이트) 구축이 생산성 향상의 핵심이다.
언급된 리소스
API Docsnavigation-fragment-compose
GitHubPaparazzi
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료