Design a Chat System

Design a Chat System

Presence, ordering and delivery receipts
Free
4h · 5 lessons
Overview

Each one worked end to end: requirements, estimates, the first diagram, the bottleneck that appears at scale, and the two or three deep dives an interviewer will push you into.

This module is 07.3 of the 6 in Design Case Studies. It runs about 4 hours across 5 lessons, and closes with Presence — Hold a million live connections and deliver every message once, in order, including to the phone that was in a tunnel.

Lessons
1. Requirements: 1:1, group and presence

Case study · 25 minutes

2. Connection management at a million sockets

Case study · 40 minutes

3. Message ordering and the sequence number

Case study · 40 minutes

4. Offline delivery and push notification

Case study · 35 minutes

5. Read receipts, typing and the chatty channel

Case study · 30 minutes

Module information
Duration
4 hours
Lessons
5
Level
Advanced
Track
Design Case Studies
Drill
Presence
Price
Free

Related modules

Design a Rate-Limited Public API
3 hours
5 lessons
Advanced
Design a Rate-Limited Public API
Free
07.4
Design a Video Platform
4 hours
5 lessons
Advanced
Design a Video Platform
Free
07.5
Design a Payment System
4 hours
5 lessons
Advanced
Design a Payment System
Free
07.6
Design a URL Shortener
3 hours
5 lessons
Advanced
Design a URL Shortener
Free
07.1