← Meta Interview Insights

Meta·Software Engineer·Onsite - System Design / Architecture·Senior

SeniorPrefer not to say
Apr 2026

Summary

Meta system design round for a software engineer role. The question was on designing Facebook Search and it went pretty well, covered all the major areas without feeling rushed.

Questions Asked (1)

Q1

Design Facebook Search.

System DesignTechnical Trade-offsData Modeling
Author's notes

Felt solid going through this.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the scope of Facebook Search (e.g., user search, post search, entity search) and non-functional requirements like scale, latency, and consistency. Then design a high-level architecture that separates indexing, query serving, and ranking, and dive into data modeling and trade-offs for key components. Emphasize how you would handle the massive scale and real-time updates.

Pro tip: Meta cares deeply about trade-offs and scale; explicitly state your assumptions (e.g., 3 billion users, 2 billion searches/day) and justify your choices (e.g., why inverted index vs. graph search). Also, mention how you would leverage existing infrastructure like TAO or Unicorn to show practical maturity.

1. Clarify Requirements and Scope

Ask questions to define what types of search (users, posts, pages, groups) and what features (autocomplete, filters, ranking) are in scope. Establish non-functional requirements: low latency (<200ms), high availability, eventual consistency, and scale (billions of queries per day).

2. High-Level Architecture

Outline the main components: query understanding, retrieval (inverted index, graph), ranking, and serving. Describe data flow from ingestion (crawling, real-time updates) to indexing (batch and streaming) to query processing.

3. Data Modeling and Storage

Design the data models for entities (users, posts) and the inverted index. Discuss storage choices: distributed key-value stores (e.g., TAO for social graph), document stores, and search engines (e.g., Elasticsearch-like). Explain how to shard and replicate for scale.

4. Query Processing and Ranking

Detail how a query is parsed, expanded, and matched against the index. Explain ranking signals (social affinity, relevance, recency) and how to combine them. Discuss caching strategies for hot queries.

5. Trade-offs and Optimizations

Discuss trade-offs: consistency vs. latency, index freshness vs. cost, and precision vs. recall. Mention optimizations like tiered storage, precomputed results, and load balancing.

Key Points to Mention

  • Inverted index for text search and graph-based search for social connections
  • Sharding strategies (e.g., by user ID, by document ID) and replication for fault tolerance
  • Real-time indexing pipeline using Kafka and stream processing
  • Ranking using machine learning models with features like social affinity, engagement, and recency
  • Caching layers (e.g., Memcached, CDN) to reduce latency for popular queries
  • Handling of multilingual and typo-tolerant search (e.g., using n-grams, fuzzy matching)

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.