Aurora LMS: Rebuilding a Scalable Online Learning Platform for 80,000+ Students
Kindle Academy's LMS was falling over at exam time. We rebuilt it as one platform for 80,000 students.
Numbers from after launch
Recorded in production, with real users, after the new system was live.
What was broken, and what we built
First the workflow that was failing. Then the product and the technical choices that made the change hold.
What was broken: exam week brought the LMS down
Kindle Academy had grown from 5,000 students to over 80,000 across multiple international campuses. Their existing off-the-shelf LMS suffered from 4+ second page loads, frequent session timeouts during live cohort hand-ins, and unsustainable video streaming egress bills.
The client needed a tailored, enterprise-grade platform capable of handling asynchronous video streaming, live quiz grading, and detailed administrative reporting while offering a modern, distraction-free student learning interface.
What we built: video and grading that do not share a bottleneck
Viswana re-architected the system as a high-performance modular application. For video management, we built an automated ingestion pipeline. Videos upload directly from the instructor's browser to Cloudflare R2 storage via signed URLs, triggering asynchronous GPU transcoding workers that output multi-bitrate HLS streams.
For student evaluation, we decoupled the live quiz engine from the primary transactional database using a Redis message queue. Student submissions are acknowledged instantaneously in under 40ms, with grading background workers evaluating answers asynchronously and updating the partitioned PostgreSQL gradebook.
- Sub-second video startup times with tokenized HMAC authorization headers at the edge
- PostgreSQL table partitioning on student enrollment and submission tables
- Real-time student progress tracking powered by lightweight WebSockets
- Role-based permission hierarchy for instructors, teaching assistants, and institutional admins
Stack in production
Libraries, databases and infrastructure on this product today.
Services used on this build
Full-Stack Product Engineering & Ongoing Software Maintenance
You know what the product should do. We turn that into a frontend, a backend, a data model and a way to ship updates, then keep it healthy after launch with maintenance, SLAs and code ownership.
Custom SaaS Platform & Complex Management Systems
The work is running on spreadsheets and three subscriptions. We replace that with one SaaS product: tenants, billing, roles and the workflow your team already knows.
Cloud & DevOps Engineering, Scalability & SRE
We run infrastructure like an engineering product: infrastructure as code, GitOps delivery on Kubernetes, automated CI/CD and SRE practice. When the product is already slow or old, we find the bottleneck and migrate without downtime.
Want a result like this? Tell us what is breaking.
