PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/Uber

Design a Food Delivery Cart

Last updated: Apr 26, 2026

Quick Overview

This question evaluates competency in designing stateful, user-facing subsystems including data modeling, API design, session persistence, caching, consistency, transactional integrity, scaling, and failure handling for cart and checkout workflows.

  • medium
  • Uber
  • System Design
  • Software Engineer

Design a Food Delivery Cart

Company: Uber

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design the cart subsystem for a food delivery platform similar to Uber Eats. The cart should let users: - add, update, and remove items - choose item customizations and add-ons - apply promotions or coupons - see taxes, fees, and subtotal updates - persist the cart across mobile and web sessions - proceed to checkout with a consistent cart snapshot Assume a cart usually contains items from only one restaurant at a time. The system should also handle menu changes, item unavailability, restaurant open or closed status, and price revalidation during checkout. Discuss functional requirements, APIs, data model, storage choices, caching, consistency, scaling, and failure handling.

Quick Answer: This question evaluates competency in designing stateful, user-facing subsystems including data modeling, API design, session persistence, caching, consistency, transactional integrity, scaling, and failure handling for cart and checkout workflows.

Related Interview Questions

  • Design a Stock Trading Platform - Uber (medium)
  • Design an Uber Eats Cart Service - Uber (medium)
  • Design a Scalable Calendar Service - Uber (medium)
  • Design A URL Shortener - Uber (medium)
  • Design Restaurant Search and Monitoring - Uber (hard)
Uber logo
Uber
Apr 21, 2026, 12:00 AM
Software Engineer
Onsite
System Design
178
0
Loading...

Design the cart subsystem for a food delivery platform similar to Uber Eats.

The cart should let users:

  • add, update, and remove items
  • choose item customizations and add-ons
  • apply promotions or coupons
  • see taxes, fees, and subtotal updates
  • persist the cart across mobile and web sessions
  • proceed to checkout with a consistent cart snapshot

Assume a cart usually contains items from only one restaurant at a time. The system should also handle menu changes, item unavailability, restaurant open or closed status, and price revalidation during checkout.

Discuss functional requirements, APIs, data model, storage choices, caching, consistency, scaling, and failure handling.

Solution

Show

Submit Your Answer

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Uber•More Software Engineer•Uber Software Engineer•Uber System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.