NOTE : This content is presented exactly as it appears in InterviewReady’s System Design Resources on GitHub. All credit goes to the original authors.

These are 20 popular system design questions. Each question requires you to think of how it’s core engineering requirements can be fulfilled.

Since these requirements are (largely) mutually-exclusive, you see a diverse set of engineering patterns while solving them. These patterns help solve problems in both interviews and real-world design discussions.

Social Media App

  1. Design a social media app like Instagram

Booking Systems

  1. Design a seat-booking system like BookMyShow

  2. Design a ticket booking system like IRCTC

Cloud Management and Analytics

  1. Design a cloud solution provider like Amazon Web Services

  2. Design an analytics system like Google Analytics

  3. Design an anomaly detection system like PagerDuty

Payments

  1. Design a payments gateway like Stripe

  2. Design a subscription management system like Adobe

Online Shopping

  1. Design an e-commerce app like Amazon

Chat App

  1. Design a chat application like WhatsApp

Location Based Services

  1. Design a cab-aggregation service like Uber

  2. Design a food-aggregation service like Doordash

Gaming

  1. Design a turn based online-gaming service like Chess

  2. Design a real time gaming service like WarCraft

File Sharing

  1. Design a documentation system like Google Docs

  2. Design a file management system like Amazon S3

Emailing

  1. Design an emailing service like GMail

Video Processing

  1. Design a live-streaming broadcast app like ESPN

  2. Design an on-demand streaming app like Netflix

  3. Design a live-streaming social media app like Twitch


Video lessons: https://interviewready.io/