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
Food Delivery System Design (Mock Interview + Order & Dispatch)