Scaling an EdTech platform to 200,000 users on a startup budget
EdTech traffic doesn't grow — it detonates. Result day can be 50× a normal Tuesday. These are the decisions that let a small team survive it.
Consumer apps get gentle traffic curves. School platforms get synchronized stampedes: every parent in a city refreshing for results within the same ten minutes, every teacher marking attendance in the same half hour before first period. When we planned the platform's architecture, "average load" was a useless number. Peak was the only number that mattered.
Break the monolith where it hurts, not everywhere
The fashionable advice is "microservices everything." With a small team, that's a great way to turn one manageable codebase into twelve unmanageable ones. We split along pain lines, not domain diagrams:
- Notifications went first — SMS and push bursts to thousands of parents were choking request threads.
- Reports and exports went second — a principal generating a term report should never slow down a classroom.
- Everything else stayed together until it earned its independence.
A queue is the cheapest scaling technology ever invented. Use it before you use anything else.
The boring stack that held
Nothing exotic survived contact with production. What held up: load-balanced app servers that autoscale on schedule (we know when school starts), read replicas for the reporting workload, aggressive caching for anything a parent sees, and background queues for everything that doesn't need to happen inside a web request.
Multi-tenancy discipline was the other half. When one tenant's data pattern can degrade every other school on the cluster, per-tenant limits are a feature, not a restriction.
What almost killed us
Two near-misses worth admitting. An unindexed query that was fine at 40 schools and a catastrophe at 140 — growth turns your slow queries into outages, so we now review query plans as part of scaling checkpoints. And result-day traffic that beat our autoscaling reaction time — the fix was pre-warming capacity on known academic dates, because in EdTech, the calendar is your best monitoring tool.
200,000 users later, the lesson is consistent: scaling isn't about clever architecture. It's about knowing your traffic better than anyone else, and spending your complexity budget only where the pain is real.