지역 맛집을 추천하고 투표하며 영수증 인증 리뷰로 리워드를 쌓는 로컬 커머스 플랫폼 'AllPick'의 프로젝트입니다. 맛집 정보 서비스에 쇼핑몰과 역제안 기능을 더해, 정보를 보여주는 단계에서 지역 매장과 고객이 직접 거래하는 단계로 서비스를 넓혔습니다. 일반 소비자와 매장 점주 양쪽을 모두 사용자로 두고 설계했습니다.
작업 범위
소비자 앱, 점주 기능, 관리자 웹까지 플랫폼 전반을 담당했습니다. Expo Router 기반 React Native 앱과 React 관리자 웹을 함께 개발했고, 백엔드는 Spring Boot API에 PostgreSQL, Redis, Docker Compose를 얹은 확장형 구조로 구성했습니다. FCM 알림, S3 이미지 업로드, 채팅 서버를 붙이고 상품·주문·리뷰·리워드 데이터 영역을 분리했습니다. 지원 환경은 Android와 iOS를 아우르는 RN 앱, 그리고 웹 기반 관리자입니다.
기술 스택
주요 업무
소비자 앱에는 홈, 핫플레이스, 검색, 매장 상세, 투표, 리뷰, 출석, 미션, 게임, 기프티콘, 채팅, 마이페이지에 더해 상품·장바구니·주문·결제·배송으로 이어지는 쇼핑몰과 역제안 흐름을 넣었습니다. 점주는 매장과 상품 등록, 리뷰 답글, 이벤트, 통계, 고객 채팅을 앱 안에서 처리합니다. 관리자 웹에서는 회원, 매장, 상품, 주문, 입점 승인, 알림 발송, 운영 대시보드를 다룹니다. 여기에 영수증 OCR 인증 리뷰와 사진 리뷰, 세분화 별점, 포인트 보상, 기프티콘 교환, FCM 알림을 얹었습니다.
주안점
가장 신경 쓴 부분은 정보 서비스에서 거래 플랫폼으로 넘어가도 버티는 데이터 구조였습니다. 상품과 옵션, 주문, 배송, 결제, 정산, 통계로 이어지는 흐름이 중간에 끊기지 않게 연결하고, 채팅·주문·리뷰·리워드를 각각 분리해 나중에 기능이 늘어도 서로 얽히지 않도록 했습니다. 소비자와 점주, 운영자가 보는 화면과 처리하는 일이 다르기 때문에 역할별 흐름도 처음부터 갈라서 설계했습니다.
핵심 기능
쇼핑몰
상품 목록과 상세, 장바구니, 주문, 결제, 주문 내역, 배송 상태까지 지역 매장 상품을 앱에서 바로 사고 받는 흐름을 갖췄습니다.
역제안
고객이 원하는 조건을 남기면 매장이 제안하고, 반대로 매장이 고객 수요에 맞춰 상품과 혜택을 먼저 제시하는 양방향 거래 흐름입니다.
영수증 OCR 인증 리뷰
영수증을 촬영하면 OCR로 방문을 확인한 뒤 사진 리뷰와 세분화 별점을 남기고 포인트를 받습니다.
점주 앱 기능
매장·상품 등록, 리뷰 답글, 이벤트 생성, 방문·투표·리뷰 통계, 고객 채팅을 점주가 앱 안에서 관리합니다.
리워드
출석과 미션, 게임으로 포인트를 모으고 기프티콘으로 교환하는 리워드 흐름입니다.


