System Design & Architecture

37 interview prep topics with adaptive MCQ tests.


System Design
System Design interviews assess a candidate's ability to architect large-scale, distributed software systems from…
Start Test →
Distributed Systems
Distributed systems are the foundation of every large-scale application in 2026, from global financial platforms…
Start Test →
Caching
Caching is a fundamental technique in computer science and system design, crucial for building high-performance,…
Start Test →
Design a Distributed Cache
Designing a distributed cache is a cornerstone of modern system design interviews, testing a candidate's ability to…
Start Test →
Design a Distributed Job Scheduler
Designing a distributed job scheduler is a classic high-level system design problem that evaluates a candidate's…
Start Test →
Design a Distributed Logging and Metrics System
Designing a distributed logging and metrics system is a classic high-scale system design interview question that tests…
Start Test →
Design a Feature Store for ML
A Feature Store is a centralized data management layer that standardizes the definition, storage, and retrieval of…
Start Test →
Design a Notification System
Designing a notification system is a classic high-scale system design interview question that tests your ability to…
Start Test →
Design a Payment System
Designing a payment system is a classic high-stakes system design interview topic that tests a candidate's ability to…
Start Test →
Design a Rate Limiter
Designing a rate limiter is a classic system design interview question that tests a candidate's ability to balance…
Start Test →
Design a Real-Time Chat Engine
Designing a real-time chat engine is a classic, high-signal system design interview question that tests a candidate's…
Start Test →
Design a Recommendation System
Designing a recommendation system is a cornerstone of modern system design interviews, particularly for roles in AI…
Start Test →
Design a Search Autocomplete System
Designing a search autocomplete system is a classic high-scale system design problem that tests your ability to balance…
Start Test →
Design a Ticket Booking System
Designing a ticket booking system is a classic high-concurrency system design interview question that tests a…
Start Test →
Design a URL Shortener
Designing a URL shortener is a classic system design interview question that tests your ability to handle…
Start Test →
Design a Video Streaming Platform: System Design Interview Guide
Designing a video streaming platform is a high-stakes system design problem that tests your ability to handle massive…
Start Test →
Design a Web Crawler
Designing a web crawler is a classic system design interview question that evaluates a candidate's ability to architect…
Start Test →
Design an API Gateway
Designing an API Gateway is a cornerstone of modern system design interviews, reflecting the shift toward microservices…
Start Test →
Bloom Filters
Bloom Filters are space-efficient, probabilistic data structures used to test whether an element is a member of a set.…
Start Test →
Bulkhead Pattern
The Bulkhead pattern is a critical resilience design pattern in distributed systems, inspired by the structural…
Start Test →
CAP Theorem
The CAP Theorem is a foundational principle in distributed systems, asserting that a distributed data store can only…
Start Test →
Circuit Breaker Pattern
The Circuit Breaker pattern is a critical architectural construct in distributed systems, designed to prevent cascading…
Start Test →
Consistent Hashing
Consistent hashing is a fundamental distributed systems technique used to distribute data across a cluster of nodes…
Start Test →
Distributed Tracing
Distributed tracing is the practice of tracking requests as they flow through a distributed system, providing a…
Start Test →
Eventual Consistency
Eventual consistency is a consistency model used in distributed computing to achieve high availability by allowing…
Start Test →
Gossip Protocols
Gossip protocols, or epidemic-style communication, are fundamental distributed systems mechanisms for state…
Start Test →
Idempotency Keys in Distributed Systems
Idempotency keys are a fundamental pattern in distributed systems design, ensuring that repeated requests—whether due…
Start Test →
Load Balancing Algorithms
Load balancing algorithms are the fundamental mechanisms that distribute incoming network traffic across multiple…
Start Test →
Quorum Reads and Writes
Quorum reads and writes are a fundamental mechanism in distributed systems to manage data consistency and availability.…
Start Test →
Distributed Consensus (Raft, Paxos)
Distributed consensus is the foundational mechanism that enables multiple nodes in a distributed system to agree on a…
Start Test →
Sagas and Distributed Transactions
Sagas and distributed transactions represent the standard approach for maintaining data consistency across…
Start Test →
Service Discovery
Service discovery is a fundamental mechanism in distributed systems that allows services to find and communicate with…
Start Test →
Vector Clocks
Vector Clocks are a fundamental logical clock mechanism used in distributed systems to track causality between events…
Start Test →
Message Queue vs Pub/Sub Systems
The architectural divergence between point-to-point message queues and publish-subscribe (pub/sub) systems forms a…
Start Test →
Monolithic vs Microservices Architecture
The architectural decision between a monolithic and a microservices design represents one of the most fundamental…
Start Test →
Serverless Architecture & FaaS
Serverless architecture and Function-as-a-Service (FaaS) have fundamentally shifted how modern engineering…
Start Test →
Twelve-Factor App Methodology
The Twelve-Factor App methodology is a foundational software engineering framework designed by Heroku architects to…
Start Test →
← All Interview Prep Topics