Practice
1. In the SLO error budget tracking system, at step 4 the Error Budget Calculator receives aggregated error counts and total request counts. What state does it maintain immediately after processing these inputs?
easy
Solution
Step 1: Understand the role of the Error Budget Calculator at step 4
It updates the remaining error budget by subtracting the recent error rate from the total allowed errors, reflecting current SLO compliance.Step 2: Exclude other states that contradict error budget tracking logic
Resetting the budget ignores recent errors; queuing is done later by alerting; discarding counts would lose accuracy.Final Answer:
Option D -> Option DQuick Check:
Error Budget Calculator updates remaining budget after aggregation [check]
Hint: Error budget updates subtract recent errors, not reset or discard [OK]
Common Mistakes:
2. Without the Outbox Pattern in an event-driven saga, what exact failure occurs when a service crashes after committing its local transaction but before publishing the event?
medium
Solution
Step 1: Trace failure without Outbox Pattern
Service commits DB transaction but crashes before event publish, so event never reaches message broker.Step 2: Consequence of lost event
Downstream services never receive update; saga waits indefinitely or inconsistently proceeds.Final Answer:
Option D -> Option DQuick Check:
Crash after commit but before publish -> event lost, saga stalls [check]
Hint: Crash after DB commit but before event publish loses event [check]
Common Mistakes:
3. If the Kafka cluster is unavailable, what exactly breaks in the log aggregation pipeline?
medium
Solution
Step 1: Identify Kafka's role
Kafka buffers logs between producers and processors, enabling decoupling.Step 2: Trace failure impact
If Kafka is down, producers may retry or block, but processors cannot consume new logs, halting enrichment.Final Answer:
Option B -> Option BQuick Check:
Kafka down -> processors stall on new logs, old logs processed [check]
Hint: Kafka outage stalls processors, not immediate producer loss [check]
Common Mistakes:
4. You must choose between a monolithic architecture and microservices for a system with rapidly evolving features and a small team. Which choice best justifies your design decision to the interviewer?
medium
Solution
Step 1: Analyze team size and feature velocity constraints
Small teams benefit from simpler architectures to reduce overhead and speed delivery.Step 2: Evaluate operational complexity of microservices
Microservices add deployment and operational complexity, which can slow small teams.Final Answer:
Option B -> Option BQuick Check:
Monolith reduces complexity, speeds delivery for small teams [check]
Hint: Small teams prefer monoliths for simplicity and speed [check]
Common Mistakes:
5. At 10x scale, which component in the AI Code Assistant system is most likely to fail first due to stateful connection limits, and why?
hard
Solution
Step 1: Analyze vector search scaling
Vector search scales with index size but can shard horizontally; query latency grows but not immediate failure (A incorrect).Step 2: Assess code generator scaling
GPU saturation is a bottleneck but can be mitigated by batching and autoscaling (B less immediate).Step 3: Evaluate API gateway
API gateways are stateless and horizontally scalable (C incorrect).Step 4: Identify WebSocket server bottleneck
WebSocket servers hold stateful connections bound to server memory; sharding existing connections is complex, causing first failure at 10x scale (D correct).Final Answer:
Option C -> Option CQuick Check:
Stateful WebSocket connections limit server scaling [check]
Hint: Stateful WebSocket servers bottleneck scaling first [check]
Common Mistakes:
