프론트엔드 개발자가 네이티브 iOS 앱을 출시했다. Claude Code를 활용해 3개월 만에. 이 문장이 이제는 그리 놀랍지 않다는 것 자체가 이미 패러다임이 이동했음을 말해준다. 그런데 이 사례에서 진짜 흥미로운 부분은 AI가 코드를 짜줬다는 사실이 아니라, AI가 짜줄 수 없었던 것들이다.
'Life Tile'은 하루를 몬드리안 격자로 시각화하는 위치·시간 기록 앱이다. 개발자는 오랫동안 사용하던 Life Cycle이 업데이트를 멈추자, Reddit에서 대안을 찾는 사람들을 발견하고 직접 만들기로 결심했다. 전형적인 프로덕트 사고의 시작점이다. 기존 사용자의 불만을 포착하고, 시장 공백을 확인하고, 직접 해결책을 만든다.
개발 과정에서 가장 어려웠던 부분은 iOS 백그라운드 위치 추적이었다. 공항, 대형 쇼핑몰, 장소 밀집 지역에서 감지가 흔들렸고, 짧은 방문은 누락됐으며, 인접 장소는 하나로 병합됐다. iOS 위치 추적 정확도만으로는 '완전 자동화'가 불가능하다는 결론에 이르렀을 때, 개발자가 내린 선택이 이 프로젝트의 핵심이다. 자동화의 완성도를 높이는 데 집착하는 대신, 잘못 잡힌 기록을 사용자가 쉽게 고칠 수 있게 설계 방향을 틀었다. 기술적 한계를 인정하고 UX로 보완하는 이 판단은 Claude Code가 내려줄 수 없는 것이다.
아키텍처 선택도 주목할 만하다. 모든 데이터를 기기에만 저장하는 온디바이스 구조(SwiftData)는 프라이버시를 위한 선택이었지만, 부수 효과로 백엔드가 사라졌다. 서버 운영 비용, 인증, 동기화 서버가 모두 불필요해졌다. 이 구조는 최근 웹 도구 생태계에서 빠르게 확산 중인 '브라우저 클라이언트 처리' 트렌드와 정확히 같은 맥락에 있다. Dev.to의 한 글에서 정리한 것처럼, 파일이 기기를 떠나지 않으면 로그도, 침해도, 실수로 인한 데이터 보관도 없다. 프라이버시가 설계 단계에서 기본값이 되는 것이다.
성능 설계에서도 같은 원칙이 작동한다. Astro와 Tailwind CSS v4로 PageSpeed 100/100을 달성한 순자산 계산기 사례를 보면, 핵심 전략은 '처리를 어디서 할 것인가'를 먼저 결정하는 것이었다. 연방준비제도 데이터를 빌드 타임에 경량 JSON으로 전처리해두고, 모든 계산(백분위 곡선, 환율 변환, 주택자산 조정)을 브라우저에서 즉시 실행했다. DB 쿼리도, API 레이턴시도 없다. 외부 폰트 스타일시트를 네이티브 시스템 폰트 스택으로 교체하는 것만으로 모바일 FCP에서 1.7초를 줄였다. 기술 선택이 아니라 데이터 흐름 설계가 성능을 결정했다.
WASM과 WebGPU의 성숙으로 브라우저 클라이언트 처리는 이제 '가능한가'의 문제가 아니다. 배경 제거 같은 ML 추론도 ONNX Runtime Web과 Web Worker 조합으로 완전히 클라이언트에서 돌릴 수 있다. 진짜 엔지니어링 문제는 '초기 로드 비용을 어떻게 설계할 것인가'로 이동했다. 모델과 런타임을 세션당 한 번 로드하면, 이후 모든 처리는 즉각적이고 로컬하다. 서버사이드가 죽었다는 이야기가 아니라, 도구의 성격에 따라 처리 위치를 의식적으로 설계해야 한다는 뜻이다.
Life Tile 개발자는 Claude Code 활용 비용으로 개발 집중 기간 2개월에 약 220달러를 썼다. 이후 Pro 플랜으로 전환했다. 앱스토어 스크린샷은 Claude Design으로 생성했고, 경쟁 앱 조사와 출시 후 홍보 전략도 AI와 함께 다듬었다. 구현 이외의 영역에서도 AI가 실질적인 파트너로 작동한 것이다. 그러나 개발자 스스로 짚은 것처럼, 각 커뮤니티의 홍보 정책을 파악하고 출시 전에 미리 계정을 만들어 참여해두는 준비는 AI가 대신해줄 수 없었다. Product Hunt 등록, Show HN 타이밍, 서브레딧별 카르마 요건—이런 실행 세부사항은 사람이 먼저 파악하고 설계해야 한다.
세 사례가 수렴하는 지점은 하나다. AI가 구현 속도를 획기적으로 높인 지금, 병목은 더 앞 단계로 이동했다. 백그라운드 위치 추적의 기술적 한계를 UX 문제로 재정의하는 것, 데이터를 어디서 처리할지를 스택 선택보다 먼저 결정하는 것, 출시 채널의 구조를 미리 파악해두는 것. 이것들은 모두 코드를 짜기 전에 설계해야 할 것들이다. AI가 코드를 빠르게 만들어줄수록, 그 전에 사람이 정의해야 할 것들의 무게는 더 커진다.