Low & High Level System Design
0% Completed
Low Level System Design
Low Level Design Basic Building Blocks
Learn core LLD concepts like inheritance, association, composition, aggregation, with a quick quiz to test understanding.
SOLID Principles
Understand SOLID principles to design clean, scalable, and maintainable systems, with a quiz to reinforce concepts.
Creational Design Patterns
Learn object creation patterns like Factory, Builder, Singleton, and more, with a quiz to test understanding.
Structural Design Patterns
Learn patterns like Adapter, Decorator, Facade, and Bridge to structure flexible systems, with a quiz to test understanding.
Behavioural Design Patterns
Understand interaction-focused patterns like Command, Observer, State, and Strategy, with a quiz to test concepts.
LLD Topics
Pizza factory
Design a Pizza Factory system from requirements to diagrams, code implementation, and interview Q&A.
SQL Query builder
Design an SQL Query Builder from requirements to diagrams, code implementation, and interview Q&A.
Logger
Design a Logger system covering requirements, diagrams, code, and interview Q&A
Car Price Calculator
Design a Car Price Calculator from requirements to diagrams, code implementation, and interview Q&A.
Weather Station
Design a Weather Station system from requirements to diagrams, code implementation, and interview Q&A.
Ticket management system
Design a Ticket Management System from requirements to diagrams, code implementation, and interview Q&A.
Payment processor
Design a Payment Processor from requirements to diagrams, code implementation, and interview Q&A.
Elevator System
Design an Elevator System from requirements to diagrams, code implementation, and interview Q&A.
Car parking
Design a Car Parking system covering requirements, diagrams, services, logging, design patterns, and complete code implementation.
Introduction Video
Video - 00:00:55 mins
Use Case Diagram
Video - 00:3:44 mins
Class Diagram
Video - 00:6:07 mins
Class Diagram continued
Video - 00:5:30 mins
Services
Video - 00:9:57 mins
Parking Service
Video - 00:7:59 mins
Discussion on Parking Spots and Parking Service
Video - 00:8:13 mins
Activity Diagram
Video - 00:4:17 mins
Coding Part 1
Video - 00:34:45 mins
How to add Logging in the system
Video - 00:2:20 mins
Coding Part 2 (Adding Logging in the system)
Video - 00:6:03 mins
Implementing Parking pots using Decorator Design pattern
Video - 00:2:35 mins
Coding Part 3
Video - 00:12:12 mins
Requirements
Reading
Identification of actors
Reading
Use case diagram
Reading
Class diagram
Reading
QnA
Reading
Activity Diagram
Reading
Code
Reading
Social media
Design a Social Media system from requirements to diagrams, code implementation, and interview Q&A.
WhatsApp
Design a WhatsApp-like system from requirements to diagrams, code implementation, and interview Q&A.
Amazon
Design an Amazon-like system from requirements to diagrams, code implementation, and interview Q&A.
PayPal
Design a PayPal-like payment system from requirements to diagrams, code implementation, and interview Q&A.
Assignment
Apply design patterns by implementing the Snakes and Ladders game end-to-end.
High Level System Design
High Level Design ( Building Blocks )
Learn core HLD concepts like scalability, consistency, caching, databases, real-time systems, and GenAI-enabled APIs.
What is HLD?
Reading
Consistent Hashing
Reading
Caching
Reading
Load Balancing
Reading
CAP Theorem
Reading
Indexes
Reading
Redundancy and Replication
Reading
SQL vs NoSQL
Reading
Data Partitioning
Reading
Long Polling and WebSockets
Reading
Retrieval Augmented Generation (RAG)
Reading
Quorum
Reading
Gen AI-enabled API Systems
Reading
TinyURL
Design a TinyURL system covering requirements, capacity planning, APIs, databases, caching, scaling, and testing.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High-Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Test
Reading
Rate Limiter
Design a Rate Limiter covering requirements, capacity planning, APIs, data storage, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Typeahead suggestion (Google queries)
Design a Typeahead system covering requirements, capacity planning, APIs, data storage, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Pastebin
Design a Pastebin-like system covering requirements, capacity planning, APIs, databases, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
DropBox
Design a Dropbox-like system covering requirements, capacity planning, APIs, storage, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Instagram
Design an Instagram-like system covering requirements, capacity planning, APIs, databases, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Messenger
Design a Messenger system covering requirements, capacity planning, APIs, databases, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
BookMyShow
Design a BookMyShow-like ticketing system covering requirements, capacity planning, APIs, databases, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Uber/Ola
Design a ride-hailing system covering requirements, capacity planning, APIs, databases, real-time matching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Newsfeed
Design a Newsfeed system covering requirements, capacity planning, APIs, databases, caching, feed generation, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Youtube/Netflix
Design a video streaming system covering requirements, capacity planning, APIs, storage, caching, scaling, and reliability.
Introduction
Reading
Requirements & Goals of the System
Reading
Capacity Estimations & Constraints
Reading
System APIs
Reading
Database design & Schema
Reading
High Level Design
Reading
QnA
Reading
Purging & Db Cleanup
Reading
Database Partitioning & Replication
Reading
Cache & Load Balancing
Reading
Requirements of PayPal
A Payment Gateway System like PayPal must handle secure, real-time transactions between users, banks, and merchants. The requirements of such a system are categorized into Functional Requirements and Non-Functional Requirements to give a complete overview of what the system should do and how it should perform.
Functional Requirements:
- User Registration and Authentication
The system should allow users to register using a valid email address or mobile number, and create a secure password. Upon login, users should go through secure authentication, including options like two-factor authentication (2FA).
- Account Management
Users must be able to create either personal or business accounts, update personal information, link their bank accounts, credit/debit cards, or digital wallets, and view their transaction history.
- Send and Receive Money
The system should allow users to send money to others using email or mobile number, and receive money in their PayPal account, with the option to transfer it to a linked bank account.
- Payment to Merchants and Invoicing
Users (especially businesses) should be able to make online payments to vendors or e-commerce platforms. It should also allow creation and sending of invoices directly from the PayPal account.
- Currency Conversion
The system should automatically convert the currency when users transact in different countries, based on real-time exchange rates and applicable service charges.
- Dispute Resolution & Refunds
A built-in resolution center should exist where users can raise disputes for unreceived items or fraud. The system must also allow for partial or full refunds of transactions.
Non-Functional Requirements:
- Security and Compliance
The system must comply with PCI-DSS standards, SSL encryption for all communications, and implement fraud detection algorithms to safeguard user data and funds.
- Performance and Scalability
The application should be able to handle thousands of concurrent transactions without lag, ensuring minimal downtime even during peak traffic.
- Availability and Reliability
The system should ensure high availability (ideally 99.999%) with backup systems and recovery protocols to prevent transaction loss in case of system failure.
- Audit and Logging
Every action (like login, money transfer, refund) should be logged for auditing purposes. This is crucial for debugging, legal compliance, and preventing financial misuse.
- Platform Compatibility
PayPal must be accessible via web browsers, mobile apps (Android/iOS), and API integrations with third-party platforms such as e-commerce websites and point-of-sale systems.
- User Interface and Experience (UI/UX)
The interface should be intuitive, responsive, and user-friendly for all types of users, providing accessibility support and multi-language options where applicable.