Design Store Locator

Medium35 min
1 / 30
understanding9 min read

Problem Statement: Omnichannel Store Locator

Problem Statement: Omnichannel Store Locator — store locator interview depth

Problem Statement: Omnichannel Store Locator

Design an omnichannel store locator: shoppers discover brick-and-mortar stores near a geo point, see accurate hours and services, and — when a SKU is in scope — learn whether that store can fulfill a pickup today. At Walmart/Target scale this is not a static map-pin page; it is a read-heavy geospatial product fused with near-real-time inventory from store backrooms and POS feeds.

The scale and the shape

Walmart operates ~4,700 US stores, Target ~1,900, Best Buy ~1,000 — a small dataset (the entire catalog fits in RAM) serving a large read load: roughly 45M locator MAU at a p95 search under 300ms. The hard part is never the store count; it is fusing a tiny, slow-changing store catalog with a large, fast-changing inventory signal and ranking the result by proximity in milliseconds.

Why fusion is the whole problem

The failure mode that defines the product is treating the locator as a CMS-only page with no inventory truth. Show "in stock" that is not, and the shopper drives to the store, the BOPIS order cancels, and NPS craters. So the locator must answer two questions at once — which stores are near me (geo) and can this one actually fulfill (inventory) — and it must be honest about freshness when the POS feed lags. That fusion, and the honesty about its staleness, is what a Walmart/Target interviewer is actually probing.

Key Highlights

  • Omnichannel locator: geo search with filters (services, hours, distance) + optional SKU-level in-stock at store granularity + handoff to BOPIS/curbside
  • Small dataset (~4,700 Walmart / 1,900 Target / 1,000 Best Buy stores, fits in RAM), large read load (~45M locator MAU, p95 search <300ms)
  • The whole problem is FUSION: a tiny slow store catalog + a large fast inventory signal, ranked by proximity in milliseconds
  • Defining failure: a CMS-only page with no inventory truth -> 'in stock' that isn't -> BOPIS cancellations + NPS damage; be honest about freshness when POS lags
Staff+ signal
Link Problem Statement: Omnichannel Store Locator to measurable p95 search latency and ATP staleness SLO—not generic microservices.
Avoid
Treating the locator as a CMS-only page without inventory truth causes BOPIS cancellations and NPS damage.

Section Rescue Kit

Buzzwords to use:

H3 Geo IndexATP Materialization

Safe statements:

  • "For Problem Statement: Omnichannel Store Locator, I'll separate geo discovery (AP, fast) from stock commitment at BOPIS (CP)."
  • "If inventory shard fails, I degrade to store list without ATP—not a 503."
Design Store Locator - System Design | WinJob | WinJob