← Meta Interview Insights

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

Staff
Jun 2026

Summary

Got a system design round at Meta for an EM role and the question was just 'Design Twitter.' Classic.

Questions Asked (1)

Q1

Design Twitter.

System DesignTechnical Trade-offsProduct Strategy
Author's notes

Wide open question and I spent the first few minutes just trying to scope it down because 'Twitter' is basically everything.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the scope and core features of Twitter (e.g., posting tweets, following, timeline generation) and non-functional requirements like scale, latency, and availability. Then, design a high-level architecture that separates concerns (e.g., tweet storage, fan-out service, timeline cache) and dive into critical components like timeline generation and storage choices, discussing trade-offs. Finally, address bottlenecks and scaling strategies such as sharding, caching, and using a hybrid push-pull model for fan-out.

Pro tip: Proactively discuss the trade-offs between fan-out on write vs. fan-out on read, and propose a hybrid approach based on user activity (e.g., push for normal users, pull for celebrities). This shows you understand real-world constraints and can balance competing priorities.

1. Clarify Requirements

Ask questions to define functional requirements (e.g., post tweets, follow users, view timeline, search) and non-functional requirements (e.g., 500M tweets/day, low latency, high availability).

2. High-Level Design

Sketch the main components: clients, load balancers, API servers, tweet service, timeline service, user service, and storage layers (SQL/NoSQL, cache). Explain data flow for posting and viewing tweets.

3. Deep Dive into Timeline Generation

Discuss fan-out strategies: push (write) vs. pull (read) vs. hybrid. Explain how to handle celebrities and inactive users, and how to use caching (e.g., Redis) for fast timeline retrieval.

4. Storage and Scaling

Choose appropriate databases (e.g., MySQL for user data, Cassandra for tweets) and discuss sharding, replication, and indexing. Address how to scale to millions of reads/writes per second.

5. Bottlenecks and Trade-offs

Identify potential bottlenecks (e.g., hot users, timeline generation latency) and propose solutions (e.g., precomputed timelines, CDN for media). Summarize key trade-offs made.

Key Points to Mention

  • Fan-out on write vs. fan-out on read and hybrid approach for scalability
  • Use of caching (e.g., Redis) for timeline and tweet storage
  • Sharding and replication strategies for databases (e.g., shard by user ID)
  • Handling celebrities/hot users with pull-based timeline generation
  • Eventual consistency vs. strong consistency for timeline updates
  • Media storage using object storage (e.g., S3) and CDN for delivery

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