Kiro와 함께 “Soul Cocktail” 만들기, 취기 가득한 순간에
Source: Dev.to

이 글에서 탐구하고 싶은 세 가지
이 글은 “코드 작성 방법” 튜토리얼이 아닙니다. 저는 작은 해킹 프로젝트를 구실로 Kiro라는 새로운 도구를 활용해 제품을 만드는 실전 연습과 생각을 공유하고자 합니다.
이 이야기의 주인공은 Soul Cocktail입니다.
여기서 체험해 보세요:
마음껏 클릭해 보세요. 아이디어나 피드백이 있다면 정말 듣고 싶습니다.


아주 현실적인 순간에서 시작되었습니다. re:Invent 행사에서 바텐더가 저에게 물었습니다:
“어떤 음료를 원하시나요?”
그리고 저는 얼어붙었습니다. 답을 할 수 없었죠.
그 후, 우리는 바로 그 상황을 그대로 가져와 “무드에 따라 칵테일 주문하기” 앱을 Kiro만으로 하룻밤 만에 만들었습니다. 다음 날에는 계속 다듬어 공유 가능한 웹 페이지로 배포했습니다.
이 작은 프로젝트를 둘러싸고 저는 세 가지 이야기를 하고 싶습니다:
- 배경 및 제작 과정 – “조금 취함 + 시간 제한 + Kiro만 사용”이라는 제약 속에서 Soul Cocktail은 어떻게 만들어졌을까?
- 사후 회고 – 왜 이렇게 “그다지 복잡하지 않은” 앱이 현장 투표에서 승리했을까? AI 시대에 제품을 만들고 개발하는 방식에 어떤 변화를 가져왔는가?
- Kiro의 기능 및 활용 방법 – 이번에 Kiro를 로컬 프로젝트에 정확히 어떻게 연결했는가? 분위기 코딩을 넘어 탐구할 가치가 있는 다른 기능들은 무엇인가?
1. 작은 프로젝트의 배경과 빌드 과정
1) 배경: 바텐더에게 난감해졌던 순간
re:Invent 행사에서 바텐더가 물었습니다:
“What would you like to drink?”
나는 머뭇거렸습니다. 메뉴에 있는 모든 칵테일이 눈부시게 멋졌지만, 내 머릿속에 떠오른 건 오직:
“오늘 마실 무언가가 필요하지만, 그 음료가 뭐라고 부르는지 모르겠어.”
이런 상황은 흔합니다. 감정과 취향은 있지만, 메뉴가 기분별로 정리돼 있지는 않으니까요. 긴 리스트 중에서 골라야 하고, 그 순간엔 나를 빠르게 이해해줄 누군가가 필요합니다.
행사 규칙도 특이했습니다:
- 모두 먼저 음료를 받아 편히 쉬기.
- 제한된 시간 안에 Kiro를 사용해 분위기 코딩(vibe coding)하고, 처음부터 데모를 만들기.
- 마지막에 가장 마음에 드는 프로젝트에 투표하기.
우리는 그곳에 있던 유일한 전 여성 팀이었습니다. “초고난이도” 기술 주제를 억지로 끌어내기보다, 주제와 순간에 맞게 간단하게 진행했습니다:
음료를 주문하려다 막히는 그 느낌을 내 문제만으로 두지 말고—그걸 정확히 해결하는 작은 무언가를 만들면 어떨까?
2) 기분으로 주문하기: Soul Cocktail의 핵심 경험
Soul Cocktail의 목표는 명확해졌습니다:
칵테일을 주문하고 싶지만 말을 잇지 못할 때, 작은 앱이 당신의 기분을 기반으로 주문을 도와준다.
Kiro에서 나는 경험을 대략 이렇게 적었습니다:
- “midnight bar” 분위기의 어두운 UI.
- 화면에 떠다니는 기분 버블; 사용자는 최대 세 개까지 선택 가능.
- Generate 버튼을 누르면 짧은 “Mixing your soul cocktail…” 순간.
- 최종 Soul Cocktail 카드에는 다음이 포함됩니다:
- 약간 시적인 칵테일 이름(예: Silver Pulse).
- 선택된 기분을 “재료 비율”로 매핑.
- 오늘 이 음료가 당신에게 어울리는 이유에 대한 짧은 설명.
- 작은 Daily Spark 축복 문구.
나는 새 프로젝트를 만들고 모든 보일러플레이트를 손으로 작성하기 시작하지 않았습니다. 대신 Kiro의 강점을 살리는 경로를 택했습니다:
# 1️⃣ Create an empty folder
mkdir soul-cocktail && cd soul-cocktail
# 2️⃣ Open it in Kiro – it initializes the frontend project for me
그 뒤에 vibe coding에 들어갔습니다:
| 누가 무엇을 했나요? | 책임 영역 |
|---|---|
| Me | 전체 경험, 페이지 구조, 기분 선택 규칙, 결과 카드 내용, 분위기 및 카피 톤 |
| Kiro | 컴포넌트 구조, 상태 관리, 스타일링, 간단한 애니메이션, 내 피드백에 따른 지속적인 리팩터링 |
첫날 밤 나는 한 가지 규칙을 꼭 지켰습니다:
핵심 흐름을 먼저 작동시켜라: 기분 선택 → 믹스 → 결과 도출.
3) 라이브 데모: 내가 발표하는 것이 아니라, 모두가 체험
데모에서는 무대에 서서 구현 세부 사항을 설명하지 않았습니다. 대신 훨씬 간단한 방식을 택했습니다:
- 사람들을 화면 앞으로 초대해 직접 기분 버블을 고르고 Generate를 눌러 “오늘의 나”가 Soul Cocktail로 섞이는 모습을 보게 함.
- 그런 다음 자신만의 Daily Spark 문구를 확인하게 함.
최종 결과가 청중 투표에 달려 있었기 때문에, 많은 사람들이 투표 전에 이미 “기분으로 주문하기”를 직접 체험했습니다. 이제는 추상적인 데모가 아니라, 자신의 입력과 결과가 반영된 작은 경험이 된 것이었습니다.
결국—기술적으로 “무거운” 프로젝트들이 많았음에도 불구하고—Soul Cocktail이 그날 밤 1위를 차지했습니다.
Source: …
2. 사후 회고
이 작은 프로젝트가 AI 시대에 구축에 대해 다시 생각하게 만든 점
호텔에 있던 때—그리고 집에 돌아온 뒤에도—나는 한 가지 질문을 계속 되뇌었다:
왜 이 “그다지 복잡하지 않은” 작은 앱이 그런 환경에서 성공했을까?
1️⃣ 사람 먼저, 기술은 그 다음
두 가지 핵심 이유:
-
실제 사용자 상황에서 시작했다.
과시하기 위해 시나리오를 만든 것이 아니다. 바로 그 순간 많은 사람들이 실제로 겪을 수 있는 상황이었다. 우리는 “칵테일에 대해 가르쳐준다”가 아니라 아주 구체적인 문제를 해결하고 있었다:“지금 내 기분은 어떤가?” → “그럼 오늘은 이 음료가 딱 맞아.”
-
경험이 단순하고 마찰이 적었다.
어떻게 하는지 바로 이해한다. 몇 번 클릭하면 결과가 나오고, 그 결과는 환경에 완벽히 맞는다 – 사람들은 이미 술을 마시고 있었다.
즉, 나는 기술에서 시작한 것이 아니라 고객으로서 그 순간 느낀 감정에서 시작했고, Kiro를 이용해 그것을 실제로 구현했다.
2️⃣ 먼저 만들고, 그 다음 다듬는다
시간이 제한된 상황에서, 아무도 하루 종일 설계를 제대로 해 달라고 하지 않는다. 내 선택은:
- 엔드‑투‑엔드 경험을 먼저 만든다.
- “기분 → 칵테일” 흐름을 동작하게 만든다.
- 세부 사항과 최적화는 나중에 남겨둔다.
둘째 날 나는 Kiro를 사용해:
- 코드를 정리하고 컴포넌트 구조를 다듬어 단순 데모가 아니라 유지보수 가능한 프로젝트로 만든다.
- UI와 인터랙션 리듬을 미세 조정한다 – 배경 색, 전환 효과, 버튼 피드백 등.
- Kiro가 “가장 간단한 배포 경로”를 안내하도록 하여 로컬 데모를 공유 가능한 웹페이지로 전환한다.
먼저 만들라. 실제 사용자가 써보게 해라. 그리고 계속 진행하라.
3️⃣ AI 시대에 진정으로 바뀌어야 할 것은?
Soul Cocktail이 내게 준 가장 큰 교훈:
Kiro 같은 AI IDE 덕분에 인간과 도구 사이의 작업을 완전히 재분배할 수 있다.
| Kiro가 할 수 있는 일 | 인간이 집중해야 할 일 |
|---|---|
| • 코드 생성 | • 실제 상황 포착 |
| • 리팩터링 | • 간단하고 직접적인 제품 형태로 응답 |
| • 스타일링 디테일 | • 사용자 반응을 느끼고, 의사결정하고, 트레이드‑오프 선택 |
| • 빌드 설정·배포 가이드 | • 사람, 상황, 스토리텔링 이해 |
많은 AI 논의가 “효율성”에 머무른다 – 한 사람이 더 많은 코드를 쓰고 더 많은 일을 할 수 있다. 나에게 중요한 것은 도구가 우리에게:
- 아이디어를 실행 가능한 형태로 더 빠르게 전환하게 해준다는 점.
- “아이디어가 있는 사람”이 저수준 디테일에 막히지 않게 해준다는 점.
…그리고 우리에게 질문을 던진다:
이렇게 많은 디테일 작업이 자동화될 때, 인간의 가치는 어디에 더 강하게 나타나야 할까?
내 생각에 답은 아마도:
- 사람을 이해하는 것.
- 상황을 이해하는 것.
- 의사결정을 내리는 것.
- 스토리텔링을 하는 것.
4️⃣ Kiro의 역량과 이번에 내가 활용한 방법
4.1 실제로 사용한 기능
로컬 프로젝트 인식
빈 로컬 폴더에서 시작해 Kiro에게 프로젝트를 초기화하고, 컴포넌트를 생성하며, 상태를 관리하도록 했다 – “단일 파일 클라우드 장난감”이 아니라. 덕분에 나중에 리팩터링과 배포가 훨씬 자연스러웠다.
바이브 코딩: 대화형 코딩 + 반복 편집
전통적인 “빈 에디터에서 직접 코딩”을 거의 하지 않았다. 대신 Kiro에게 계속 말했다:
“이 구조, 이 흐름, 이 느낌을 원해.”
Kiro가 코드를 작성하고 수정하면, 나는 판단하고 선택했다.
이를 더 원활하게 만들기 위해 프로젝트에 로컬 .kiro 디렉터리를 추가하고 Kiro에서 열어두었다. 이렇게 하면 언제든 프로젝트 컨텍스트와 규칙을 바로 사용할 수 있다.
배포 가이드
“로컬에서 실행되는데, 가장 간단히 배포하려면 어떻게 해야 하지?” 라고 물었을 때 Kiro는 명확한 절차를 제시했다:
- 레포에 푸시한다.
- 호스팅 플랫폼을 선택한다.
- 빌드/출력 설정을 한다.
- 배포한다.
또한 빌드 명령어나 출력 디렉터리 이름 같은 번거로운 디테일도 도와줬다.
Kiro와 대화를 더 이어가면서 이번 설정에 대해 더 빠른 방법을 발견했다:
프로젝트 폴더를 그냥 드래그하면 (t
Source: …
he one containing index.html) into the drop area at the bottom of the Netlify Projects page, and Netlify will automatically deploy it as a website.**
4.2 What I Want to Explore Next

Kiro는 spec‑driven development를 지원하는 AWS에서 출시한 Agentic IDE입니다.
Spec‑driven development는 다음을 의미합니다:
- 먼저 Spec을 작성 – 문제, 입력/출력, 단계, 엣지 케이스를 정의합니다.
- 에이전트가 작업을 분해하고 spec을 엄격히 따르도록 구현하게 하며, 매 단계마다 즉석 프롬프트나 인간의 기억에 의존하지 않습니다.
Kiro는 두 가지 핵심 기능을 제공합니다: Spec과 Hook.
-
Spec – 목적, I/O, 정상 흐름, 제약 조건을 설명하는 문서 형식. 향후 작업에서 모든 것을 다시 설명하지 않고도 이를 참조할 수 있습니다:
“이 Spec을 따르세요.”
-
Hook – 자동으로 동작을 트리거하는 규칙(예: 저장 시 테스트 실행). 예시:
# .kiro/hooks.yml
on_save:
- run: npm test
on_commit:
- run: npm run lint
Hooks는 반복 작업을 자동화하고, 규칙을 강제하며, 개발 흐름을 원활하게 유지합니다.
TL;DR
- 실제 사용자 순간부터 시작하세요.
- 우선 최소한의 마찰 없는 경험을 구축하세요.
- AI IDE(Kiro)를 사용해 빠르게 생성, 리팩터링, 스타일링 및 배포하세요.
- 인간은 공감, 의사결정, 스토리텔링에 집중하도록 하세요.
파일 저장 시 특정 검사
- 특정 디렉터리에서 코드가 변경될 때 해당 테스트를 자동 생성합니다.
- 커밋 전에 사양 준수를 검증합니다.
이 업그레이드로 워크플로우의 일부가 **“사람이 직접 기억해서 해야 한다”**에서 **“IDE가 자동으로 수행한다”**로 전환됩니다.
Soul Cocktail 경험
Soul Cocktail에서는 주로 vibe coding과 로컬 프로젝트 워크플로우를 사용했습니다. Spec과 Hook은 가볍게만 다뤘습니다.
하지만 일상 업무와 개인 프로젝트에서는 반복되는 워크플로우, 제품 규칙, 팀 관행을 의도적으로 Specs로 전환하고, 이를 Hooks와 결합하여 이러한 경험이 Kiro 안에서 재사용 가능하고 공유 가능한 **“spec 자산”**이 되도록 하고 싶습니다. 이렇게 하면 머릿속에만 남지 않습니다.
에필로그: 한 잔으로 시작해서 더 많은 “작은 문제, 작은 프로젝트”로 나아가기
일상으로 돌아온 뒤, Soul Cocktail은 나에게 아주 직접적인 변화를 남겼다:
나는 삶 속의 작은 “막힌” 순간들에 더 많이 주목하기 시작했다 —
- 여행 중에 식당을 예약하는 일,
- 나중에 찾을 수 없는 메모를 적어두는 일,
- 무엇을 먼저 우선순위에 두어야 할지 모르는 일 —
그리고 비슷한 접근 방식을 사용해 Kiro와 다른 AI 도구들을 활용해 몇 가지 작은 프로젝트를 빠르게 출시했다.
모두가 작다. 어떤 것은 내가 혼자서만 사용할 수도 있는 도구다. 하지만 그것들은 나에게 한 가지를 계속 상기시킨다:
AI는 단순히 “빠른 코드”를 의미하는 것이 아니다. 그것은 또한 스스로에게 계속 물어볼 수 있는 기회이다:
내 삶과 다른 사람들의 삶을 위해 얼마나 더 많은 “딱 맞는” 작은 것들을 만들 수 있을까?
Soul Cocktail은 단지 한 잔일 뿐이다.
다음에는 Kiro와 다른 AI 도구들을 계속 활용해 더 많은 **“작은 문제, 작은 프로젝트”**를 실제로 사용 가능한 형태로 만들고, 그 실천 방법을 더 많은 사람들과 공유하고 싶다.