EdTech · Engineering case study

K-12 Education SaaS

A curriculum-aligned learning platform used by real schools: subject-mapped content, a quiz engine, and AI-generated performance insights, running against a production database of 995 schools.

Role
Full-stack + AI features
Client
AU education-tech company
Scale
995 schools / 12,495 users
Tools
.NET 9, Angular, PostgreSQL, MAUI
Note on these mockups

This is an NDA client engagement. The screens on this page are an illustrated recreation of the product's features, not real screenshots. No product name, logo, school, teacher, or student data is reproduced anywhere.

course view
My subjectsGlossaryResultsSaved itemsQuiz hub?AK
SCIENCE 10 › Genetics › Inheritance patterns
Level 1Level 2TasksQuiz
Inheritance patterns
Dominant and recessive traits
Punnett squares
Sex-linked inheritance
Haploid and diploid cells
Genetic variation in a population
Mutation and its effects
Modelling a monohybrid cross
The topic tree on the left, the levelled lesson list on the right. Same subject, different curriculum, different tree underneath.
subject picker
My subjects?AK
Choose a subject
Biology
Units 3 & 4
Biology
Year 10
Chemistry
Units 1 & 2
Physics
Year 10
Biology
Year 11
Chemistry
Year 10
Forensics
Year 10
11 course variants downloadedOffline content ready
Every course variant a school has licensed, downloaded for offline use so a lesson survives a bad school connection.
quiz engine
My subjectsGlossaryResultsSaved itemsQuiz hub?AK
Genetics › Inheritance patterns › Level 1
Q1/10LEVEL 1
A recessive trait can appear in a child even when neither parent shows the trait.
TRUEFALSE
One question at a time, scoped to a level, with the question type driving which answer control is shown.
class insights
My subjectsGlossaryResultsSaved itemsQuiz hub?AK
Class performanceFortnight to 21 Aug
ClassStudentsQuiz completionAvg
Class A · Science 102886%74
Class B · Science 102671%68
Class C · Biology 112492%81
Class D · Biology 112234%no data yet
Class E · Chemistry 102778%70
Class F · Physics 102564%66
Fortnightly summary
Two classes finished the Genetics unit ahead of pace. Punnett squares is the weakest topic across all four groups, with the biggest gap in Class B.
Weakest topicPunnett squares
Strongest topicDominant traits
Needs a nudgeClass D
Email this to my teachers
Topic accuracy across all classes
Punnett squares48%
Sex-linked inheritance57%
Mutation and its effects63%
Dominant traits88%
Generated every second Thursday from live quiz data.
Recent quiz activity
Class ALevel 2
Inheritance patterns
24/28 submitted
Class CLevel 1
Punnett squares
22/24 submitted
Class ELevel 1
Reaction rates
19/27 submitted
Class FLevel 2
Forces and motion
16/25 submitted
The fortnightly AI summary a teacher actually reads: completion, topic accuracy, and which class needs a nudge. Classes with no submissions say so rather than reporting a misleading zero.
01Problem

One curriculum, a dozen course variants.

Schools don't all teach the same syllabus. A single subject like Biology needs separate content trees for different curricula, year levels and course types (IB, AP, senior, stage 1/2, units 1 to 4), each with its own topic hierarchy, while still sharing one quiz engine and one results pipeline underneath.

02Goal

18 features, shipped against a live production database.

This wasn't a greenfield build. It was 18 features delivered into an existing system already running for thousands of real teachers and students, where every change had to be verified against production data before it shipped, not just against a local seed database.

03Curriculum engine

Deep, navigable content trees.

Content is organised unit → area of study → topic → sub-topic, expandable per level, with quizzes assignable at any node. The tree has to stay fast and legible even when a single subject has hundreds of nodes across multiple curriculum variants.

04Quiz engine

A question bank that scales past hundreds of items.

The quiz review UI needed to stay usable at scale: a compact hex-grid question map so a teacher can jump straight to any question, full answer keys, and feedback text, without paging through a long linear list.

05AI feature

AI-generated performance insights, sent on a schedule.

One of three AI features on this engagement: a fortnightly class-performance summary generated from real quiz results and sent by email, with an in-app preview so a teacher can check the content before it goes out.

Production debugging, not just feature work

Two of the harder bugs on this engagement never touched a keyboard shortcut: decompiling shipped DLLs to prove a deploy was byte-identical to what was tested, and tracing a 9.8K-email backlog back to an SMTP provider's silent rate limit rather than a bug in the sending code.

06On the phone

The same content, reflowed for mobile.

Students open this on a school-issued tablet as often as a laptop. The subject grid, the lesson list and the quiz all reflow to a single column rather than being shrunk down.

My subjectsAK
Biology
Units 3 & 4
Biology
Year 10
Chemistry
Units 1 & 2
Physics
Year 10
Biology
Year 11
Chemistry
Year 10
Subject tiles, two to a row.
QuizAK
Genetics › Inheritance patterns › Level 1
Q1/10LEVEL 1
A recessive trait can appear in a child even when neither parent shows the trait.
TRUEFALSE
Answer controls stack instead of sitting side by side.
GeneticsAK
SCIENCE 10 › Genetics
Level 1Level 2Quiz
Inheritance patterns
Dominant and recessive traits
Punnett squares
Sex-linked inheritance
Haploid and diploid cells
Genetic variation in a population
Mutation and its effects
Modelling a monohybrid cross
The lesson list, full width.
07Outcome

Live, serving real schools.

All 18 features are live in production. The system now runs integration tests against isolated containers instead of a shared dev database, after a silently-rejected auth token bug made the case for it. The kind of fix that only shows up once you stop trusting the happy path.

Next case study
Content Automation Pipeline