Nadia Odunayo & Scaling Rails for Millions of Users as a Solo Dev
Manage episode 497027470 series 3674688
In this episode of On Rails, Nadia Odunayo, founder and solo developer of The StoryGraph, joins us to share what it really takes to build and maintain a Rails application used by over four million readers across web and mobile.
We discuss lessons from launching a PWA, shifting to Turbo Native for cross-platform support, and navigating challenges like in-app purchases and data syncing between systems. Nadia also talks about the bold decision to move from Heroku to YugabyteDB to support growing workloads, and why she decided against hiring a team to manage it.
We also explore what it means to remain a solo developer by choice, the value of the Rails community, and why Ruby on Rails continues to be the framework that powers her entire business.
Platforms & Distribution
- The StoryGraph – Nadia’s solo-built reading and book tracking platform
- Apple App Store – The StoryGraph
- Google Play Store – StoryGraph
- Progressive Web Apps (MDN) – Alternative mobile delivery method initially explored
Tools, Libraries & Services
- Ruby on Rails – The primary framework powering The StoryGraph
- Turbo / Hotwire Native – Used to support mobile apps with shared Rails backend
- Devise (GitHub) – Authentication library for Rails
- Sidekiq – Background job processor
- Makara (GitHub) – Database proxy for master/replica load splitting
- Heroku – Former hosting platform for The StoryGraph
- YugabyteDB – Postgres-compatible distributed database chosen for scaling
- CTEs (Common Table Expressions) – Used for optimizing queries across distributed data
- Linear – Project management tool currently used by Nadia
Books
- Ruby Under a Microscope by Pat Shaughnessy – A deep dive into Ruby internals
On Rails is a podcast focused on real-world technical decision-making, exploring how teams are scaling, architecting, and solving complex challenges with Rails.
On Rails is brought to you by The Rails Foundation, and hosted by Robby Russell of Planet Argon.
Chapters
1. Nadia Odunayo & Scaling Rails for Millions of Users as a Solo Dev (00:00:00)
2. Why Nadia has stayed with Rails since her bootcamp days (00:01:00)
3. Leaning on Rails gems and ecosystem to accelerate solo development (00:07:00)
4. How Turbo enabled Nadia to build for web, iOS, and Android as one developer (00:08:20)
5. Why the PWA approach didn’t work out—and the shift to app stores (00:09:00)
6. Solving the challenge of reconciling in-app purchases with Rails user accounts (00:13:11)
7. Building trust with users during long development sprints (00:14:53)
8. 60% of StoryGraph users are on mobile apps, with Android leading (00:16:07)
9. What it took to scale StoryGraph to four million users (00:19:40)
10. Migrating from Postgres to Yugabyte for horizontal scalability (00:22:20)
11. Why Nadia continues to run StoryGraph as a solo developer (00:27:10)
12. Evolving the infrastructure and moving off of Heroku (00:33:00)
13. Nadia’s perspective on Rails as a “one-person framework” (00:45:30)
3 episodes