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.

Want full access now? View Pro pricing