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
71 practiced
Explain the CAP theorem and apply it to a decision between Cassandra and PostgreSQL for the messaging component of a social network. Discuss trade-offs related to partition tolerance, availability, consistency, operational complexity, and developer experience when choosing either database for message delivery and persistence.
MediumTechnical
60 practiced
How would you design observability and alerting to detect and diagnose cascading failures in a microservices architecture? List the key metrics, tracing and logging approaches, SLO-based alerting rules, and immediate mitigation steps to contain cascading impact before full recovery procedures kick in.
HardTechnical
84 practiced
Design an asynchronous processing pipeline that deduplicates events sent multiple times by clients (at-least-once delivery). Address idempotency keys, dedupe store architecture (size, TTL, eviction), use of transactional outbox or exactly-once sinks, and how deduplication affects throughput and latency.
MediumSystem Design
77 practiced
Design a URL shortening service supporting 100M stored short URLs and 1B redirects per day. Include URL generation strategy (collision avoidance), storage model, redirection latency targets, CDN and cache placement, analytics for clicks, and how to mitigate hot-key problems (very popular short URLs).
EasyTechnical
78 practiced
Explain the circuit breaker pattern and provide a concrete example of how to implement it at a service client level, including the three states (closed, open, half-open), error thresholds, cooldown/backoff behavior, and how to surface circuit state for monitoring and alerts.

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.