StoryGraph 솔로 개발자의 Ruby on Rails 활용 및 성장 스토리

Nadia Odunayo & Scaling Rails for Millions of Users as a Solo Dev - On Rails podcast

작성자
Ruby on Rails Youtube
발행일
2025년 07월 29일

핵심 요약

  • 1 StoryGraph의 솔로 개발자 나디아 오두나요는 Ruby on Rails를 기반으로 4백만 명 이상의 사용자를 확보한 플랫폼을 성공적으로 구축했습니다.
  • 2 PWA의 사용자 경험 한계를 극복하기 위해 Turbo를 도입하여 웹, iOS, Android 앱을 단일 코드베이스로 효율적으로 관리하며 앱 생태계를 확장했습니다.
  • 3 앱 내 결제 시스템 통합, 데이터 동기화, 그리고 급증하는 트래픽에 대응하기 위한 YugabyteDB 도입 등 솔로 개발자로서 겪는 기술적 도전과 해결 과정을 상세히 공유했습니다.

도입

본 팟캐스트는 'On Rails'의 에피소드로, 4백만 명 이상의 사용자를 보유한 빠르게 성장하는 독서 추적 플랫폼 StoryGraph의 솔로 창업가이자 개발자인 나디아 오두나요(Nadia Odunayo)와의 대화를 다룹니다. 나디아는 Ruby on Rails(이하 Rails)를 활용하여 StoryGraph를 구축하고 확장해 나가는 과정에서 겪었던 기술적 결정과 도전 과제들을 공유합니다. 특히, Rails가 그녀의 유일한 웹 개발 플랫폼 지식이었고, 그 안정성과 성숙도 덕분에 StoryGraph의 초기 개발부터 현재까지 핵심적인 역할을 했다는 점을 강조합니다.

나디아는 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’를 추천했습니다.

결론

나디아 오두나요의 StoryGraph 사례는 Ruby on Rails가 솔로 개발자에게 제공하는 강력한 기반과 확장성을 명확히 보여줍니다. Turbo와 같은 도구를 통해 웹과 네이티브 앱을 효율적으로 통합하고, YugabyteDB와 같은 분산 데이터베이스를 도입하여 대규모 트래픽에 대응하는 등 기술적 도전을 성공적으로 극복했습니다. 그녀의 이야기는 단순한 기술 스택 선택을 넘어, 제한된 자원 속에서 비즈니스를 성장시키고 사용자 신뢰를 구축하는 솔로 창업가의 끈기와 전략을 조명합니다. Rails 생태계의 지원과 개인의 역량 강화 노력이 결합될 때, 소규모 팀으로도 전 세계 수백만 명의 사용자에게 영향을 미치는 서비스를 만들 수 있음을 입증하는 사례입니다.

댓글 0

댓글 작성

0/1000
정중하고 건설적인 댓글을 작성해 주세요.

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!