Part 0. 옷 잘 입기는 너무 힘들다
패션은 늘 어렵고 나에게 찰떡같은 코디를 찾는 것은 정말 힘들다..
특히 옷에 많은 시간과 노력을 쏟기 어려운 사람들에게는 더욱 그렇다. 매일 아침 옷장 앞에서 ‘오늘 뭐 입지?’를 고민하는 2030 직장인들, 패션 트렌드를 따라가고 싶지만 수많은 쇼핑몰을 헤매는 것이 부담스러운 이들의 공통적인 고충은 ‘결정의 피로감’이라고 생각한다.
옷을 찾고 검색하고 구매하는 일련의 과정들이 힘들지 않을까..?
이 문제의 본질을 생각해보면 이들은 옷을 못 입고 싶은 것이 아니라, ‘잘 입는 법’을 찾는 과정이 너무 복잡하고 소모적이라 느끼지 않을까 싶다. 유튜브, 인스타를 통해 수십개의 코디를 보고 마음에 드는 코디를 찾더라도, 나에게 잘 맞는 핏인지 체크해야하고, 내가 현재 가지고 있는 옷들과의 조합이 괜찮은지도 고민해야한다. 이러한 경험들이 옷을 사는 행위를 행복한 고민이 아니라 힘을 내서 고민하고 결정해야하는 ‘숙제’처럼 만들었다.
누구나 패션피플이 될 수 있는 세상을 만든다
‘어떻게 더 많은 옷을 보여줄까?’가 아니라 ‘어떻게 하면 편하게 고민없이 옷 잘입는 사람을 만들어줄 수 있을까?’에 집중했다. 비전은 명확하다. 누구나 패션피플이 될 수 있는 세상을 만든다
고민의 총량 줄이기
아래에서 정의한 타깃 사용자 IT 개발자 희성(27세), 마케터 최홍(25세), 직장인 민정(29세)은 패션 고관여층이 아니다. 이들은 ‘패션피플’이 되기보다 그저 ‘옷 잘 입는 사람’처럼 보이길 원한다. 즉, 최소한의 노력으로 최대한의 스타일링 효과를 얻고 싶은, 효율성을 중시하는 세대다.
기존 패션 플랫폼들은 이들에게 너무 많은 선택지를 던져준다. 수많은 상품 카테고리, 필터, 정렬 옵션은 오히려 이들에게 인지적 과부하를 유발한다. 그래서 ‘바로’의 첫 번째 원칙은 ‘고민의 총량 줄이기’로 정해졌다.
Part 1. 틴더(Tinder)에서 발견한 패션의 직관성
핵심기능으로는 사용자가 가장 본능적이고 빠르게 호불호를 판단하는 인터페이스인 ‘스와이프’에 주목했다. 틴더가 사람을 만나는 행위를 직관적인 제스처로 바꿨듯, 옷을 고르는 행위를 스와이프로 진행한다면 비교적 가볍고 편하게 코디를 볼 수 있을 것이다. '바로' 서비스에서 구현한 스왑 페이지는 아래와 같다
Use Case 1 : 출근 10분 전, 희성의 스타일 발견
아침에 일어난 개발자 희성은 옷장 앞에서 고민할 시간이 없다. 그는 습관처럼 ‘바로’ 앱을 연다.화면에는 잘 차려입은 남성의 ‘룩(Look)’ 하나가 카드처럼 떠 있다. 깔끔한 네이비 니트에 베이지색 치노 팬츠, 흰색 스니커즈 조합이다.
‘나쁘지 않은데?’ 그는 카드를 오른쪽으로 스와이프한다. 즉시 다음 룩이 나타난다. 이번엔 스트라이프 셔츠에 데님 재킷을 걸친 캐주얼룩이다. ‘이건 좀 과한가.’ 그는 망설임 없이 왼쪽으로 스와이프해 넘긴다.
이렇게 몇 번의 스와이프를 반복하자, 그의 마음에 쏙 드는 ‘꾸안꾸’ 스타일의 맨투맨과 조거팬츠 코디가 나타났다. 그는 스와이프를 멈추고 카드를 탭한다.
이 스와이프 방식은 단순히 재미를 위한 장치가 아니다. 여기에는 세 가지 의도가 담겨있다.
- 하나에만 집중 : 한 번에 하나의 완성된 룩만 보여줌으로써 사용자의 시선을 분산시키지 않는다. 사용자는 개별 아이템이 아닌 전체적인 ‘느낌’과 ‘스타일’을 보고 빠르게 판단할 수 있다
- 결정의 단순화 : ‘좋아요(Like)’ 혹은 ‘별로(Dislike)’. 선택지를 두 개로 줄여 결정에 드는 에너지를 최소화한다. 매장에서 옷걸이를 빠르게 슥슥 넘겨보는 행동과 심리적으로 가장 유사하다
- 연속적인 발견 : 스와이프가 끝나면 즉시 다음 카드가 로드된다. 사용자는 흐름이 끊기지 않는 상태에서 계속해서 새로운 스타일을 탐색하며, 자신도 모르는 사이 취향 데이터를 쌓게 된다
Part 2. 발견에서 구매까지 빠르게
스타일을 발견하는 것만으로는 부족하다. 그 스타일을 ‘내 것’으로 만드는 과정 역시 직관적이어야 한다.
Use Case 2 : 최홍의 원클릭 장바구니 경험
마음에 드는 룩을 발견한 마케터 최홍은 카드를 탭하여 ‘룩 세부 정보’ 페이지로 들어간다. 화면에는 해당 코디를 구성하는 상의, 하의, 신발, 가방의 개별 상품 정보가 리스트로 나열되어 있다. 각 상품의 사진, 브랜드, 가격이 명확하게 보인다.
“상의랑 신발은 비슷한 게 있으니, 바지만 사볼까?” 그녀는 바지 상품 옆의 ‘장바구니 담기’ 버튼을 누른다. ‘장바구니에 상품이 담겼습니다’라는 토스트 메시지가 잠시 떴다 사라진다.
다시 스와이프 화면으로 돌아온 그녀는 다른 룩을 탐색하다가, 이번에는 전체 룩이 마음에 들어 ‘한 번에 담기’ 버튼을 누른다. 룩을 구성하는 모든 아이템이 즉시 장바구니에 추가된다.
쇼핑을 마친 그녀가 장바구니에 들어가자, 방금 담은 아이템들이 모두 들어와 있다. 수량과 옵션을 확인한 뒤 ‘구매하기’ 버튼을 누르자, 이미 등록된 배송지와 간편결제 정보가 나타난다. 그녀는 비밀번호 입력만으로 결제를 마친다.
이 과정의 핵심은 ‘페이지 이동 최소화’와 ‘클릭 수 최소화’다.
- 룩 기반 구매 : 사용자는 더 이상 ‘이 상의에 어떤 바지를 매치해야 하지?’를 고민할 필요가 없다. 검증된 조합을 통째로 구매하거나, 필요한 아이템만 골라 담을 수 있다.
- 원클릭 장바구니 :
look_products
테이블을 기반으로 룩을 구성하는 모든 상품을 노출하고,cart_items
에 즉시 추가하는 로직을 통해 사용자는 여러 상품 페이지를 오갈 필요가 없다.
Part 3. AI 가상 피팅으로 고민 줄이기
온라인 쇼핑의 가장 큰 단점은 사용자가 직접 옷을 입어볼 수 없어 실제로 자신에게 잘 어울리는지 판단하기 어렵다는 점이다. 구매 결정 전 이러한 불확실성은 구매를 망설이게 하고, 심지어 구매 포기로 이어지기도 한다. 따라서 구글의 나노바나나 AI 기술을 활용해 사용자가 업로드한 사진에 구매하려는 옷을 가상으로 입혀보고 직접 확인할 수 있는 기능을 쇼핑몰에 제공한다면, 이러한 고민과 불확실성을 크게 줄일 수 있을 것이다.
Use Case 3: 민정의 가상 피팅 경험
온라인 쇼핑몰에서 옷을 고르던 민정은 마음에 드는 원피스를 발견했다. 하지만 모델이 입은 사진만으로는 자신에게 어울릴지 확신이 서지 않았다. '내 체형에는 어떨까? 색상이 내 피부톤에 맞을까?' 고민하던 그녀는 상품 상세 페이지에서 'AI 가상 피팅' 버튼을 발견했다.
버튼을 누르자 "나의 사진으로 입어보기" 화면이 나타났다. 민정은 이전에 업로드해둔 자신의 전신 사진을 선택했다. AI가 몇 초 만에 그녀의 체형과 피부톤을 분석하더니, 곧이어 화면에는 그녀가 선택한 원피스를 입은 자신의 모습이 자연스럽게 합성되어 나타났다.
"생각보다 훨씬 자연스러운데?" 민정은 손가락으로 화면을 확대하고 축소하며 옷의 디테일을 확인했다. 소매 길이, 허리 라인, 전체적인 실루엣까지 세밀하게 살펴볼 수 있었다. 마음에 들지 않는 부분이 있으면 다른 사이즈나 색상으로 즉시 바꿔볼 수도 있었다.
"이 색상도 궁금한데..." 그녀는 같은 디자인의 다른 컬러 옵션들을 차례로 입어보며 비교했다. 베이지보다는 네이비가 자신에게 더 잘 어울린다는 것을 확인한 후, 망설임 없이 '장바구니 담기' 버튼을 눌렀다.
관심 있던 다른 의류들도 같은 방식으로 가상 피팅을 해본 뒤, 민정은 자신에게 잘 맞는 세 벌의 옷을 골라 결제를 완료했다. 실제로 입어보지 않았지만, 반품 걱정 없이 자신 있게 구매할 수 있었다.
1. AI 기반 실시간 가상 피팅
- 자연스러운 합성: 첨단 AI 기술로 옷이 몸에 자연스럽게 피팅되는 모습을 구현해 실제 착용감을 시각적으로 확인할 수 있다.
- 즉각적인 비교: 여러 사이즈, 색상, 스타일을 빠르게 바꿔가며 비교할 수 있어 최적의 선택을 돕는다.
2. 구매 전환율 및 고객 만족도 증대
- 구매 장벽 제거: '나한테 안 어울리면 어쩌지?'라는 불안감을 해소해 구매 결정을 빠르게 만든다.
- 반품률 감소: 구매 전 충분히 확인했기 때문에 사이즈나 스타일 불만족으로 인한 반품이 대폭 줄어든다.
- 고객 신뢰 구축: 투명하고 정확한 쇼핑 경험을 제공해 브랜드에 대한 신뢰도가 높아진다.
3. 비즈니스 임팩트
- 전환율 증가: 가상 피팅을 경험한 고객의 구매 전환율이 일반 고객 대비 높아진다.
- 객단가 상승: 여러 제품을 쉽게 시도해볼 수 있어 추가 구매가 자연스럽게 발생한다.
- 운영 비용 절감: 반품 처리 비용과 재고 관리 부담이 줄어든다.
Part 4. 스와이프는 리텐션을 높일 것.
1. 짧고 빠른 콘텐츠 소비 트렌드
현대 사용자들은 유튜브 쇼츠, 인스타그램 릴스, 틱톡과 같이 짧고 빠르게 콘텐츠를 소비하는 방식에 익숙하다. 이러한 플랫폼들은 모두 스와이프 기반의 인터랙션을 채택하고 있으며, 사용자들은 이미 이 방식에 높은 선호도를 보이고 있다. 패션 아이템 역시 시각적 판단이 우선되는 콘텐츠이므로, 스와이프를 통해 빠르게 탐색하고 선택하는 방식은 사용자들의 현재 행동 패턴과 자연스럽게 일치한다.
2. 즉각적 피드백과 낮은 인지 부담
스와이프는 사용자의 행동에 즉각적인 시각적 반응을 제공한다. 이러한 즉각적 피드백은 뇌의 보상 체계를 자극하며, 행동을 반복하게 만드는 강력한 동기가 된다. 또한 좋아요/싫어요라는 이분법적 선택을 물리적 동작으로 표현하기 때문에, 사용자는 깊이 고민하지 않고도 빠르게 결정할 수 있다. 이러한 낮은 진입 장벽은 사용자가 서비스를 더 자주, 더 오래 사용하게 만든다.
3. 게이미피케이션과 탐색의 즐거움
스와이프는 '다음은 무엇일까?'라는 호기심을 지속적으로 유발한다. 틴더, 인스타그램 스토리 등에서 입증되었듯이, 이는 심리학의 '간헐적 강화' 원리와 일치하며 중독성 있는 경험을 제공한다. 패션 아이템은 시각적 판단이 우선되는 상품이므로, 스와이프를 통해 수백 개의 상품을 빠르게 훑어보며 자신의 취향에 맞는 아이템을 발견하는 과정 자체가 '보물찾기'와 같은 즐거움을 준다. 이러한 게이미피케이션 요소는 쇼핑을 단순한 구매 행위에서 재미있는 경험으로 전환시킨다.
4. 개인화 알고리즘과의 시너지
스와이프를 통해 수집된 사용자의 선호도 데이터는 매우 명확하다. 오른쪽/왼쪽 스와이프라는 명확한 선호 신호는 추천 알고리즘을 빠르게 학습시키고, 이는 다시 사용자에게 더 정확한 상품을 추천하는 선순환 구조를 만든다. 사용자가 스와이프를 할수록 추천의 정확도가 높아지고, 이는 다시 리텐션을 강화한다.
5. 습관 형성
행동심리학의 '트리거-행동-보상' 모델에서 스와이프는 완벽한 습관 형성 구조를 갖추고 있다. 새로운 상품에 대한 호기심(트리거), 간단한 스와이프 동작(행동), 마음에 드는 상품 발견(보상)의 반복은 자연스럽게 습관을 형성한다. 또한 짧은 시간 안에 완료할 수 있어 출퇴근 시간, 대기 시간 등 일상의 틈새 시간에 부담 없이 사용할 수 있으며, 이러한 마이크로 모멘트의 반복은 서비스를 일상의 습관으로 만든다.
결론
- 현대 사용자들이 선호하는 짧고 빠른 콘텐츠 소비 방식과 완벽하게 일치한다
- 즉각적 피드백과 낮은 인지 부담으로 사용 빈도를 높인다
- 게이미피케이션 요소가 탐색을 즐거운 경험으로 만든다
- 명확한 선호 신호를 통해 개인화 추천의 정확도를 높이는 선순환 구조를 형성한다
- 습관 형성 메커니즘을 통해 일상적인 서비스 사용을 유도한다
Part 5. 어디까지 성장할 것인가
먼저 우리나라의 패션 E-Commerce 플랫폼 MAU를 조사해보았다
25년 6월 기준 무신사는 MAU가 640만으로 단순히 30일로 나눴을 때 하루에 21만 명의 사용자가 사용한다는 것을 알 수 있다. 다만 이는 업계 1위의 지표이고 이러한 높은 지표를 목표를 삼는다면 분명 더 많은 문제를 겪을 수 있겠지만, '바로'에서는 규모를 줄이기로 하였다
목표 : MAU 5만 / DAU 5000명 / 동접자 500명 / 목표 API 응답속도 100ms 이내
MAU 5만, DAU 5,000명(DAU/MAU 비율 10%) 그리고 동시 접속자 수는 500명(DAU/10)으로 정하였다. 또한 목표 API 응답속도는 사용자가 딜레이를 거의 못느끼는 정도인 100ms 이내로 잡았다. 여러 스타트업들을 조사한 결과 MAU 5만 정도의 사용자는 시리즈 A 수준의 투자를 받을 수 있는 사용자 수라고 판단하여 결정했다
블랙프라이데이와 같이 훨씬 더 많은 사용자가 몰릴 수 있는 이벤트의 경우에 목표치보다 더욱 상회하는 트래픽이 발생할 수 있기에 단순히 웹서버의 scale-up 혹은 scale-out만 고려하는 것이 아니라 사용자의 행동 하나하나가 서버에 어떤 부하를 주는지 구체적으로 예측해야 한다
- 스와이프 트래픽 예측 : DAU 5,000명이 하루 평균 20번의 스와이프를 한다고 가정하자. 이것만으로도 하루 10만 건의 스와이프 이벤트(읽기/쓰기)가 발생한다. 스와이프 테이블에 대한
INSERT
요청과 다음 룩을 가져오기 위한SELECT
쿼리가 폭증할 것이다 - 주문 트래픽 예측 : 구매 전환율을 업계 평균(2.06%)보다 높은 3%로 잡아도, 하루 약 150건의 주문이 발생한다. 주문 생성은 주문 테이블에
INSERT
하고, 장바구니 테이블에서DELETE
하는 등 여러 트랜잭션이 묶인 복잡한 작업이다
이러한 부하를 견디기 위해, 우리는 초기 설계부터 다음과 같은 기술적 방향성을 고려했다
- MSA 도입 고려
미래에 회원, 상품, 주문, 스와이프(추천) 기능들을 각기 다른 마이크로서비스로 분리할 것을 고려한다. 하지만 개발 리소스를 고려하여 초기부터 MSA로 개발하지 않으며, 모놀리식으로 개발을 진행하지만 DDD 설계를 도입하여 추후에 MSA로의 전환 리소스를 줄일 수 있도록 한다. 또한 모든 코드와 아키텍처는 유지보수성과 확장성을 고려하여 개발과 설계를 진행한다 - 비동기 처리와 메시지 큐
‘바로’ 서비스의 모든 기능들을 동기적으로 처리하면 무거운 기능의 경우 응답 속도가 느려질 수 있다. 일단 동기적으로 기능들을 전부 개발한 이후 대용량 데이터가 적재된 상황을 만들어 성능테스트를 통해 성능의 문제가 되는 API를 탐색한다. 그리고 DB 성능최적화 과정을 거쳐 최대한 성능 개선을 진행한다. 이후에 지금 당장 처리되지 않아도 되는 기능의 경우 Kafka나 RabbitMQ 같은 메시지 큐에 던져두고, 컨슈머에서 이를 처리하여 Eventual Consistency를 확보한다. 이를 통해 사용자 경험은 쾌적하게 유지하면서 데이터는 손실 없이 수집할 수 있다 - 데이터베이스 전략 다각화
모든 데이터를 단일 RDBMS에 저장하는 것은 위험하다.users
,products
,orders
처럼 트랜잭션과 데이터 정합성이 중요한 정보는 MySQL/PostgreSQL(Aurora 등)의 Read Replica(읽기 전용 복제본)를 구성하여 읽기 부하를 분산한다. 반면, 스와이프 로그처럼 쓰기가 빈번하고 양이 방대한 데이터는 NoSQL(DynamoDB, MongoDB 등)에 저장하여 확장성과 쓰기 성능을 확보하는 전략을 고려해야 한다. 다만 초기 개발은 여러 상황들을 고려하여 단일 MySQL로 진행한다 - 추후 데이터 기반 추천 고도화
‘바로’의 핵심 자산은 사용자의 스와이프 데이터다. 우리는 이 데이터를 활용해 협업 필터링(Collaborative Filtering)이나 콘텐츠 기반 필터링(Content-based Filtering)을 넘어, 사용자의 암묵적인 취향까지 파악하는 딥러닝 기반의 추천 모델을 구축하는 것을 장기 목표로 한다. ‘나와 비슷한 취향의 사용자들이 좋아한 룩’, ‘내가 최근 좋아한 룩과 유사한 스타일의 룩’을 제안하여 스와이프 경험의 질을 높일 것이다
결론. 패션의 본질에 집중!
- ‘바로’는 기술로 패션의 어려움을 해결하려고 하며,
- 이를 통해 사용자가 ‘쇼핑’이라는 행위의 부담감에서 벗어나 ‘스타일’을 발견하는 즐거움에만 집중하기를 바라는 서비스이다.
- 스와이프라는 직관적인 인터페이스, 고민 없이 구매로 이어지는 매끄러운 경험, 그리고 확장 가능한 기술 아키텍처
- 이 세 가지 축이 ‘바로’의 핵심이라고 생각한다.
- ‘바로’로 지금 바로 즐기길..!
'프로젝트' 카테고리의 다른 글
[바로] 단일 주문 성능 개선 삽질기 (Ft. JPA save, FK) (0) | 2025.08.20 |
---|---|
[바로] 반복되는 인증,인가 처리 없애버리기(Ft. AOP & ArgumentResolver) (0) | 2025.08.08 |
[바로] 분산 시스템에서 ID가 유일하려면?(Ft. Snowflake VS TSID 성능테스트) (3) | 2025.07.28 |
[바로] 확장성과 성능을 고려한 ERD 설계하기 (3) | 2025.07.25 |
[바로] JWT는 정말 괜찮은 방법일까? (Ft. 세션저장소 선택 이유) (2) | 2025.07.22 |