Kiro와 풀스택 AR 이커머스 플랫폼 구축
Source: Dev.to

이 상황을 상상해 보세요: 증강 현실 착용 기능이 포함된 완전한 전자상거래 플랫폼을 구축해야 합니다. 전통적으로는 소규모 팀이 3~6개월이 걸리는 프로젝트였습니다. Kiro를 사용해 Spooky Wigs를 몇 주 만에 만들었습니다.
Spooky Wigs는 AR 착용 기능이 있는 연중 내내 운영되는 가발 전자상거래 플랫폼입니다.
주요 기능
- 2D AR 착용 – 가발 오버레이가 포함된 실시간 얼굴 트래킹
- 전체 전자상거래 – 장바구니, 결제, 주문 관리
- 게스트 결제 – 계정을 만들지 않고 구매 가능
- 결제 처리 – Stripe 연동
- 관리자 대시보드 – 제품 관리, 재고 추적, 분석
- 모바일 퍼스트 디자인 – 휴대폰 카메라에 최적화
모든 것을 바꾼 Kiro의 네 가지 기능
사양 기반 개발
무작위 기능 요청을 Kiro에 던지는 대신, 요구사항, 설계, 구현 작업을 공식화한 두 개의 포괄적인 사양을 중심으로 전체 플랫폼을 구조화했습니다.
스티어링 문서
스티어링 문서는 “항상 켜져 있는” 컨텍스트로, 모든 Kiro 응답을 형성합니다. 프로젝트에 대한 지속적인 지식 베이스라고 생각하면 됩니다.
모델 컨텍스트 프로토콜 (MCP)
MCP는 Kiro가 외부 도구인 Git과 직접 상호작용하도록 했으며, Supabase와 같은 클라우드 기반 데이터베이스와도 연동할 수 있습니다. 제 경우에는 로컬 머신에서 실행 중인 데이터베이스와 작업했습니다.
바이브 코딩: 대화형 개발
구조화된 사양 외에도, 빠른 반복과 문제 해결을 위해 대화형 개발을 사용했습니다. 변경을 가하고 추가 기능을 요청할 때 바이브 코딩을 활용했으며, 이는 빠르고 문제 해결에 이상적이었습니다.
직면한 도전 과제
1. MCP PostgreSQL 문제
처음에 Supabase 데이터베이스에 연결하도록 PostgreSQL MCP를 설정했지만, 풀러와의 연결 문제(SSL/TLS 인증서 검증, 타임아웃 문제)가 발생했습니다.
해결책: Docker에서 실행되는 로컬 PostgreSQL 데이터베이스로 전환하여 문제를 해결했습니다.
2. 컨텍스트 윈도우 관리
대형 사양과 스티어링 문서가 컨텍스트를 많이 차지해, 파일을 전략적으로 읽고 선택적으로 컨텍스트에 포함시켜야 했습니다.
해결책: 사양에 파일 참조를 사용하고 필요할 때만 파일을 읽었습니다.
얻은 교훈
- 스티어링에 일찍 투자 – 포괄적인 스티어링 문서를 만드는 데 들인 시간이 기하급수적으로 보상되었습니다. 스티어링에 한 시간 투자하면 반복 설명에 들어가는 여러 시간을 절약할 수 있습니다.
- 복잡한 기능은 사양으로 – 10개 이상의 컴포넌트를 가진 기능은 공식 사양이 필수입니다. 요구사항 및 설계 문서에 앞서 투자한 덕분에 구조적으로 건전한 코드를 얻었습니다.
- 탐색을 위한 바이브 코딩 – 프로토타이핑, 버그 수정, 문서화에 대화형 개발을 활용하세요. 간단한 작업에 사양을 과도하게 설계하지 마세요.
- MCP는 인프라가 필요 – MCP 서버가 현재 환경과 호환되는지 확인하세요. MCP가 작동하지 않을 때를 대비한 대체 전략을 마련해 두세요.
- 문서화는 무료 – Kiro에게 모든 것을 문서화하도록 요청하세요—비용이 들지 않으며 나중에 시간을 절약해 줍니다. 저는 추가 노력 없이 100개 이상의 문서 파일을 생성했습니다.
- 모바일 퍼스트는 중요 – 스티어링 문서에 명시된 대로 처음부터 모바일 퍼스트로 구축했기 때문에 AR 경험이 휴대폰에서 아름답게 작동했습니다. 휴대폰 카메라가 웹캠보다 품질이 뛰어나기 때문입니다.
Kiro는 Spooky Wigs 개발을 수개월에 달하는 벅찬 프로젝트에서 몇 주 안에 마무리할 수 있는 관리 가능한 작업으로 바꾸어 주었습니다. 더 중요한 것은, Kiro가 소프트웨어 개발에 대한 제 사고 방식을 완전히 바꾸어 놓았다는 점입니다.