Claude Code 3개월의 기록: 웹, iOS, Android, TV를 지원하는 스트리밍 검색 플랫폼의 탄생과 4,000명 이상의 사용자
요약
Claude Code를 활용해 엔지니어 없이 3개월 만에 웹, 모바일, TV 앱을 포함한 OTT 검색 플랫폼을 구축한 사례를 소개합니다. 파일 기반 메모리 관리와 자동화된 검증 시스템을 통해 안정적인 운영 노하우를 공유합니다.
핵심 포인트
- CLAUDE.md 등 파일 기반 메모리를 활용해 세션 간 문맥 유지
- 단순 완료 보고가 아닌 실제 운영 환경에서의 증거 요구
- 일회성 버그 수정을 넘어 자동화된 감사 시스템 구축
- 작고 되돌릴 수 있는 단위의 프로덕션 배포 전략
- Claude를 통한 체계적인 결정 로그 및 기록 관리
지난 5월, 저는 Google이나 대부분의 서구권 앱들이 대개 틀리는 정보를 제공하는 30개 이상의 아시아 시장을 대상으로 "내 국가에서 이 영화나 쇼를 어디서 볼 수 있는가"라는 질문에 답해주는 무료 도구인 OTTASIA를 만들기 시작했습니다. 모든 것은 Claude Code 세션을 통해 구축되었습니다. 저는 직접 코드를 작성하지 않기 때문에, Claude가 사실상 저의 전체 엔지니어링 팀 역할을 하고 있습니다.
3개월 후 실제로 운영 중인 결과물은 다음과 같습니다:
- ottasia.com의 웹 앱 (Next.js, Netlify, Supabase, Cloudflare)
- iOS 및 Android 앱 (Expo), 6월부터 양쪽 스토어에 출시됨
- Android TV 및 Apple TV 앱, 그리고 Samsung 및 LG TV 앱 제출 후 검토 중
- 로컬 스트리밍 카탈로그의 야간 스크래핑(scraping), 알림 및 스모크 테스트(smoke tests)를 수행하는 약 40개의 GitHub Actions
- WhatsApp 봇, Discord 봇, 그리고 AI 어시스턴트가 데이터를 쿼리(query)할 수 있도록 npm에 배포된 MCP 서버
- 4,000명 이상의 등록 사용자, 하루 약 2,000개의 세션
누군가에게 도움이 될 수 있도록, 실제로 차이를 만들어낸 요소들을 공유합니다:
- 세션 간 파일 기반 메모리 (File-based memory). 모든 저장소(repo)에는 CLAUDE.md (안정적인 사실), STATE.md (진행 중인 작업), NEXT.md (다음 세션에서 가장 먼저 할 일) 및 날짜가 기록된 저널이 있습니다. 세션은 종료되거나 제한에 도달할 수 있지만, 파일은 살아남습니다. 다음 세션은 이 파일들을 읽고 아무 일도 없었던 것처럼 작업을 이어갑니다. 이를 통해 "모든 것을 다시 설명해야 하는" 비용을 완전히 없앴습니다.
- "완료됨"이 아닌 증거를 요구하세요. 초기에 가장 컸던 좌절은 Claude가 모든 것이 작동한다고 말했는데, 사용자가 깨진 페이지를 발견하는 것이었습니다. 해결책은 Claude가 실제 운영(production) 사이트에서 검증하고 저에게 증거를 보여주기 전까지는 아무것도 출시된 것으로 간주하지 않는다는 규칙을 세운 것이었습니다. 이것이 모든 것의 품질을 바꾸어 놓았습니다.
- 일회성 버그를 자동화 시스템으로 만드세요. 특정 국가에서 스트리밍 서비스 타일이 조용히 사라졌을 때, 저는 단순히 수정하는 대신 "이런 일이 다시 조용히 발생하지 않도록 하려면 어떻게 해야 할까?"라고 물었습니다. Claude는 모든 시장에 대해 최신 데이터로 실제 운영 코드를 실행하고, 무언가 누락되면 저에게 이메일을 보내는 주간 감사(audit) 시스템을 구축했습니다. 이제 사용자가 발견하기 전에 시스템이 먼저 찾아냅니다.
- 라이브 사이트에서 작고 되돌릴 수 있는 단위로 작업하세요. 실제 사용자들이 매일 접속하고 있으며, 별도의 스테이징(staging) 환경은 없습니다.
따라서 변경 사항은 작은 번들(bundles) 단위로 배포되어 프로덕션(production) 환경에서 검증되며, 롤백(roll back)이 용이합니다. 지루하게 들릴 수도 있지만, 이것이 지난 3개월 동안 매일 배포를 진행하면서도 장애(incidents)가 거의 발생하지 않았던 이유입니다.
- Claude는 자체적인 기록을 유지합니다. 세션 저널(session journals), 결정 로그(decision logs), 소셜 포스트 트래커(tracker for social posts), 그리고 모든 데이터베이스 변경에 대한 마이그레이션 파일(migration files)까지 관리합니다. 어제 제가 Claude에게 우리가 놓치고 있는 도구가 있다고 지적했을 때(실제로는 놓치고 있지 않았고, Claude가 몇 주 전에 이미 배포한 상태였습니다), git 히스토리가 단 몇 초 만에 이를 확인해 주었습니다. 이러한 기록 관리(record-keeping) 덕분에 엔지니어가 아닌 사람도 이 프로젝트를 운영할 수 있습니다.
워크플로우(workflow), 비용, 또는 프로젝트가 실패했던 부분(여러 차례 있었습니다)에 대해 궁금한 점이 있다면 기꺼이 답변해 드리겠습니다.
https://preview.redd.it/5l8wyg1tnthh1.png?width=1132&format=png&auto=webp&s=2f134738741495c5b3b320d62cd0ecd2d886e82b
submitted by /u/No_Being_2765
[link] [comments]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/ClaudeAI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기