DoorDash orchestrates three parties: customer orders, restaurant prepares, Dasher picks up + delivers. Real-time optimization at every step.

CustomerRestaurantDasherOrder ServiceMenu + CatalogAssignmentDasher matchingETA EnginePayment + TipsSupport / ChatOrder StoreGeo IndexH3Kafka EventsAnalytics + ML
DoorDash: three-sided orchestration with geo-indexed dispatch + real-time ETAs
Advertisement

Three-sided matching

Order timing, restaurant prep time, Dasher availability. All must align. Wrong = cold food or waiting Dasher.

Three-sided matching

Order timing, restaurant prep time, Dasher availability. All must align. Wrong = cold food or waiting Dasher.

Advertisement

Assignment optimization

Dasher assignment considers distance, current load, batching potential (multi-order pickups). Sub-second decisions.

ETA prediction

Restaurant prep time + Dasher travel + drop-off. Model per restaurant per hour of day. Customer-visible.

Batching

Same restaurant, similar dropoff → same Dasher picks up multiple orders. Higher earnings, lower cost, longer waits.

Real-time comms

Customer ↔ Dasher chat. Restaurant order updates. Push notifications for every state change.

Three-sided matching + geo dispatch + ETA + batching + comms. Food delivery is orchestration at street level.