InterviewStack.io LogoInterviewStack.io

System Design and Architecture Fundamentals Questions

Comprehensive coverage of designing scalable, reliable, and maintainable software systems, combining foundational concepts, common architectural patterns, decomposition techniques, infrastructure design, and operational considerations. Candidates should understand core principles such as horizontal and vertical scaling, caching strategies and placement, data storage trade offs between relational structured query language databases and non relational databases, application programming interface design, load distribution and fault tolerance. They should be familiar with architectural styles and patterns including client server and layered architectures, monolithic and microservices decomposition, service oriented and event driven designs, gateway and proxy patterns, and resilience patterns such as circuit breakers and asynchronous processing. Assessment includes the ability to decompose a problem into logical components and layers, define component responsibilities, map data flows between ingestion processing storage and serving layers, and select appropriate infrastructure elements such as application servers caches message queues and database replication models. Interviewers evaluate estimation of scale and load and reasoning about trade offs such as consistency versus availability and partition tolerance latency versus throughput coupling versus cohesion and cost versus complexity, and the ability to justify architecture decisions. Candidates should be able to sketch high level designs, communicate architecture to technical and non technical stakeholders, propose migration paths such as when to combine or transition between patterns, and describe operational runbooks including failure mode mitigation monitoring observability and incident recovery. Practical topics include caching eviction policies such as least recently used and least frequently used load balancing approaches such as round robin and least connections rate limiting techniques replication and sharding strategies and design choices for synchronous request response versus asynchronous queue based messaging. Emphasis is on clarifying requirements estimating constraints proposing reasonable architectures and articulating trade offs and evolution paths rather than only low level implementation details.

MediumTechnical
84 practiced
Explain LRU (least-recently-used) versus LFU (least-frequently-used) cache eviction policies. Given a product catalog service with seasonal hot items and a long tail of infrequent items, which policy is more appropriate and why? Discuss hybrid approaches and operational implications such as memory overhead and workload characteristics.
MediumTechnical
69 practiced
For a social 'feed' feature at 200M users with skewed popularity, discuss when to use replication versus sharding to achieve read and write scalability. Cover fanout-on-write vs fanout-on-read trade-offs, storage cost, read latency implications, handling hot users, and partition management.
MediumSystem Design
69 practiced
Design an asynchronous image processing pipeline: ingestion API accepts uploads, worker pool performs transformations (resize, watermark), and processed assets are served via CDN. Describe components (message queue, worker autoscaling, storage), failure handling (retries, poison queues), idempotency, backpressure handling, and how to scale workers for bursty upload traffic.
HardTechnical
74 practiced
Define appropriate SLIs and SLOs for a critical public-facing authentication API. Propose three SLIs (with methods to measure them), reasonable SLO targets, alerting thresholds, on-call runbook actions per alert level, and strategies to reduce false positives while ensuring user-impacting incidents remain visible.
HardTechnical
67 practiced
Using the CAP theorem, design an architecture for a financial ledger service that requires strong consistency for balance queries but also desires high availability. Explain trade-offs and propose concrete techniques (consensus protocols like Raft/Paxos, leader-based replication, read-after-write guarantees, and caching patterns) to maximize both correctness and availability under realistic failure modes.

Unlock Full Question Bank

Get access to hundreds of System Design and Architecture Fundamentals interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.