How the interviewer opens it
“Design a service that finds documents by meaning, not only by exact words. The service must support a large document collection and return fresh, relevant results.”
The prompt is vague on purpose. The first minutes are for you. Reduce the prompt to the core features and agree on the numbers before you draw.
What to clarify first
- Search behavior
- Corpus size
- Traffic and read:write mix
- Embedding model
- Tenants and filters
- Search latency
- Freshness and deletes
- Availability and durability
- Relevance
- Scope boundaries
The interviewer has the answers. In a SysRound round, Alex gives these answers, as a real interviewer does.
Scope of a strong answer
Core requirements
- Add, replace, and delete documents
- Find relevant documents and return useful text snippets
- Restrict each search to its tenant and requested filters
- Reflect document changes within the freshness target
Usually out of scope
- Answer generation
- Model training
- Text extraction from files
- Access rules for individual documents
- Cross-region failover
What interviewers ask about
- Result quality
- A document can cover many topics. A relevant passage can rank well while duplicate passages or weak document scores reduce result quality.
- Search at full scale
- Tenant sizes and traffic differ. Filters can reduce a large tenant to a small set, which changes the best retrieval method.
- Results after document changes
- Text, vectors, and document state change at different times. Retries can restore old text or deleted documents unless the service controls document versions.
- Changes to the embedding model
- Different models produce incompatible vector spaces. A full corpus update takes time while document changes and searches continue.
Common mistakes
- The design treats a vector database as the complete system and omits a durable document source.
- The estimates ignore passage counts or assume every query scans all tenants.
- The search selects a small global result set before tenant and date filters.
- The service returns multiple passages from one document as separate document results.
- The design assumes an asynchronous delete satisfies the delete acknowledgment rule.
- The index mixes vectors from incompatible models in one search space.
The bar by level
- Senior (L5/E5)
- Quantifies tenant-scoped retrieval costs and embedding load. Chooses exact search or ANN from eligible set sizes and traffic. Handles versions, safe deletes, relevance tests, and a failed search node.
- Staff (L6+/E6+)
- Defines freshness and safety contracts across stores. Designs model transitions with rollback. Sets tenant isolation and recovery budgets. Validates retrieval choices across tenant sizes, filter selectivity, and traffic concentration.
Sources · 1 reference
These records explain where the question appears. A company tag or candidate report does not guarantee a future interview question.
SysRound · 1 record
No company association
Design a semantic search system
Reported date not specified
Source snapshot: Nov 12, 2026
View source