나디아는 Rails 생태계가 솔로 개발자에게 제공하는 이점을 여러 차례 언급합니다. Devise와 같은 인증 도구, Sidekiq과 같은 백그라운드 작업 도구 등 수많은 오픈 소스 도구들이 즉시 사용 가능하여 개발 초기 단계에서 큰 도움이 되었다고 설명합니다. 또한, 초기 Heroku의 활용은 DevOps 인력 없이도 서비스 운영을 가능하게 했습니다. StoryGraph의 성장에 있어 가장 결정적인 도구로 그녀는 Turbo를 꼽습니다. 초기에는 PWA(Progressive Web App)를 적극적으로 홍보했으나, 사용자들이 앱 스토어에서 다운로드하지 않으면 ‘진짜 앱’으로 인식하지 않는 심리적 장벽에 부딪혔습니다. 이에 Turbo를 도입함으로써 단일 Rails 코드베이스로 웹, iOS, Android 앱을 동시에 구동할 수 있게 되었고, 이는 솔로 개발자로서 4백만 명 이상의 사용자를 지원하는 데 필수적인 요소였습니다.
앱 내 결제 시스템 통합은 가장 까다로운 도전 과제 중 하나였습니다. Apple과 Google의 인앱 결제 정책으로 인해 웹사이트에서 제공하는 유료 상품은 반드시 플랫폼의 결제 시스템을 사용해야 했으며, 이는 완전히 다른 두 시스템을 통합하고 기기 기반 구매를 서버 측 사용자 계정과 연동하는 복잡한 작업을 수반했습니다. 특히, 사용자 ID와 구매 토큰 간의 연결, 그리고 Apple과 Google 플랫폼 간의 상이한 개발자 관리 기능(구독 취소, 환불, 기간 연장 등)은 많은 시간을 소요하게 했습니다.
서비스 확장과 관련하여, 매년 1월 1일은 StoryGraph의 최고 트래픽을 기록하는 시기입니다. 기존 PostgreSQL 데이터베이스는 이 시기의 급증하는 쓰기 작업(사용자 유입 및 데이터 임포트)을 감당하지 못하고 병목 현상을 일으켰습니다. 이에 수평적 확장이 가능한 PostgreSQL 호환 데이터베이스인 YugabyteDB로의 전환을 결정했습니다. 이 과정에서 분산 데이터베이스에 최적화되지 않은 쿼리 수정, 추가적인 인덱싱, 네트워크 대역폭 문제 등 여러 기술적 난관에 봉착했으나, YugabyteDB 도입으로 동시 사용자 수가 6천 명에서 1만 2천~1만 3천 명으로 두 배 증가하는 성과를 거두었습니다. 현재는 성능 최적화와 과도하게 프로비저닝된 리소스 관리에 집중하고 있습니다.
나디아는 솔로 개발자로서 개발 외에도 비즈니스 운영, 로드맵 수립, 사용자 지원 등 다양한 역할을 수행해야 하는 어려움을 토로합니다. 특히, 집중적인 코딩 시간을 확보하는 것이 가장 큰 도전이며, 현재는 기능 개발을 잠시 중단하고 앱의 성능 및 안정성 개선에 전념하고 있습니다. 그녀는 인력 채용이 추가적인 관리 부담을 초래하며, 현재의 ‘원우먼 개발팀’이라는 브랜드 스토리가 회사 성장에 긍정적인 영향을 미치고 있기 때문에 당분간은 솔로 개발 체제를 유지할 계획이라고 밝혔습니다. 또한, Ruby 커뮤니티의 도움과 조언이 문제 해결에 큰 도움이 되었음을 언급하며, 동료 개발자들에게는 ‘Ruby Under a Microscope’를 추천했습니다.