← Brent Shiely, product leader  /  All cases

Availability at digital scale: one answer to "Can I get it?"

Best Buy, 2013 to 2019

The problem

When I joined, Best Buy stored product availability in the item master: the system that describes what a product is, not where it sits or how fast it can reach someone. A product record can't know which stores have units, or how quickly a customer in a given ZIP code can get one. Order management built its own availability picture from each warehouse's feed, so the website and order management often gave different answers. Fulfillment and inventory were one undifferentiated domain.

Before Best Buy could ship from a store, offer pickup at one,, the system first had to know what was in each store.

What I saw

Every purchase button is personal. "Add to Cart," "Pickup Only," "Pre-order" and "Sold Out" should all depend on who is asking. If no store or warehouse can serve a customer for that product and condition, new or Open Box, it's out of stock for that person, even while it's in stock for someone 50 miles away. Getting there meant one definition of availability that every system trusted.

What I built

  • Split the domain: separated Fulfillment and Inventory into two product domains with their own teams and roadmaps.
  • An inventory microservice: I owned the service, built on a NoSQL store, that held every store's and warehouse's sellable units, net of pickup and ship-from-store thresholds, kept within 3 minutes of real time. Order management retired its per-warehouse feeds and consumed this service directly: one definition, used everywhere.
  • A fulfillment microservice on top of it: using that inventory data, it returned each customer's real options by product, store and ZIP code in under 500 milliseconds, fast enough to answer on every page view. Store pickup became a decision based on stock near each customer, not a global per-product flag.
  • One purchase button: a shared component every page used, so the add-to-cart button became a personalized decision for each customer, product and condition: Add to Cart, Pickup Only, Pre-order, home delivery, delivery plus installation, download, or Sold Out. Sold Out now meant no location could serve that customer, not that the item was gone nationwide.
  • Conversion features on the same data: "Ready in 1 hour," inventory held only at checkout, and countdown timers on the last available unit.

The result

  • In August 2014, Best Buy's CEO said store employees could now see all available inventory in the same system, Its CFO said ship-from-store had opened up about $2 billion of inventory to online customers.
  • In March 2015, Best Buy's CFO attributed online growth "primarily" to "substantially improved inventory availability."

What I learned

Before AI or analytics can help, the business needs one definition of the truth. Reconciling it across systems is unglamorous work, and it's what everything else stands on, including every shipping, pickup and delivery promise in the cases that follow.

Three Best Buy laptops for the same shopper in October 2026: one with pickup and next-day shipping, one with shipping only, and a clearance Chromebook whose button reads Unavailable
October 2026. Three laptops, three answers for the same shopper: pickup and shipping, shipping only, and Unavailable. The clearance Chromebook isn't sold out; its remaining units are pickup only at stores too far from this shopper, so for this shopper it's out of stock.
Sources: