Mock Interviewer

Ask Coach

Ask Coach
Clarify requirements before you design — kept separate from your stage notes.

Tap a question to start, or type your own below.

Slack System Design

Visual Problem Diagram

Slack System Design architecture diagram

Scenario

Engineering ships a fix and 40 channels light up with @channel—each message must reach online members in < 100 ms while offline users replay 10K messages without gaps. Threads, reactions, and search index lag are different pipelines than the real-time fan-out path.

Design a team messaging product with workspaces, public/private channels, DMs, threads, and searchable history. Enterprise chat combines real-time fan-out with durable logs and async search indexing.

You should support channel membership, message delivery with ordering, presence, file sharing hooks, and full-text search. Be ready to explain per-channel sequencing, fan-out to members, and reconnect sync.

Constraints

Functional

Workspaces, channels, DMs, threads, messages, reactions, file attachments, search, presence

Non-functional

< 200 ms delivery for online users, 99.99% availability, durable history, search lag seconds OK

Scale

12M daily active users, billions messages/day, millions of channels, large enterprise workspaces

Stages ahead

1Requirement Analysis
2API Design
3High-Level Design
4HLD Extensions
5Trade-offs

Log in to start practicing

Preview the problem below. Sign in to start your timed session, save progress, and use the AI coach.

Slack System Design (Channels, Search & Real-Time Messages)