프로젝트 개요
목록 | 내용 |
---|---|
프로젝트명 | 헬스케어 큐레이션 자동화 서비스 |
개발기간 | 2022년 7월 - 2022년 10월 (3개월) |
역할 | 풀스택 개발자 (기획, 개발, 배포, 운영) |
기여도 | 90% (단독 개발) |
개발환경 | AWS Lightsail, 채널톡 API, Flask |
비즈니스 배경 및 문제 정의
핵심과제
개인 맞춤형 건강관리 제품 추천 자동화를 통한 상담 전환율 혁신
기존 상담 프로세스:
- 1단계: 고객이 사이트 확인
- 2단계: 직접 문의 (채널톡 상담)
- 3단계: CS 담당자가 수동으로 제품 추천 및 상담
기존 프로세스 문제점:
- 낮은 전환율: 사이트 확인 → 직접 문의 방식으로 상담 전환율 2%
- 진입 장벽: 제품 정보 부족으로 문의 주저
- 상담 비효율: CS 담당자가 매번 처음부터 제품 설명 필요
- 개인화 부족: 고객별 맞춤 추천 없이 일반적 상담만 제공 (서포트봇)
목표 고객층:
- 건강관리에 관심 있는 성인
- 개인 맞춤형 솔루션을 원하는 고객
- 상담을 통한 구매 결정을 선호하는 고객
핵심 성과 지표
지표 | 달성값 | 측정 방법 |
---|---|---|
상담 전환율 | 2% → 19% (8.5배 증가) | 채널톡 메시지 보관함 데이터 기반 측정 |
일일 처리량 | 8-15건 | 평균 큐레이션 서비스 제공 |
응답 시간 | ≤1초 | 설문 완료 즉시 추천 제공 |
기술 스택 및 아키텍처
핵심 기술 스택
# 주요 기술 구성
Backend : Python, Flask
API Integration: 채널톡 API, Webhook
Cloud : AWS Lightsail
Data Format : JSON 기반 설문 데이터 처리
Version Ctrl: Git
시스템 아키텍처
graph TD A[고객 설문 참여] --> B[채널톡 Webhook] B --> C{서포트봇 ID 확인} C -->|일치| D[설문 데이터 GET] C -->|불일치| E[무시] D --> F[목표별 분류] F --> G[규칙 기반 매칭] G --> H[맞춤 제품 추천] H --> I[채널톡 자동 응답] I --> J[CS 상담 전환] subgraph "AWS Lightsail" B D F G H end subgraph "추천 로직" K[감량 목표] L[유지 목표] M[증량 목표] F --> K F --> L F --> M end
주요 기술적 도전과 해결책
1. 채널톡 서포트봇 이벤트 분리
도전과제
- 문제: 모든 서포트봇에 큐레이션 로직이 반응하여 불필요한 응답 발생
- 복잡성: 채널톡에서 여러 서포트봇이 동시 운영되는 환경
- 요구사항: 큐레이션 전용 서포트봇에만 선택적으로 반응하는 시스템
문제 해결 과정
1단계: Webhook 이벤트 분석
- 서포트봇 ID를 확인하고 해당 이벤트 처리
2단계: ID 필터링 시스템
- 이벤트 여부 logging 및 큐레이션 서포트봇 이외 무시 처리량
3단계: 선택적 응답 메커니즘
- 정확한 매칭: 큐레이션 전용 서포트봇 ID와 정확히 일치하는 경우만 처리
- 무시 로직: 다른 봇의 이벤트는 로그만 남기고 무시
- 안전 장치: 봇 ID 누락 시 기본적으로 무시 처리
성과
- 정확한 분리: 큐레이션 요청에만 선택적 반응으로 시스템 정확성 확보
- 리소스 효율: 불필요한 처리 제거로 서버 리소스 절약
- 운영 안정성: 다른 봇과의 간섭 없이 독립적 운영
2. 개인 맞춤형 추천 로직 설계
도전과제
- 복잡성: 복잡한 AI 알고리즘 없이 실용적인 제품 추천 시스템 필요
- 개인화: 고객별 건강상태와 목표에 맞는 차별화된 추천
- 실시간 처리: 설문 완료 즉시 추천 결과 제공 요구
문제 해결 과정
1단계: 설문 기반 고객 분류 시스템 예시
def analyze_customer_survey(survey_data):
"""설문 데이터 기반 고객 분석"""
# 5개 영역 평가
health_status = {
"건강상태": survey_data.get('health_condition'),
"식습관": survey_data.get('eating_habits'),
"운동량": survey_data.get('exercise_level'),
"음수량": survey_data.get('water_intake'),
"활동량": survey_data.get('activity_level')
}
# 목표 분류
goal = survey_data.get('health_goal')
return {
"health_profile": health_status,
"primary_goal": goal,
"recommendation_category": classify_by_goal(goal)
}
def classify_by_goal(goal):
"""목표별 카테고리 분류"""
if goal in ['체중감량', '다이어트', '살빼기']:
return "다이어트"
elif goal in ['체중유지', '건강관리', '컨디션']:
return "유지"
elif goal in ['체중증가', '근육증가', '벌크업']:
return "증량"
else:
return "유지" # 기본값
2단계: 목표별 제품 매칭 알고리즘
# 목표별 제품 데이터베이스
PRODUCT_DATABASE = {
"다이어트": {
"primary_products": [
{
"name": "다이어트 도시락",
"description": "저칼로리 고단백 도시락",
"benefits": ["체지방 감소", "근육량 유지"]
},
...
]
}
}
3단계: 규칙 기반 실시간 매칭
def generate_personalized_recommendation(survey_data):
"""개인 맞춤형 추천 생성예시"""
# 고객 분석
customer_analysis = analyze_customer_survey(survey_data)
# 제품 추천
recommendations = recommend_products_by_goal(
customer_analysis['recommendation_category'],
customer_analysis['health_profile']
)
# 추천 메시지 생성
message = create_recommendation_message(
customer_analysis['primary_goal'],
recommendations['recommended_products']
)
return {
"message": message,
"products": recommendations['recommended_products'],
"goal": customer_analysis['primary_goal']
}
def create_recommendation_message(goal, products):
"""추천 메시지 생성 예시"""
intro = f"{goal} 목표에 맞는 맞춤 제품을 추천드립니다!\n\n"
product_list = ""
for i, product in enumerate(products, 1):
product_list += f"{i}. **{product['name']}**\n"
product_list += f" {product['description']}\n"
outro = "상세한 상담을 원하시면 전문 상담사와 연결해드릴까요?"
return intro + product_list + outro
성과
- 실용적 개인화: 복잡한 AI 없이도 효과적인 맞춤 추천 시스템 구축
- 즉시 응답: 설문 완료 즉시 ≤1초 내 추천 결과 제공
- 높은 전환율: 8.5배 상담 전환율 향상으로 비즈니스 가치 입증
3. 기존 상담 프로세스 개선
도전과제
- 낮은 진입률: “사이트 확인 → 직접 문의” 방식의 2% 전환율
- 정보 부족: 고객이 무엇을 문의해야 할지 모르는 상황
- 상담 비효율: CS 담당자가 매번 기본 정보부터 설명해야 하는 부담
설문 참여 유도 메시지 발생: 사용자가 웹에 방문하여 바로 설문조사 및 큐레이션을 받을 수 있도록
def create_survey_invitation():
"""설문 참여 유도 메시지"""
return """
건강관리 맞춤 솔루션 찾기
안녕하세요! 개인 맞춤형 건강관리 제품을 추천해드리는
무료 헬스 큐레이션 서비스입니다.
2분 간단 설문으로 내게 딱 맞는 제품 찾기
전문 상담사의 1:1 맞춤 상담
목표 달성을 위한 체계적 가이드
"""
# 설문 설계 원칙
SURVEY_DESIGN_PRINCIPLES = {
"간단함": "2분 내 완료 가능한 핵심 질문만",
"목적성": "추천에 직접적으로 필요한 정보만 수집",
"개인화": "응답에 따라 동적으로 다음 질문 결정"
}
성과
- 자연스러운 유도: 설문조사를 통한 고객 참여 증대로 8.5배 전환율 향상
- 상담 효율성: 제품 추천 사전 완료로 CS 담당자 상담 시간 단축
- 상담 품질: 배송/안내 중심 고품질 상담으로 전환하여 만족도 향상
4. AWS Lightsail 기반 안정적 서비스 운영
도전과제
- 24시간 가용성: 언제든 고객이 설문에 참여할 수 있는 무중단 서비스
- 비용 효율성: 스타트업 환경에서 최소 비용으로 안정적 서비스 운영
- 확장성: 서비스 성장에 따른 트래픽 증가 대응
문제 해결 과정
1단계: AWS Lightsail 선택
2단계: Flask를 통한 외부 서비스 의존성 최소화
성과
- 99.9% 가동률: 24시간 무중단 서비스로 안정적 운영
- 비용 효율성: EC2 대비 70% 비용 절약으로 스타트업 환경에 최적화
성능 평가 및 검증
전환율 성과 측정
- Before: 2% (사이트 확인 → 직접 문의)
- After: 19% (설문 → 추천 → 상담 연결)
- 측정 방법: 채널톡 메시지 보관함 데이터 기반 정량적 분석
서비스 운영 지표
- 일일 처리량: 8-15건 큐레이션 서비스 제공
- 응답 시간: ≤1초 (설문 완료 즉시 추천 제공)
- 비용 효율성: 월 $3.50로 EC2 대비 70% 절약
고객 만족도
- 참여 완료율: 설문 시작 고객의 95% 완료
- 상담 연결률: 추천 받은 고객의 85% 상담 진행
- 재참여율: 30% 고객이 추가 상담 요청
비즈니스 임팩트 및 성과
마케팅 효율성 혁신
- 전환율 8.5배 향상: 2% → 19%로 상담 전환율 대폭 개선
- 고객 경험 개선: 설문 → 큐레이션 → 상담의 자연스러운 플로우 구축
- 진입 장벽 해소: 무엇을 문의할지 모르는 고객에게 명확한 가이드 제공
운영 효율성 향상
- 상담 효율성: CS 담당자 상담 시간 단축 (제품 추천 사전 완료)
- 상담 품질: 배송/가격/사용법 중심의 고품질 상담으로 전환
- 고객 데이터: 체계적인 고객 선호도 및 건강 정보 수집
기술적 가치 창출
- 비용 효율성: AWS Lightsail로 최소 비용 운영 (월 $3.50)
- 확장성: 트래픽 증가 시 즉시 대응 가능한 아키텍처
- 안정성: 24시간 무중단 서비스로 고객 신뢰도 확보
서비스 확장 및 발전 방향
현재 한계점 분석
- 구매 전환율 미측정: 상담 전환율만 측정, 최종 구매까지의 데이터 부족
- 동시 접속 미고려: 당시 CS 지식 부족으로 동시 접속 처리 로직 미구현
- 개인화 수준: 목표 외 개인 특성을 반영한 세밀한 추천 시스템 미적용
고도화 방안
- 구매 전환 추적: 상담 → 구매까지 전체 퍼널 분석 시스템
- AI 개인화: 머신러닝 기반 고도화된 개인 맞춤 추천
- 멀티 채널: 카카오톡, 네이버 톡톡 등 다중 채널 확장
- 실시간 분석: 고객 행동 패턴 기반 실시간 최적화
기술적 학습 및 성장
풀스택 개발 역량
- Backend API: Flask 기반 Webhook 처리 및 실시간 응답 시스템
- 외부 API 연동: 채널톡 API 활용한 양방향 통신 구현
- 클라우드 운영: AWS Lightsail 기반 24시간 무중단 서비스 운영
- 데이터 처리: JSON 기반 설문 데이터 처리 및 추천 로직 구현
비즈니스 로직 설계
- 고객 여정 설계: 설문 → 추천 → 상담의 자연스러운 플로우 구축
- 개인화 알고리즘: 복잡한 AI 없이 실용적인 규칙 기반 추천 시스템
- 서비스 운영: 실시간 모니터링 및 안정성 확보
마케팅 자동화 이해
- 고객 세그멘테이션: 건강 목표 기반 고객 분류 및 차별화 전략
- 개인화 마케팅: 1:1 맞춤 메시지 및 제품 추천 자동화
- 데이터 기반 의사결정: 정량적 성과 측정을 통한 서비스 개선
프로젝트 관리 및 협업
단독 개발 프로세스
- MVP 설계: 핵심 기능 우선 개발로 빠른 가치 검증
- 반복적 개선: 실제 운영 데이터 기반 지속적 최적화
- 성과 측정: 채널톡 데이터 활용한 정량적 성과 추적
- 사용자 피드백: CS 담당자 및 고객 피드백 기반 기능 개선
결론 및 시사점
기술적 가치
- 실용적 자동화: 복잡한 AI 없이도 8.5배 성과 향상을 달성한 실용적 접근
- 비용 효율적 운영: 최소 비용으로 최대 효과를 내는 기술 스택 선택
- 외부 서비스 활용: 채널톡 DB 활용으로 별도 인프라 구축 비용 절약
비즈니스 가치
- 전환율 혁신: 8.5배 상담 전환율 향상으로 명확한 ROI 달성
- 고객 경험 개선: 맞춤형 추천을 통한 고객 만족도 및 참여도 향상
- 확장 가능성: 검증된 모델을 다른 산업/채널로 확장 가능
개발자로서의 성장
- 비즈니스 임팩트: 기술적 완성도보다 실제 비즈니스 가치 창출에 집중
- 빠른 실행: MVP 접근법으로 빠른 검증 및 지속적 개선 역량
- 실용적 해결: 완벽한 기술보다 실제 작동하는 솔루션 개발 능력
마케팅 기술 융합
- 고객 여정 최적화: 기술을 활용한 고객 경험 설계 및 전환율 개선
- 개인화 서비스: 규칙 기반 개인화로도 충분한 비즈니스 가치 창출 가능
- 자동화의 가치: 단순 반복 업무 자동화를 통한 고부가가치 업무 집중
- 스타트업 기술 전략: 제한된 자원에서 최대 효과를 내는 기술 선택의 중요성