Intermediate

The waiting room

Give patients a fast booking acknowledgement while processing confirmations asynchronously.

Kata overview

You do not need to be an expert to start. This kata keeps the stakes low so you can explore trade-offs, adjust the diagram, and see how the system responds.

Healthcare25โ€“40 min
01The scenario

What this system design kata asks of you

Monday mornings are chaos. Patients wake up, feel ill, and all try to book a GP appointment at once. The platform needs to say "we've got your booking" within 200ms - but the actual confirmation requires calling a slow clinic system that takes 1โ€“3 seconds to respond. The answer is async: accept the booking instantly via a fast path, drop it onto a queue, and let a background service confirm with the clinic at its own pace. But queues aren't free - under sustained load, queue wait times grow. The trick is balancing fast acknowledgement against keeping end-to-end time in check.

02Constraints to balance

Operational pressure

  • Fully automated - no operator intervention during the Monday rush.
  • Clinic management systems are external and slow (200ms+ base latency).

Customer and product constraints

  • Budget is tight - the platform serves hundreds of clinics on shared infra.

The waiting room

Healthcare ยท 25โ€“40 min

Intermediate

Trade-offs to explore in the simulator

  • Give patients an instant "booking accepted" response.
  • Process confirmations even when clinic systems are slow.
  • Keep queue backlogs from growing unbounded during peak demand.
  • Keep costs controlled during the Monday morning spike.

What you will learn

  • Distinguish between acceptance latency and processing latency as separate SLAs.
  • Use queues to decouple fast acknowledgement from slow downstream processing.
  • Monitor queue wait as a health signal for async architectures.
  • Choose component sizing for queue consumers based on downstream throughput.
Ready to run

Open The waiting room in the simulator

Sketch your first design, run the traffic and see what the review says. No signup required.