Interview Lab
System Design Interview Questions, With the Reasoning
System Design Interview Questions, With the Reasoning
A small set of design prompts with the tradeoffs interviewers listen for — not a 50-box diagram.
Architecture
Tradeoffs, interviews, and the design notes that keep teams aligned.
System Design · Software Engineering · 8 published · 19 in the review queue. Written by Al Beltran.
Interview Lab
System Design Interview Questions, With the Reasoning
A small set of design prompts with the tradeoffs interviewers listen for — not a 50-box diagram.

Retries are not an edge case. If a client can double-submit a payment, a reward, or a provision call, the header that names the attempt is the interface.

Dashboards that cannot tell you whether to wake someone up are decoration. Start from the user promise, then buy traces.

A flag in production is a smaller, reversible risk than a branch that only exists on one laptop. Trunk-based delivery is an operations choice, not a Git fashion.

CRDTs and sync engines are impressive. Users still need a story for conflict, offline writes, and what happens when two cashiers sell the last seat.

429s are not just a WAF rule. They encode who gets capacity, what a client should do next, and whether your API is a partner or a trap.

How an activation-to-reward pipeline using SQS, SNS, Lambda, and Talon.One keeps fintech loyalty flows decoupled and operable.

An event log is a tool for audit and replay. It is not a requirement for every domain object. Most systems need durable facts and a projection, not a conference architecture.
Planned notes stay unpublished until they are written and reviewed. Titles are listed so the topic map is complete. They are not pages.
Senior Software Engineer Interview Questions
Ownership, tradeoffs, incidents, and mentoring — the loop beyond leetcode.
interview · senior · high priority
Designing for Idempotency Across HTTP and Queues
Name the attempt. Store the outcome. Assume every client retries.
architecture · intermediate · medium priority
Rate Limiting Strategies: Token, Window, and Product
Who degrades first, what Retry-After means, and why a global bucket punishes health checks.
architecture · intermediate · medium priority
Caching: Put It Where the Invalidation Story Exists
Browser, CDN, app, database. A cache without a death story is a bug factory.
architecture · intermediate · medium priority
Consistency vs Availability Is a Product Sentence
Write the user-visible lie you are willing to tell. Then pick the database topology.
architecture · senior · medium priority
Event-Driven vs Request/Response: Who Is Allowed to Wait
If the caller must know now, do not hide the work in a topic. If they must not wait, do not do it inline.
comparison · intermediate · medium priority
API Gateway vs BFF: Aggregation Is a Product Surface
A BFF is allowed to be ugly if it matches one client. A public gateway should not be.
comparison · intermediate · medium priority
Multi-Tenant Isolation: Row, Schema, or Cluster
The query you forgot to scope is a security incident. Design the default filter first.
architecture · senior · medium priority
Observability as a Design Requirement
If you cannot name the SLI, you are not done designing the path.
architecture · intermediate · medium priority
Feature Flags as Architecture, Not Leftover Ifs
Cohorts, kill switches, and the flag that became a second routing table.
architecture · intermediate · medium priority
Backpressure in Data Pipelines
What happens when the consumer is slower than the producer. Drop, buffer, or refuse.
architecture · intermediate · medium priority
Authentication vs Authorization Boundaries
Who you are is not what you may do. Put the check next to the resource.
educational · intermediate · medium priority
Search Indexes vs OLTP: Two Jobs, Two Systems
Do not ask Postgres to be your product search forever. Do not ask Elasticsearch to be your ledger.
comparison · intermediate · medium priority
Queues and Poison Messages
A message that always fails must leave the main queue. DLQ is a process, not a folder.
troubleshooting · intermediate · medium priority
Outbound Webhooks as a Product
Signing, retries, and a dashboard for the partner whose endpoint is down.
architecture · intermediate · medium priority
Capacity and SLOs: The Number Before the Diagram
Write p95 and error budget first. The boxes come second.
architecture · senior · medium priority
Strangler Migrations That Ship Weekly
Route a slice, keep the old path, delete when the metrics agree.
architecture · senior · medium priority
Documentation as a Design Artifact
The contract, the sequence, the failure. If it is only in Slack, it is not designed.
informational · intermediate · medium priority
Write the Tradeoff Log, Not Just the Diagram
What you rejected, and why. Future you will need it in an incident.
informational · senior · medium priority