Design Faceted Product Search at Large Scale

Quick Overview

Design large-scale product search with free-text relevance, price and taxonomy filters, facet counts, and deterministic pagination. Explain index structure, query execution, ranking, catalog updates, and how rapidly changing price or availability reaches search results.

Design Faceted Product Search at Large Scale

Company: Amazon

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design product search that supports free-text queries plus criteria such as price range, category, and nested subcategory. The catalog and request volume are large, filters can be combined, and results need deterministic pagination. ### Constraints & Assumptions - Product price and availability change more often than most descriptive fields. - A product may belong to more than one taxonomy node. - The design must explain indexing, query execution, ranking, and update propagation. - Use qualitative scale assumptions unless the interviewer supplies concrete numbers. ### Clarifying Questions to Ask - Are results keyword-ranked, filter-only, or a blend of relevance and business rules? - How fresh must price and availability be in search results? - Are facet counts required for every query, and do users need locale-specific prices? ### What a Strong Answer Covers - A source-of-truth catalog separated from a denormalized search index. - Exact and range fields for taxonomy and price, plus analyzed text fields for searchable content. - A query plan that applies filters, ranking, stable tie-breaks, and cursor pagination. - Incremental indexing with version checks, replay, reconciliation, and a strategy for stale price data. - Taxonomy evolution, multi-region serving, hot queries, cache boundaries, overload behavior, and quality metrics. ### Follow-up Questions - How would you change the design if price must be exact at checkout but search may be slightly stale? - How would you reparent a large subcategory without blocking search? - How would you detect that one filter combination silently returns incomplete results?

Quick Answer: Design large-scale product search with free-text relevance, price and taxonomy filters, facet counts, and deterministic pagination. Explain index structure, query execution, ranking, catalog updates, and how rapidly changing price or availability reaches search results.

|Home/System Design/Amazon
Amazon logo
Amazon
Aug 22, 2026
mediumSoftware EngineerOnsiteSystem Design
4
0

Design product search that supports free-text queries plus criteria such as price range, category, and nested subcategory. The catalog and request volume are large, filters can be combined, and results need deterministic pagination.

Constraints & Assumptions

  • Product price and availability change more often than most descriptive fields.
  • A product may belong to more than one taxonomy node.
  • The design must explain indexing, query execution, ranking, and update propagation.
  • Use qualitative scale assumptions unless the interviewer supplies concrete numbers.

Clarifying Questions to Ask Guidance

  • Are results keyword-ranked, filter-only, or a blend of relevance and business rules?
  • How fresh must price and availability be in search results?
  • Are facet counts required for every query, and do users need locale-specific prices?

What a Strong Answer Covers Guidance

  • A source-of-truth catalog separated from a denormalized search index.
  • Exact and range fields for taxonomy and price, plus analyzed text fields for searchable content.
  • A query plan that applies filters, ranking, stable tie-breaks, and cursor pagination.
  • Incremental indexing with version checks, replay, reconciliation, and a strategy for stale price data.
  • Taxonomy evolution, multi-region serving, hot queries, cache boundaries, overload behavior, and quality metrics.

Follow-up Questions Guidance

  • How would you change the design if price must be exact at checkout but search may be slightly stale?
  • How would you reparent a large subcategory without blocking search?
  • How would you detect that one filter combination silently returns incomplete results?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...