Grokking System Design Interview, Volume II
Ask Author
Back to course home

0% completed

Vote For New Content
Design Gmail
On this page

Let's design a large-scale distributed email service like Gmail.

Step 1: Clarify and Define Requirements

Functional Requirements:

  • Email Composition & Delivery: Users must be able to send and receive emails reliably using standard protocols (SMTP for sending, IMAP/POP3 for retrieval, plus web/mobile clients). The system should support rich text emails and common features like reply, forward, etc. Real-time delivery is expected so that emails appear in the recipient’s inbox quickly after sending.

.....

.....

.....

Like the course? Get enrolled and start learning!

On this page