Design an e-commerce category page
Company: Instacart
Role: Software Engineer
Category: System Design
Difficulty: hard
Interview Round: Onsite
Design the backend and serving architecture for an e-commerce category page (e.g., /electronics/phones) with faceted filtering (brand, price, rating), sort options (relevance, price, popularity), pagination/infinite scroll, SEO-friendly rendering, caching for high-traffic categories, optional personalization, and near-real-time inventory/price updates. Specify APIs, data models, indexing/search strategy, ranking signals, cache hierarchy (CDN/edge/app cache), read/write patterns, consistency vs. freshness strategy, scaling to 10^6+ SKUs and 10^4 QPS, and approaches for A/B testing, metrics, and monitoring. Discuss key trade-offs and bottlenecks.
Quick Answer: This question evaluates a candidate's ability to design scalable backend and serving architectures for e-commerce category pages, encompassing faceted filtering, sorting, pagination, SEO-friendly rendering, caching strategies, personalization, and near-real-time inventory and price updates.