YOUR BRIEF
What to work through
Work through whatsApp as a spoken system design interview. Start by clarifying the scope, sketch a working design and explain the trade-offs behind your choices.
- Create group chats of up to 100 people
- Send and receive messages
- Receive messages sent while offline, kept for up to 30 days
- Send and receive photos and other media
BEFORE YOU START
Constraints to discuss
- Messages reach online users in under 500 ms
- Every message is delivered
- Billions of users and high throughput
- Messages stay on the servers only as long as needed
- Survives the failure of any one component
Need a starting point?
Watch for these common gaps as you prepare:
- Adding chat servers with no way to route between them
- A Kafka topic per user
- Sending attachments through the chat servers
- Writing last seen on every heartbeat
- Relying on TCP timeouts to find dead connections
- Solving scale before explaining how one server works
Why this question is in the collection
These sources connect the problem to company interview reports or preparation guides. They do not guarantee what a company will ask you.
- Meta: Aced lists "Design Facebook Messenger" among the questions Meta software engineers report; Hello Interview’s Meta E6 guide ranks a chat or messaging system fifth on its System Design list.
- Amazon: Fifth on Hello Interview’s list of the system design questions most asked at Amazon SDE III, as a chat or messaging system.
- Uber: Prepfully lists a WhatsApp-style chat app question in Uber’s technical screen.