Design Amazon

Expert60 min
1 / 20
understanding5 min read

Problem Statement & Context

What we are building and why it is challenging

Problem Statement & Context

Amazon is a multi-tenant commerce operating system, not a storefront: catalog, search, personalization, inventory, cart, checkout, payments, shipping, and returns all run together at global scale, each with its own latency and correctness budget. It connects hundreds of millions of buyers to millions of sellers and warehouses.

The two journeys

  • Buyer: browse/search → filter → product detail page (PDP) → add to cart → checkout → pay → track → deliver → return/review.
  • Seller: list products + variants + inventory → update price/promos → receive orders → pick/pack/ship → handle returns.

The central tension is the spine of the design

The load-bearing idea is a tension between two opposite requirements: browsing must be fast and cheap (eventually-consistent reads served from caches and search indexes), while money and stock must be correct (strongly-consistent, idempotent writes). A stale recommendation is harmless; a double-charged card or an oversold flash-sale item is not. So the architecture splits into a read-optimized discovery plane and a correctness-critical commerce plane, and almost every later decision traces back to which side of that line a feature sits on.

Scale anchors (state aloud)

  • 300M+ active customers, 100M+ SKUs
  • 2B+ monthly visits → tens of millions of orders/day
  • 5–10× traffic spikes during Prime Day / holidays

Read fan-out dominates the load, but the rare write must never be wrong — that asymmetry is what makes this a classic end-to-end design question rather than a caching exercise.

Key Highlights

  • Amazon is a multi-tenant commerce OPERATING SYSTEM (catalog, search, personalization, inventory, cart, checkout, payments, shipping, returns), not a storefront — connecting 300M+ buyers to millions of sellers + warehouses
  • Two journeys: buyer (browse/search -> PDP -> cart -> checkout -> pay -> track -> return) and seller (list + variants + inventory -> price/promos -> receive orders -> pick/pack/ship -> returns)
  • The spine is a tension between opposite requirements: browsing must be fast + cheap (eventually-consistent cached reads) while money + stock must be correct (strongly-consistent idempotent writes) — a stale rec is harmless, a double-charge or oversold item is not
  • Scale anchors: 300M+ customers, 100M+ SKUs, 2B+ monthly visits -> tens of millions of orders/day, 5-10× Prime Day spikes — read fan-out dominates but the rare write must never be wrong
Frame It as a Commerce OS
Call it a commerce operating system: discovery, conversion, fulfillment, and post-purchase support. This shows you are thinking beyond a storefront.
Latency vs Correctness Split
Browsing can be eventually consistent, but checkout and inventory must be strongly consistent. Explicitly split these paths early.
Avoid Catalog-Only Designs
Many candidates focus on catalog and search only. Always cover checkout, inventory reservation, and fulfillment handoff.
5-Minute Mark
You should be done with context and moving into clarifying questions by now.

Section Rescue Kit

Buzzwords to use:

Two-Sided MarketplaceInventory ReservationIdempotency

Safe statements:

  • "Let me start with the user journeys and why this is hard at Amazon scale."
  • "I will separate low-latency browsing from correctness-critical checkout flows."
Design Amazon - System Design | WinJob | WinJob