# Design a doctor appointment booking system: system design interview question

> Provider search and appointments across clinics, with stale calendars, concurrent requests, and uncertain appointment results.

Source: https://sysround.com/questions/design-doctor-appointment-booking-system
Updated: 2026-11-05


Difficulty: hard. Levels: Senior, Staff+.

## How the interviewer opens it

"Design a platform where patients find providers and book appointments across clinics. The platform must prevent provider conflicts and reflect clinic schedule changes."

## What to clarify first

- Coverage
- Request volume
- Latency
- Consistency and durability
- Calendar ownership and clinic contract
- Clinic changes
- Appointment times
- Patient flow
- Retention and access
- Scope limits

## Scope of a strong answer

Core requirements:

- Find providers by location, specialty, and date
- View available appointment times
- Book or cancel an appointment without provider conflicts
- Reflect clinic schedule changes in displayed availability

Usually out of scope:

- Medical records and clinical advice
- Insurance claims and payments
- Room and equipment schedules
- Conflicts between a patient's appointments
- Implementation of clinic calendar systems

## What interviewers probe

### Provider time conflicts

Patients and clinic staff can reserve overlapping intervals through different channels. A local check cannot protect a calendar that other systems also change.

### Changes to availability

Clinic changes can arrive late, twice, or out of order. The platform must repair its calendar view without treating stale availability as a reservation.

### Repeated requests and uncertain outcomes

A clinic can accept an appointment before the platform receives the result. A cancellation can arrive while the original result remains unknown.

## Common mistakes

- The design treats the local availability view as the authority for reservations.
- The design uses a local lock that clinic staff can bypass.
- The design checks equal start times but misses partial overlaps.
- The design treats a timeout as proof that the clinic rejected the appointment.
- The design assumes retries are safe without a clinic deduplication contract and a retention limit.
- The design assumes asynchronous database replication preserves every acknowledged request after a zone failure.

## The bar by level

- **Senior:** Defines calendar authority across all appointment sources. Handles uncertain results, durable cross-zone acknowledgment, cancellation races, and event repair. Explains time-zone behavior.
- **Staff+:** Tests whether clinic contracts support the guarantees. Defines retention limits, degraded behavior, and regional failure boundaries. Plans source migration, auditable recovery, and privacy controls.

Practice this question with an AI interviewer: https://sysround.com/practice/new?problem=doctor-appointment-booking


---
SysRound (https://sysround.com) is an AI practice tool for system design interviews. It has a voice or typed AI interviewer and a shared whiteboard. At the end, you get feedback on each skill and a model answer. The AI feedback can be wrong.
