Case study

Jazdo: driving school scheduling without double bookings

The problem

A driving school's office juggles instructors' hours, cars in for service and learners' availability, often in a paper calendar or a spreadsheet. One mistake means a learner and an instructor standing next to a car that's somewhere else.

Key features

Engineering challenge: no double booking, even under pressure

Checking the calendar before saving isn't enough: two dispatchers can check at the same moment and both see a free slot. So the rule lives in the database. Time is split into five-minute buckets in an occupancy ledger with a unique index, so the second booking of the same instructor or car simply can't be saved. Rescheduling is atomic: the lesson moves completely or not at all.

Architecture and technology

An ASP.NET Core (.NET 10) API with EF Core, on a shared platform for tenant isolation, roles, audit log and a notification outbox; an Angular 21 web app. Scheduling rules are covered by automated integration tests.

Related