</>CodexBash
All articles
System design

Design a chat app

A system design walkthrough of a chat application like WhatsApp or Slack: requirements and estimates, WebSocket connections and gateways, message flow and delivery receipts, message storage and IDs, group chats and fan-out, presence, offline users and push notifications, ordering, and scaling.

CodexBash, , 6 min read

"Design a chat application" is a classic system design question because chat combines several hard problems in one familiar product: millions of long-lived connections, real-time delivery, reliable storage, ordering, group fan-out, presence and offline users. This article designs a WhatsApp-style messaging service step by step, covering the decisions an interviewer expects you to discuss and the trade-offs behind them.

Sign in to read the rest

The whole 6 minute article is free with an account, along with every problem, lesson and tutorial. No card.