AI와 함께 아이디어로 프로젝트 시작하기
아직 어떤 AI 모델을 주력으로 삼을지 정해지지 않은 상태에서 ChatGPT와 Gemini를 오가며 프로젝트 시작을 위해 나눴던 대화들을 따라가 본다.
“내가 겪는 불편함은 A인데 이걸 해결할 B라는 아이디어가 있어. 이미 이런 문제를 풀고 있는 기존 서비스들을 조사해주고 나의 아이디어가 경쟁력이 있는지 냉정하게 분석해줘. 직접 제품 개발을 진행해 본다면 어떤 식으로 접근하는 게 좋을지 Product Manager 관점에서 검토하고 조언해줘.”
“프로젝트를 어떻게 진행하고 싶은지 설명하고 함께 계획을 세우고 싶어. 나는 10년 이상 클라우드 서비스 개발자로 일했기 때문에 기술적 백그라운드는 어느 정도 있어. 이 프로젝트는 AI의 도움을 받아서 제품 디자인, 브랜딩, 개발, 검증, 배포를 진행해보고 싶어. MVP 출시를 위해서 해야 할 일들과 각 일들을 어떤 도구를 사용해서 어떻게 진행하면 좋을지 상세하게 리서치하고 보고해 줘.”
아이디어를 다듬고, 시장을 분석하고, 제품의 큰 그림을 그리는 작업은 AI와 대화를 주고받으며 빠르게 진행되고 자료가 쌓여갔지만 AI가 대신해줄 수 없는 중요한 문제가 하나 있었다. 어떤 도구를 사용해서 어떤 방식으로 제품 개발을 진행할 것인가? 시장에 나와있는 수많은 서비스와 다양한 개발 방식을 하나하나 모두 시도해볼 수도 없는 노릇이고, AI가 대중적으로 많이 쓰이는 옵션들을 조사해다 주었지만 그 중에 무엇을 선택할지는 결국 나의 취향과 가치 판단의 문제였다.
고민 끝에 세운 세 가지 원칙과 그에 따른 선택은 다음과 같다.
특정 도구나 플랫폼에 종속되지 않는다.
나중에 모종의 이유로 다른 AI 서비스나 개발 스택을 사용하게 되더라도 프로젝트를 정상적으로 이어갈 수 있어야 한다. 개인적으로 Gemini의 개발환경 보다는 ChatGPT의 Codex가 직관적이고 편안하게 느껴졌기에 ChatGPT로 개발 작업을 시작하기로 했다. 하지만 나중에 Gemini나 Claude의 성능/비용이 더 유리하다면 바꿀 수 있어야 할 것이다. 개발 스택에 사용하기로 한 외부 서비스들은 Figma, Supabase, Cloudflare 정도가 있지만 제품의 테스트 버전이 나온 다음 필요하다면 정식 출시 전에 다른 서비스로 교체할 수 있도록 제품 내부에 경계를 처음부터 확실히 두기로 했다.
직접 코드를 작성하지 않는다.
나의 개발자 경력과 배경을 AI에게 설명하고 어떻게 코딩 작업을 진행하는 게 좋을지 상의했을 때 모두 하나같이 Cursor나 Claude Code 같은 서비스를 통해 “AI의 도움을 받되 내가 직접 코드를 컨트롤” 하는 방식을 추천했다. 재밌는 건 ChatGPT와 Gemini 모두 자사 도구보다 Cursor나 Claude Code에 더 높은 점수를 준 걸 보며 여기에 편향이 들어가지는 않았구나 생각했다. 그렇지만 나는 이번에 AI에게 전적으로 개발과 검증 과정을 맡겨보려는 심산이었다. 소프트웨어 개발 방식이 그런 방향으로 흘러가리라는 것은 거스를 수 없는 흐름이라 생각했고 AI 개발 능력이 어디까지 왔는지, 한계는 무엇인지, 더 잘하려면 무엇이 필요한지 알아보고 싶었다. 그래서 별도의 IDE나 코딩 도구를 사용하지 않고 개발 작업을 진행해보기로 했다.
제품 개발 과정을 최대한 자동화하고 나의 개입을 최소화한다.
나에게 아직 생소한 분야이고 가장 궁금한 점이기도 했다. AI를 활용하면 혼자서 어디까지 생산성을 높일 수 있을까? 내가 모든 작업을 검토하고 관여하는 방식에서 한발 더 나아가보고 싶었다. 위의 직접 코드를 작성하지 않기로 한 결정의 연장선에서 AI에게 더 많은 권한을 일임하고 나를 도와주는 역할을 넘어 마치 동료처럼 일할 수 있어야 한 사람이 여럿의 생산성을 낼 수 있을 텐데, 그러면서도 여전히 제품의 방향은 내가 명확하게 제시해주어야 원하는 수준의 결과가 나올 텐데, 그게 어느 정도까지 가능할지, 그리고 그러려면 무엇이 필요할지. 한가지 확실한 것은 프로젝트의 모든 내용과 진행과정이 체계적으로 저장소에 정리되어야 한다는 것이다. 그래야 여러 AI 에이전트가 (그리고 내가) 같은 최신 상태를 보고 동시에 작업을 진척시킬 수 있을 것이다. 익숙한 GitHub를 프로젝트 저장소로 결정했다. Git 저장소는 제품 코드와 현재 기준 및 결정 문서를 보관, Issue는 작고 범위가 명확한 실행 단위, PR은 실제 변경을 검토하는 경계로 삼았다.
큰 줄기가 잡혔지만 본격적으로 코딩 작업을 시작하려면 해야 할 일들이 남아있었다. 그간 AI와의 대화들을 바탕으로 제품 명세를 확정하고, 이를 문서화해서 Git 저장소로 옮겨오고, 개발 작업을 AI가 어떻게 진행할지 규칙을 정해야 비로소 제품 코드 첫 줄을 쓸 수 있으리라.