Design A WhatsApp-Style Messaging System

Quick Overview

Study a WhatsApp-style messaging system design prompt covering durable message storage and near real-time delivery. The question targets conversation models, WebSocket fanout, offline sync, ordering, idempotency, group messaging, and operational metrics.

Design A WhatsApp-Style Messaging System

Company: Whatnot

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

Design a messaging system similar to WhatsApp. Users should send one-to-one and group messages, receive messages in near real time, and recover message history after reconnecting. ```hint Hint 1 Start by naming the core entities, constraints, and success criteria. ``` ```hint Hint 2 Make the trade-offs explicit before going deep on implementation details. ``` ### Constraints & Assumptions - The design should cover core messaging, not every social feature. - Messages must be durable. - Online users should receive low-latency delivery. - Offline users should receive messages when they reconnect. ### Clarifying Questions to Ask - Are end-to-end encryption and media attachments required? - What scale should be assumed for daily active users and messages per second? - Are read receipts and typing indicators required? - What ordering guarantees are needed within a conversation? - How long should message history be retained? ### What a Strong Answer Covers ```premium-lock What a Strong Answer Covers ``` ### Follow-up Questions - How would you add read receipts? - How would you handle a user sending the same message twice? - How would you scale a group with thousands of members? - What changes for end-to-end encryption?

Overview: Study a WhatsApp-style messaging system design prompt covering durable message storage and near real-time delivery. The question targets conversation models, WebSocket fanout, offline sync, ordering, idempotency, group messaging, and operational metrics.

|Home/System Design/Whatnot
Whatnot logo
Whatnot
May 8, 2026
mediumSoftware EngineerTechnical ScreenSystem Design
9
0

Design a messaging system similar to WhatsApp. Users should send one-to-one and group messages, receive messages in near real time, and recover message history after reconnecting.

Constraints & Assumptions

  • The design should cover core messaging, not every social feature.
  • Messages must be durable.
  • Online users should receive low-latency delivery.
  • Offline users should receive messages when they reconnect.

Clarifying Questions to Ask Guidance

  • Are end-to-end encryption and media attachments required?
  • What scale should be assumed for daily active users and messages per second?
  • Are read receipts and typing indicators required?
  • What ordering guarantees are needed within a conversation?
  • How long should message history be retained?

What a Strong Answer Covers Premium

Follow-up Questions Guidance

  • How would you add read receipts?
  • How would you handle a user sending the same message twice?
  • How would you scale a group with thousands of members?
  • What changes for end-to-end encryption?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...