01 · the problem
The brief set the bar in numbers rather than adjectives: process over 500,000 bookings in less than a month, manage capacity individually across more than 300,000 separate slots, and track inventory per collection location. Two constraints made it harder than the volume alone suggests. Every booking is against a real tracker on a real shelf, so overselling a slot means turning somebody away at a counter. And the audience is the general public, including elderly citizens who will use this once, so the interface had to be usable by people the design cannot make any assumptions about.
02 · what i built
Four surfaces, not one, because four different people needed to do four different jobs against the same inventory. Citizens got a web app to find a location, book a slot, exchange a tracker from a previous season and reach support. HPB staff got an admin panel with full control over admins and users, locations, the schedule and availability of every individual time slot, and stock. Support executives got their own portal for the cases that arrive by phone. And each collection location got a scoped view of just its own bookings, so a counter is not looking at the whole country. The client was built in Flutter and React on AWS Amplify, backed by Node.js and MongoDB on AWS Elastic, with admin-level controls held in reserve for tightening capacity if the covid-19 restrictions of late 2021 moved again.
- Citizen booking
- Find a collection location, check eligibility, book a slot, and exchange a tracker from a previous season. One journey, designed to be completed once by somebody who will never see it again.
- Slot-level capacity
- Over 300,000 time slots, each with its own capacity, rather than a single daily cap per site. Capacity is what stops a queue forming at a counter, so it is managed at the resolution the counter actually works at.
- Inventory per location
- Stock tracked separately for every collection point, because a booking is a promise about a physical tracker sitting on a specific shelf.
- HPB admin panel
- Full CRUD over locations, schedules, availability and inventory, plus management of admins and users. Includes the controls to tighten capacity in response to changing restrictions.
- Support portal
- A dedicated surface for customer support executives handling discrepancies and making appointments on a citizen’s behalf.
- Per-location portals
- Each site gets a scoped admin view of its own bookings and stock, so staff at a counter work with their own day rather than the national picture.
03 · what happened
The platform took more than 550,000 bookings, of which over 350,000 were processed, moved upwards of 1.5TB of data, and drew more than 4 million impressions in a single day.
- 550k+bookings taken
- 4M+impressions in one day
- 1.5TB+data transmitted
- 300k+slots managed individually
