본문으로 건너뛰기
이승환
메뉴
대표 작업

작업 02 · 레거시 정상화 · Flutter Web

예약이 되지 않던 Vue2 웹, Flutter 앱 코드베이스로 대체

웹으로 들어온 유저가 예약을 온전히 마칠 수 없는 상태였습니다. Vue2를 고치는 대신 이미 검증된 Flutter 앱을 Web으로 확장하는 쪽을 빠르게 택했고, 약속한 기한보다 한 달 앞서 배포해 웹에서도 예약되기 시작했습니다.

직접 맡은 일

웹 확장 전략 판단 · 플랫폼 의존성 분리 · AWS 웹 인프라 구성 · 라우팅·SEO·딥링크 · 배포

  • Vue2 대체
  • Flutter Web
  • Platform stub
  • AWS
  • SEO
하나의 코드베이스로 세 플랫폼 운영
상품 · 예약 · 결제 로직
  • Android기존 Flutter 앱
  • iOS기존 Flutter 앱
  • WebVue2 웹 대체 · 11월 말 배포

상품, 예약, 결제의 비즈니스 로직을 Android와 iOS 앱에서 공유하고 같은 Flutter 코드베이스를 Web까지 확장해 동작하지 않던 Vue2 웹을 대체한 구조입니다.

월 순 방문자
+104%

17,791명 → 36,402명 · 웹 대체 후

기한보다 앞선 출시
1개월

12월 말 목표 → 11월 말 운영 배포

첫 화면 표시
2초 이내

FCP 평균 4초 이상 → 2초 이하

상황

유입은 유지되는데 웹에서 예약 완료 불가

Vue2로 만든 웹 서비스가 정상 동작하지 않아 웹으로 들어온 사용자가 예약 흐름을 완료할 수 없었습니다. 앱을 설치하지 않은 사용자는 그대로 이탈했습니다.

신규 제품 출시가 예정돼 있어 그때까지는 앱과 같은 경험을 웹에서도 제공해야 했습니다. 고칠 대상은 명확했지만 남은 기간이 짧았습니다.

바꾼 것

Vue2 유지보수 대신 검증된 앱 자산의 Web 확장

  • Vue2 유지보수와 Flutter 앱 확장을 비교해 이미 운영에서 검증된 상품·예약·결제 흐름을 그대로 쓰는 쪽으로 결정. 이 판단을 빠르게 내린 것이 기한 단축의 핵심
  • 서드파티·패키지의 웹 호환성을 먼저 확인하고 Platform stub pattern으로 플랫폼별 의존성을 빌드 단계에서 분리, 모바일 전용 코드로 인한 웹 빌드 차단 방지
  • 카카오맵 Web 지원, 라우팅, SEO, 딥링크 처리 및 레거시 링크 redirect로 기존 주소 유입 유지
  • AWS 기반 웹 인프라 신규 구성 후 운영 배포

확인한 결과

웹 예약 정상화 및 월 순 방문자 2배 증가

불안정했던 웹을 대체해 일반 예약과 구매 예약을 웹에서 완료할 수 있게 했습니다. 목표 기한은 12월 말이었지만 11월 말에 배포했습니다.

대체한 뒤 월 순 방문자는 17,791명에서 36,402명으로 늘었습니다. 첫 화면 표시는 평균 4초 이상에서 2초 이하로 줄었고 Lighthouse 점수는 기존 대비 30점 이상 개선됐습니다.

마지막으로

남은 과제와 범위