Scaling a legal-tech SaaS under deadline
spacedrepetition.com — flashcard study for law students
The engagement
Spaced Repetition Systems sells a spaced-repetition flashcard platform to law students, with law schools buying seats for their students. In spring 2019, Boston University bought 700+ licenses and a New York Law School professor was about to require it for ~200 students. Those launches were the pressure that drove the work. David was brought in as the solo Rails developer to scale, upgrade, and fix the app - late April through September 2019, with the founder paying him directly.
What we did
- Scaled the infrastructure for the institutional launch - added Heroku capacity to absorb Boston University’s 700+ license onboarding.
- Drove the framework upgrade - Rails 4.2 → 5.1.7, a Ruby 2.3 bump, and an ActiveAdmin upgrade, fixing the tests that fell out of it.
- Stood up observability that didn’t exist - installed Rollbar for production error tracking and New Relic for performance tracing, then used New Relic to diagnose slow card loads on large decks.
- Untangled the payment and authorization system. The Stripe-coupled billing and permission logic was, in David’s notes, “extremely confused” - plan names not set on upgrades, a misused flag, and subscription cancellation not wired into the payment processor. He regularized plan handling and made access checks query Stripe directly for the real subscription state.
- Cleared user-blocking bugs during the onboarding crunch - including the bug where ~200 paying New York Law School students literally couldn’t create cards, and a Boost-deck access bug after payment.
In their words
“Professional, efficient, and strong communicator, and fairly priced. David really helped me with some needs for my app - from refactoring old code, to making improvements - he was terrific!”
- Gabe Teninbaum, Founder, Spaced Repetition Systems
Stack
- Ruby on Rails 4.2 → 5.1.7
- PostgreSQL
- Heroku
- Stripe
- New Relic / Rollbar