Back to problems
Food Delivery System Design (Mock Interview + Order & Dispatch)
Design a food delivery platform like DoorDash or Uber Eats that connects customers, restaurants, and delivery drivers. The system should handle order placement, restaurant management, driver assignment, real-time tracking, and payments.
Constraints
Functional
Restaurants (menus, orders), order placement, driver assignment, real-time tracking and status, payments (customer/restaurant/driver), ratings and reviews, search (cuisine/location/rating), notifications
Non-functional
Order and assignment < 2s, location every 5s, millions of orders/day, 99.9% uptime, accurate ETA and tracking
Scale
50M users, 5M DAU, 500K restaurants, 1M drivers (200K active); 10M orders/day, peak ~500/s; ~40K location updates/s; ~50 GB/day orders, ~345 GB/day location
Stages ahead
1Requirement Analysis
2API Design
3High-Level Design
4HLD Extensions
5Trade-offs