Email Service
Accept every send instantly — and deliver it without dropping a message.
Accept every send fast and keep delivery draining while a customer's newsletter blast triples volume and a worker dies.
Accepting a send and delivering it are different problems — the accept path must never block on delivery. A queue decouples the two, and a worker fleet drains it; the template/suppression store only survives a newsletter blast because a cache sits in front of it.
Components in play
- Ingest API — Accepts a send request and hands it to the queue fast.
- Send queue — Absorbs the accept-to-deliver gap so a burst never blocks the API.
- Delivery workers — Drains the queue and actually sends each message.
- Template/suppression cache — Checks render templates + do-not-send lists without hitting the store.
- Template & suppression store — Source of truth for templates and suppression lists.
Graded on these SLOs
- ≥ 97.00%Sends accepted & delivered
- ≤ 280 msAccept-to-deliver p99
- ≥ 8.0k rpsSustain send volume
- ≤ 88%Worker headroom
- ≤ 9Lean footprint
The brief
Design a transactional email pipeline like SendGrid or Postmark. Customer apps call an API to send an email; a single customer's newsletter blast can triple volume in seconds. Accepting a send and delivering it are different problems — the accept path can never block on delivery, and a template or suppression-list lookup can't become a bottleneck on every single message.
Functional
- Accept a send request via an API and return fast
- Render the template and check suppression lists before delivery
- Deliver reliably and report delivery status
Non-functional
- The accept path must stay fast even during a customer's blast
- Delivery can lag briefly under load, but a job must never be silently dropped
- Template/suppression checks must add near-zero latency per message
Warm-up: design decisions
Optional theory to prime the calls a senior engineer would make before you build.
Solving is a Pro feature
Unlock the on-canvas AI design coach, per-run design reviews, the chaos simulator and all 12 problems for $15/month.
- AI design coach on your canvas — pins failure points & over-engineering
- Honest AI design review on every run
- All 12 problems + unlimited chaos simulator
- Points, levels & leaderboard