Skip to content

Education · SaaS · 2023

An LMS in Pakistan that survives results day

Multi-tenant LMS for a Pakistani education network that used to fall over on results day.

Delivered in 2023 by SoftCity's founding team, before the company was incorporated in 2024.

Client
Education network, Pakistan
Industry
Education
Duration
28 weeks
Team
6 engineers, 1 designer, 2 QA, 1 PM
Learning management platform

1 The problem

A Pakistani education network’s learning platform fell over twice a year: enrolment week and results day. The year before we were called, it had been unreachable for hours while tens of thousands of students hit refresh. The architecture assumed café Wi-Fi and a polite queue. It had no cache worth the name, and media sat on the same box as the gradebook.

2 Our approach

We rebuilt the read path around cache and pre-computed result sets, moved course media to a CDN, and put the examination engine on its own iron so a results surge could not starve coursework. Then we load-tested to three times the worst historical peak, six weeks before the date — from Islamabad, on a number the board could hold us to.

3 What we built

  • Multi-tenant LMS with per-institution isolation
  • Pre-computed result publication and cache warming
  • Exam engine on isolated, autoscale infrastructure
  • CDN for all course media
  • Queued grade processing with backpressure
  • Load tests at 3× peak, kept monthly

4 Technology

Laravel Livewire MySQL Redis Cloudflare AWS

The results

Peak held

Results day concurrent load

0 min

Downtime on the launches we ran

Network-wide

Students on one platform

Sub-second

Median page on the cached path

“Results day used to be the worst day of the year. Last time I watched the dashboard for an hour and went to lunch.”
Head of product
Education network, Pakistan (name withheld)

More work

Other case studies

Hospital information system ERP

Healthcare · 2024

Hospital information system

Hospital group, Punjab

One patient record across a multi-facility hospital group in Punjab, replacing seven tools that did not talk to each other.

Patient wait times down about a third, with no downtime during cutover

Laravel Vue 3 PostgreSQL AWS
Read the case study

Have a similar problem?

Tell us what is not working. If we have solved something like it, we will walk you through how — including what we would do differently.

Or call +923019278056 · We reply to every enquiry within one working day.