Practice
1. In the booking flow, at step 4 the Availability Service checks the calendar cache before confirming a booking. What happens if the cache entry for the requested dates is stale or missing at this step?
easy
Solution
Step 1: Trace Availability Service behavior at step 4
The service uses cache for fast reads but must ensure correctness before booking confirmation.Step 2: Handle stale or missing cache entries
Rejecting immediately (A) reduces UX; optimistic booking (C) risks double bookings; async delay (D) hurts latency. Synchronous DB query (B) ensures correctness.Final Answer:
Option B -> Option BQuick Check:
Fallback to DB ensures accurate availability check on cache miss [check]
Hint: Cache miss triggers synchronous DB check for correctness [check]
Common Mistakes:
2. For a globally distributed collaborative editor with many offline users, which approach better supports eventual consistency and offline edits, and why?
medium
Solution
Step 1: Compare OT and CRDT for offline and distributed scenarios
OT typically requires a central server to order and transform operations, making offline support complex.Step 2: Understand CRDT advantages
CRDTs are designed for decentralized environments, allowing local operations to be merged eventually without coordination, ideal for offline edits and global distribution.Final Answer:
Option C -> Option CQuick Check:
CRDTs enable offline edits and eventual consistency without central coordination [check]
Hint: CRDTs merge offline edits without central coordination [OK]
Common Mistakes:
3. At 10x scale, which component in a Blue-Green deployment system is most likely to fail first and why?
hard
Solution
Step 1: Identify scaling bottlenecks
Blue-Green requires two full environments; load balancer scales horizontally; feature flags scale independently.Step 2: Analyze deployment pipeline
Build servers face 10x concurrent builds, causing queueing and delays, blocking releases.Step 3: Compare other components
Load balancer and feature flags can be sharded; doubling environment cost is expensive but not a failure.Final Answer:
Option A -> Option AQuick Check:
Build servers bottleneck at 10x concurrent builds, delaying deployments [check]
Hint: Build servers choke first at 10x concurrent builds, blocking deploys [OK]
Common Mistakes:
4. At 10x scale, which component in a consistent hashing distributed cache system is most likely to fail first, and why?
hard
Solution
Step 1: Identify scaling bottlenecks
Cache nodes scale horizontally; memory limits can be increased. Client hashing logic is local and scales well. Network switches scale with infrastructure upgrades.Step 2: Consistent hashing ring metadata bottleneck
The ring metadata service must update and distribute node membership changes; at 10x scale, frequent updates cause high coordination overhead and latency, becoming the first failure point.Final Answer:
Option A -> Option AQuick Check:
Metadata service update overhead limits scaling first [check]
Hint: Metadata service update overhead limits scaling first [check]
Common Mistakes:
5. At 10x scale, which component in the SLO error budget tracking system is most likely to become the bottleneck first, and why?
hard
Solution
Step 1: Identify stateful components that limit horizontal scaling
The metrics aggregation service maintains counters and error budget state, which are hard to shard without losing accuracy.Step 2: Evaluate other components' scalability
Dashboards (A) are client-side and less critical; Kafka (C) scales well with partitions; alerting (D) can batch and scale horizontally.Final Answer:
Option A -> Option AQuick Check:
Stateful aggregation -> sharding limits -> bottleneck at scale [check]
Hint: Stateful aggregation limits sharding, causing first bottleneck at scale [OK]
Common Mistakes:
