온라인과 오프라인 매장 고객을 하나로
브랜드마다 흩어져 있던 고객 정보를 본인인증을 기준으로 연결했습니다. 2026년 9월까지 온라인 고객과 오프라인 매장 고객 245,000+명이 하나의 계정으로 이어졌습니다.
- O2O
- 본인인증
- 통합멤버십
- App · Web 연동
관측할 수 있게 렌더링 방식을 두 번 바꿨다
Flutter Web은 Canvas로 그려서 화면 안에서 무슨 일이 일어나는지 볼 수 없었습니다. 관측 가능한 DOM으로 옮겨 이탈 구간을 드러냈고, 수단이 틀렸다는 걸 인정하고 한 번 더 되돌렸습니다.
- Datadog RUM
- Product Analytics
- Expo Web
- Vite
- 퍼널
4개 브랜드 예약 상세를 하나의 웹으로
브랜드마다 예약 상세 화면이 달라 같은 버그가 네 번 났고, 고칠 때마다 앱 심사를 기다려야 했습니다. 주문 상태 계약을 하나로 통일하고 앱은 그 계약을 소비하는 WebView로 바꿨습니다.
- 예약 상세
- WebView
- 브릿지
- React
- 하위 호환
조용히 삼켜지던 파싱 실패를 드러낸 DTO 표준화
DTO에 변환 로직이 섞여 같은 값이 두 이름으로 공존했고, 파싱에 실패해도 기본값을 채우고 넘어가 화면만 비었습니다. 14개 feature의 DTO를 서버 응답의 직역으로 되돌리고 실패가 드러나게 했습니다.
- zod
- DTO
- 모노레포
- Datadog
- AI 에이전트 규약
예약이 되지 않던 Vue2 웹, Flutter 앱 코드베이스로 대체
웹으로 들어온 유저가 예약을 온전히 마칠 수 없는 상태였습니다. Vue2를 고치는 대신 이미 검증된 Flutter 앱을 Web으로 확장하는 쪽을 빠르게 택했고, 약속한 기한보다 한 달 앞서 배포해 웹에서도 예약되기 시작했습니다.
- Vue2 대체
- Flutter Web
- Platform stub
- AWS
- SEO
일관된 디자인으로 사용자 경험과 생산성을 개선
Flutter와 React에 맞춘 디자인 시스템을 만들었습니다. 구현과 QA 생산성을 높이고 사용자에게 일관된 경험을 제공했습니다.
- 디자인 시스템
- Flutter
- Widgetbook
- React
- Storybook