2025.08 — 꾸준히 고도화중
사용자의 여행 경험을 기록하고, 기술적 한계를 비즈니스 가치로 변환하는 라이브 서비스
로그트립은 사용자가 여행의 순간을 기록하고 세계 지도에 방문 국가를 시각화하는 개인화된 여행 플랫폼입니다.
현재 실제 운영 중인 서비스로서, 하이브리드 앱 아키텍처와 서버 중심 캐싱 전략을 통해 최적의 사용자 경험을 제공하고 있습니다.
React Native 네이티브 탭바 구조에서 각 탭의 WebView 인스턴스가 독립적인 메모리를 점유함에 따라, 클라이언트 사이드(React Query) 기반의 상태 관리가 탭 간에 동기화되지 않는 이슈가 발생했습니다. 또한, 외부 API를 통해 유입되는 대용량 폴리곤 데이터는 호출 비용과 로딩 시간이 길어 사용자 경험을 저해하는 요인이었습니다.
• 해결
클라이언트 사이드 캐싱의 한계를 극복하기 위해 데이터 관리 주권을 서버로 이동하는 SSR(Server-Side Rendering) 전략을 채택했습니다.
먼저 탭 간 메모리 격리 문제를 해결하기 위해 서버 데이터를 단일 진실 공급원(Single Source of Truth)으로 삼는 구조로 재설계하여 데이터 정합성을
확보했습니다. 이와 동시에, 서버 측 캐싱을 통해 대용량 폴리곤 데이터를 효율적으로 관리함으로써 데이터 변경이 없는 경우 즉시 응답을 유도했고, 이를 통해 사용자
화면의 렌더링 속도를 획기적으로 개선했습니다.
데이터 정합성 오류를 원천 차단하고, 고용량 데이터 호출 시의 지연 시간을 최소화하여 사용자에게 일관되고 빠른 인터페이스를 제공하고 있습니다.
관련 링크 ↗단일 저장소(Repository) 기반의 프로젝트 개발을 넘어, 향후 여러 프로젝트를 효과적으로 관리하고 기술적 확장성을 키우기 위한 아키텍처 설계 역량이 필요했습니다.
• 해결당장 공통 라이브러리를 공유하지 않더라도, 장기적인 엔지니어링 역량 확보를 위해 pnpm Workspace를 활용한 모노레포를 자발적으로 구축했습니다.
• 결과모노레포 구축 과정을 통해 대규모 프로젝트 관리의 기술적 이해도를 높였으며, 개발자로서 복잡한 의존성 관계를 스스로 설계하고 통제할 수 있는 실무 역량을 강화했습니다.
관련 링크 ↗혼자 개발하는 환경에서 코드리뷰가 생략되거나 일관성 없이 진행되는 문제가 있었습니다. 리뷰 없이 main 브랜치에 merge되는 코드가 쌓이면서 품질 기준을 유지하기 어려웠고, 직접 리뷰하더라도 놓치는 부분이 생기는 한계가 있었습니다.
• 해결
git pre-push 훅에 Claude Code CLI를 연동하여 자동화 파이프라인을 구축했습니다.
Push 시점에 린트·타입 체크를 실행하여 오류가 있는 코드의 push를 원천 차단하고,
통과 시 Claude가 PR 자동 생성과 코드리뷰를 진행합니다.
리뷰 결과는 CRITICAL / MINOR / APPROVED로 분류되며, CRITICAL 판정 시 merge
차단, APPROVED 판정 시 rebase
merge와 브랜치 삭제까지 자동으로 처리됩니다.
모든 push 시점에 코드 품질 기준이 강제되고, 매 PR마다 일관된 코드리뷰가 자동으로 수행되는 환경을 구축했습니다.
관련 링크 ↗