PracticeSystem DesignAI EngineeringBlogsFAQsTestimonials
This is the free preview of the course. Purchase it to unlock all the contents.
Chapters
Extras
1. Basics
0/2 Chapters2h 18m12 Free
2. Concepts
0/10 Chapters5h 42m8 Free
3. Interview Questions
0/10 Chapters6h 21m34 Free
1. Design an Emailing service like Gmail
0/2246m1 Free
2. Tinder System Design
0/1233m12 Free
3. WhatsApp System Design
0/724m7 Free
System Requirements
Free
One to one messaging
Free
Last Seen Timestamps
Free
Group Messaging
Free
Architecture Diagram
Free
Complete the design - WhatsApp...
Free
Summary - PDF
Free
4. Chess Design: Building a highly scalable turn-based gaming website
0/1345m1 Free
5. Hotstar: Live Video Streaming Design
0/1025m5 Free
6. Google Docs: Collaborative editor design
0/1148m1 Free
7. Design a Cab Aggregator App like Uber
0/746m2 Free
8. Design a Location Based Service like Google Maps
0/953m3 Free
9. WhatsApp Calling App
0/1534m1 Free
10. Recommendation Engine Design
0/1621m1 Free
4. Case Studies
0/8 Chapters25h 41m2 Free

System Requirements

What this lesson covers

This lesson opens a system design of WhatsApp, presented as a template for chat applications in general. It focuses on how to choose features in an interview so that the design can be finished within the hour. The advice is to start simple and lead with features you already understand, since the interviewer often agrees to the first feature proposed. The candidate features discussed are group messaging, image and video sharing, sent, delivered and read receipts, online status with last seen times, and whether chats are temporary or stored permanently. Group messaging and read receipts are described as the features interviewers usually look for, while online status and chat retention are less critical but interesting engineering problems. On retention, the video contrasts apps such as Snapchat and WhatsApp, where chats are kept mainly on users' devices for privacy and to save storage, with office or official communication that may need messages kept permanently for compliance. Image sharing is set aside because it is covered in the Tinder design, which leaves four features for this design, starting with group messaging.

  • Pick a small set of features so the design can be completed in an hour-long interview
  • Group messaging and sent, delivered and read receipts are the features interviewers usually expect
  • Online status and last seen are useful engineering problems even though they are not core features
  • Chats stored only on devices save server storage, while compliance may require permanent storage
  • Image sharing is left out here because the Tinder design covers it