Design Scheduled Rides

Medium45 min
1 / 30
understanding8 min read

Problem Statement: Advance-Booked Rides

How Problem Statement: Advance-Booked Rides (understanding) informs Scheduled Rides architecture and interviewer depth.

Problem Statement: Advance-Booked Rides

Riders book 15 minutes to 7 days ahead; system locks quoted fare and promises on-time pickup for premium tiers. advance-booked ride platform (Uber Reserve / Lyft Scheduled): riders lock pickup time and fare; a Reservation Ledger commits bookings; a Dispatch Planner assigns drivers in a pre-pickup window (T-30 to T-5); on-demand matching stays separate to protect p99 ETAs.

Mechanism (1)

Riders book 15 minutes to 7 days ahead; system locks quoted fare and promises on-time pickup for premium tiers.

Operational signals

Watch on_time_pickup_rate, planner_lag_sec, soft_hold_expiry_rate, fare_lock_dispute_rate, dispatch_retry_count. Page when on_time_pickup_rate drops below 97% for 30 minutes in any tier-1 airport market.

javaOne Dark Pro
1public final class ReservationCmd1 {
2 private final String reservationId;
3 private final long reservationVersion;
4 private final String pickupMarketId;
5 private final Instant pickupAt;
6 public String reservationId() { return reservationId; }
7}
pythonOne Dark Pro
1@dataclass(frozen=True)
2class ReservationCmd1:
3 reservation_id: str
4 reservation_version: int
5 pickup_market_id: str
6 pickup_at: datetime
typescriptOne Dark Pro
1interface ReservationCmd1 {
2 reservationId: string;
3 reservationVersion: number;
4 pickupMarketId: string;
5 pickupAt: string;
6}

Why interviewers care

Scheduled Rides interviews reward crisp scope, explicit trade-offs, and failure stories—not generic microservice diagrams.

Interview checkpoint

Name one failure story for Problem Statement: Advance-Booked Rides that proves you understand real outages, not happy-path diagrams.

Key Highlights

  • Anchor 1-A: reservation ledger owns writes
  • Anchor 1-B: pickup_market + pickup_week partition
  • Anchor 1-C: pre-dispatch planner with soft holds
  • Anchor 1-D: on_time_pickup_rate SLO
Interview pacing
Spend ~4 minutes on Problem Statement: Advance-Booked Rides; cite on_time_pickup_rate before drawing boxes.
Signal expertise
Separate scheduled supply planning (minutes-hours) from on-demand dispatch (seconds).

Section Rescue Kit

Buzzwords to use:

Pre-dispatch windowReservation ledger

Safe statements:

  • "If pressed on 1, I will quantify on_time_pickup_rate before debating UI."
  • "I will state CP for fare lock even if ETA tiles are AP."
Design Scheduled Rides - System Design | WinJob | WinJob