4주차: 낮잠 자면서 10개 에이전트 마케팅 플랫폼 구축하기
4주 만에 멀티테넌트 아키텍처와 3개의 AI 마케팅 에이전트를 구축했습니다—출시에 7개월이 걸린 이전 제품의 첫 달 작업량과 같습니다.
업데이트 (2025년 11월): STRAŦUM이 이제 라이브입니다! "4주 스피드런"으로 시작한 것이 완전한 9개 에이전트 마케팅 인텔리전스 애플리케이션으로 발전했습니다. 전체 출시 이야기를 읽어보세요: STRAŦUM: 75일 만에 혼자 만든 9개 에이전트 마케팅 애플리케이션
지금 시도해 보세요: stratum.chandlernguyen.com에서 (Private Alpha - 초대 전용 접근)
6일. DIALØGUE를 출시한 후 다음 프로젝트를 시작하기까지 기다린 시간입니다.
"팟캐스트 생성기를 마케팅하고 사용자를 확보하고 버그를 수정해야 하는 것 아닌가요?"라고 생각하실 수 있습니다. 그리고 완전히 맞습니다. 하지만 이런 사정이 있습니다 – 새로운 AI 도구들로 얼마나 빠르고 멀리 갈 수 있는지 보고 싶었습니다. 스피드런이라 부르세요, 과대망상이라 부르세요, Claude Code와 Gemini 2.5 Pro가 개발을 다시 재미있게 만들 때 일어나는 일이라 부르세요.
불가능해야 할 타임라인
관점을 잡아드리겠습니다:
- DIALØGUE: 첫 코드 줄부터 출시까지 6-7개월
- 마케팅 스위트: 4주차에 이미 3개의 작동하는 AI 에이전트가 서로 소통
git 히스토리를 보면, 첫째 날이 끝날 무렵 이미:
- 조직 → 클라이언트 → 캠페인 계층 구조의 멀티테넌트 아키텍처
- 인증이 있는 초기 React 프론트엔드
- 다양한 지역을 커버하는 11개의 다른 프레임워크를 사용하는 작동하는 비즈니스 전략 에이전트. 이 프레임워크들은 최고의 글로벌/지역 컨설팅 회사에서 사용됩니다. 예를 들어:
- Row Level Security가 있는 Supabase 통합
이것은 DIALØGUE를 만든 첫 _달_보다 더 많은 성과입니다.
계속 달리게 하는 숫자들
지난 4주간의 빠른 지표:
- 배포된 기능: 3개 완전한 에이전트 + 멀티테넌트 아키텍처
- 코드 줄 수: ~117,000 (Python: 39k, TypeScript: 58k, SQL: 20k, Javascript: 나머지)
- 데이터베이스 테이블: 39개 (각각 특정 목적을 가짐 - 나중에 자세히)
- Git 커밋: 232 (약 26일간)
- 소비한 커피: 묻지 마세요
이 프로젝트가 실제로 10배 더 어려운 이유
DIALØGUE는 복잡했죠, 물론입니다. AWS Lambda 함수, Step Functions, 결국 모든 것을 Google Cloud Run으로 마이그레이션. 하지만 근본적으로 단일 목적 도구였습니다: 팟캐스트 생성. 하나의 사용자 유형. 하나의 워크플로우. 하나의 해피 패스.
이 마케팅 스위트? 무슨 뜻인지 보여드리겠습니다:
실제 시나리오: 에이전시가 Nike와 Adidas를 (가상으로) 관리합니다. 에이전시의 전략가가 비즈니스 전략 에이전트를 사용하여 Nike의 포지션을 분석합니다. 그 분석은 자동으로 strategy_outputs 테이블에 저장됩니다. 페르소나 에이전트로 전환하면, Nike의 전략을 가져와 페르소나 개발에 활용합니다 – 하지만 Adidas 데이터는 볼 수 없습니다. 한편, brand_guidelines 테이블의 Nike 브랜드 가이드라인은 콘텐츠 에이전트까지 계단식으로 내려가, 모든 콘텐츠가 Adidas가 아닌 Nike의 음성을 사용하도록 보장합니다.
이를 위해 필요한 것:
- SME vs AGENCY 유형의 organizations 테이블
- clients 테이블 (에이전시 전용)
- 조직 AND 클라이언트 모두에 외래 키가 있는 campaigns
- 캠페인 수준 격리가 있는 strategy_outputs
- 계층적 상속이 있는 brand_guidelines
- 모든 단일 테이블에 Row Level Security 정책
이것은 하나의 워크플로우입니다. 이제 10개 에이전트에 곱하세요, 각각 고유한 데이터 요구사항이 있습니다.
실제로 작동하는 것 (그리고 아직 혼돈인 것)
작동하는 것 (3개 라이브 에이전트 + 비즈니스 인텔리전스)
비즈니스 전략 에이전트: 일반적인 SWOT 생성기가 아닙니다. 11개의 포괄적 프레임워크를 적용합니다:
- SWOT 분석
- Porter's Five Forces (경쟁 경쟁, 공급자 교섭력, 구매자 교섭력, 대체 위협, 신규 진입 위협)
- Business Model Canvas (비즈니스 디자인의 9개 구성 요소)
- ICE 우선순위화 (영향, 확신, 용이성 점수)
- BCG Growth-Share Matrix (Stars, Cash Cows, Question Marks, Dogs)
- VRIO Framework (가치, 희소성, 모방 불가능성, 조직)
- Three Horizons Model (현재 핵심, 부상하는 기회, 미래 베팅)
- Blue Ocean Strategy (제거, 감소, 증가, 창출 그리드)
- McKinsey 7S Framework (전략, 구조, 시스템, 공유 가치, 기술, 스타일, 직원)
- OKRs Framework (목표와 핵심 결과)
- Jobs to Be Done (고객 작업, 고통, 이득)
각 프레임워크는 다른 에이전트에 공급되는 구조화된 데이터를 생성합니다. SWOT 분석을 실행하면 "기회"가 자동으로 마케팅 전략 에이전트의 성장 전술에 반영됩니다.
페르소나 에이전트: 15개 이상의 속성이 있는 상세한 고객 페르소나를 생성합니다 AND – 여기가 놀라운 부분 – 인터뷰할 수 있습니다. 실제 대화:
당신: "현재 프로젝트 관리 도구에서 가장 좌절스러운 것은?"
페르소나 (테크 스타트업 창업자): "끊임없는 컨텍스트 전환이요. Slack을 확인하고, Asana를 확인하고, 분석 대시보드를 확인해야 해요. 무엇에 주의를 기울여야 하는지 파악할 때쯤 30분을 잃어버렸어요."
각 인터뷰 응답은 persona_interactions 히스토리에서 가져오기 때문에 더 스마트해집니다. 사용자들이 이 인터뷰에 20-30분을 보내고 있습니다. 한 사용자가 "포커스 그룹 같지만 즉각적이고 실제로 유용하다"고 말했습니다.
마케팅 전략 에이전트: 이것이 다리 역할을 합니다. 비즈니스 전략을 가져오고, 페르소나를 이해하며, 실행 가능한 시장 진입 계획을 만듭니다. "소셜 미디어를 사용하라"고만 하는 것이 아닙니다 – 특정 페르소나를 특정 채널에 특정 메시지와 매핑합니다. 부트스트랩 스타트업을 위한 무예산 전술. SME를 위한 70-20-10 예산 배분. 기업을 위한 멀티채널 오케스트레이션.
비즈니스 인텔리전스 (숨겨진 영웅): 모든 에이전트와의 대화가 자동으로 인사이트를 추출하고 조직 지식을 구축합니다. 전략 에이전트에게 유럽 시장 진출에 대해 이야기하면? 그 인사이트가 ai_insights 테이블에 저장됩니다. 다음 주에 콘텐츠 에이전트를 사용할 때 이미 유럽 확장 계획을 알고 있습니다. 다시 설명할 필요 없습니다. 컨텍스트가 손실되지 않습니다.
아직 구축 중인 것 (나머지 7개 에이전트)
캠페인 실행 에이전트: 여기서 무서워집니다. Google Ads, Meta, LinkedIn, TikTok의 API 키를 어떻게 안전하게 저장할까요? 현재 계획은 모든 API 호출에 대한 감사 로그가 있는 platform_credentials 테이블의 암호화된 저장을 포함합니다. 하지만 권한 모델이 밤잠을 설치게 합니다.
분석 에이전트: 먼저 어떤 API를 통합할까요? Google Analytics 4? Meta 광고? LinkedIn Analytics? 도전은 데이터를 가져오는 것뿐만 아니라 플랫폼 간에 정규화하여 사과 대 사과를 비교할 수 있게 하는 것입니다.
ROI 및 예산 에이전트: 다른 기여 모델을 가진 여러 플랫폼에서의 실시간 추적. Google의 데이터 기반 기여와 Meta의 모델을 어떻게 조정할까요? 아직 파악하고 있습니다.
나머지 4개 에이전트: Quick Wins (즉각적 기회 찾기), Competitive Intelligence (윤리적 경쟁 분석), Client Success (유지 전략), Content Agent (실제로 이미 작동하지만 다듬기가 필요함).
밤잠을 설치게 하는 어려운 질문들
- 브랜드 이름: 이 애플리케이션을 어떻게 부를까요? :P 좋은 제안이 있으시면 아래에 알려주세요!
- API 보안: 보안 악몽이 되지 않고 여러 광고 플랫폼의 API 키를 어떻게 처리할까요?
- 통합된 경험: 10개의 특화된 에이전트가 덕테이프로 붙인 10개의 다른 도구가 아닌 하나의 통합 플랫폼처럼 느끼게 하려면?
- 그리고 더 많은 것들 :)
아키텍처 진화: 고통에서 배우기
DIALØGUE에서 경합 조건에 대해 어렵게 배웠습니다. 3분 가입 버그 기억하시나요? 새 사용자가 auth 트리거와 Edge Function이 같은 사용자 레코드를 만들기 위해 경쟁하고 있어서 영원히 기다렸습니다.
이번에는 첫날부터 제대로 만들었습니다. 며칠 전의 실제 예시:
문제: 마케팅 전략 에이전트가 어떤 페르소나가 존재하는지, 어떤 전략이 만들어졌는지, 어떤 브랜드 가이드라인을 따를지 알아야 합니다 – 모두 완전한 데이터 격리를 유지하면서.
솔루션: 각 에이전트가 여러 테이블을 쿼리하는 대신(느리고, 복잡하고, 에러 발생이 쉬운), 단일 진실 소스 역할을 하는 Enterprise Context Service를 구축했습니다:
// 이전: 각 에이전트가 여러 쿼리 수행
const personas = await supabase.from('personas').select()
const strategies = await supabase.from('strategies').select()
const guidelines = await supabase.from('brand_guidelines').select()
// 이후: 하나의 지능적 서비스
const context = await getEnterpriseContext(campaignId)
// 필터링되고, 캐시되고, 적절한 범위의 데이터를 45ms에 반환
결과? 콘텐츠 에이전트가 브랜드 음성 가이드라인에 즉시 접근하고, 어떤 페르소나를 위해 작성할지 보고, 마케팅 전략을 이해할 수 있습니다 – 모두 데이터 경계를 존중하는 한 번의 호출로.
속도 차이는 진짜입니다
9월 14일은 미쳤습니다. 타임스탬프가 있는 실제 git 로그를 보세요:
08:04 AM - 프론트엔드를 표준화된 API 클라이언트로 마이그레이션
08:19 AM - API 표준화 완료 (100% 커버리지)
11:34 AM - Phase 1: 중앙집중 라우트 구성
(더 이상 하드코딩된 URL 없음)
1:00 PM - Phase 2: 10개 에이전트 페이지 모두 표준화
(/agents/strategy/:campaignId 같은 일관된 URL 패턴)
1:10 PM - Phase 3.1: 핵심 컨텍스트 관리
(workspace → client → campaign 계층이 URL에)
4:31 PM - Phase 3.2: 네비게이션 컴포넌트가 컨텍스트 인식
(브레드크럼이 "Nike › Summer Campaign › Strategy Agent" 표시)
4:38 PM - Phase 3.3: 모든 에이전트가 컨텍스트 시스템과 통합
(캠페인 전환 시 위치 보존)
5:03 PM - Phase 3.4: 테스트 및 폴리시
(코드 스플리팅으로 92% 번들 크기 감소)
6개의 주요 아키텍처 개선. URL 시스템만으로도 코드베이스 전체의 40개 이상의 파일을 건드렸습니다. AI 지원 없이는 아마 몇 가지 깨진 기능과 함께 일주일간의 리팩토링이었을 것입니다.
그리고 실제로 대부분의 시간을 컴퓨터 앞에 있지 않았습니다 :D
일요일이라 교회에 가고, 슈퍼마켓에 가고, 해산물로 풀 점심을 먹고, 낮잠을 자고, Costco에 가고, iPad로 게임을 했습니다. 이것이 AI 지원 코딩 덕분에 가능합니다. Claude Code와 Gemini CLI 감사합니다! 다음은 URL 표준화가 사용자에게 실제로 의미하는 것입니다:
// 이전: 에이전트 간 전환 시 컨텍스트 손실
"/strategy" // 어떤 캠페인? 어떤 클라이언트? 누가 알겠어?
// 이후: URL에 컨텍스트 보존
"/workspace/nike/campaign/summer-2025/agents/strategy"
// 북마크하고, 공유하고, 새로고침해도 - 컨텍스트 유지
DIALØGUE가 막 출시되었는데 왜 이것을 만드나?
할 수 있으니까요. 도구가 그만큼 좋아졌으니까요. 광고에서 20년 이상을 보낸 후, 마침내 항상 사용하고 싶었던 마케팅 플랫폼을 만들 기술이 생겼으니까요.
하지만 주로? 도메인 전문성을 현대 AI 도구와 결합할 때 무엇이 가능한지 기록하고 싶기 때문입니다. 이것은 개발자를 대체하는 것이 아닙니다 – 증폭하는 것입니다. 4주 전에는 이렇게 복잡한 것을 만들려면 팀이 필요했을 것입니다. 이제는 결단력, 좋은 AI 어시스턴트, 위험한 양의 카페인이 필요합니다. (하지만 나중에 Swift를 모르면서 네이티브 iOS 앱을 구축할 때 발견했듯이, AI가 약 60%까지 데려다줍니다 — 나머지 40%의 취향과 폴리시는 여전히 완전히 인간의 것입니다.)
다음은?
10월/11월 알파 출시를 목표로 합니다. 해야 할 것들:
- 나머지 7개 에이전트 완성
- 캠페인 기획 인터페이스 구축
- 광고 플랫폼 통합 보안 해결
- 에이전시 UI/흐름이 합리적인지 확인
- 실제 사용자와 모든 것 테스트 (무섭네요)
분석 에이전트만 해도 Google Analytics, 광고 플랫폼, 내부 지표의 데이터를 통합 대시보드로 집계해야 합니다. ROI 에이전트는 여러 플랫폼에서 거의 실시간 예산 추적이 필요합니다.
각각이 그 자체로 프로젝트입니다. 하지만 이 속도라면? 실제로 가능할 것 같기도???
같이 따라오고 싶으시면, 구축하면서 더 많은 업데이트를 공유하겠습니다.
공개적으로 구축한다는 것은 승리와 함께 혼돈도 공유하는 것입니다. 지금은 주로 혼돈입니다. 하지만 생산적인 혼돈이고, 그것이 중요합니다.
한 달 후에 다시 확인하세요. 잘 되면, 전체 마케팅 부서의 업무를 수행하는 AI 에이전트가 있는 마케팅 플랫폼을 테스트할 수 있을 것입니다. 잘 안 되면... 적어도 블로그 글은 재미있을 것입니다. :P





