Distributed architecture with load balancers, queues, worker nodes, and a database, handling 10,000 requests per second
Scenario Questions
0-2 years experience
1How would you capture a button click on the website and reliably send that event to a backend service?
2If the user's browser loses network connectivity, what strategy would you use to avoid losing events?
3What could go wrong if the event payload exceeds the size limit of your HTTP request?
2-5 years experience
1We need to add a new funnel step that tracks page scroll depth. How would you extend the existing pipeline to compute this metric in real time?
2Our dashboard started showing a 30‑second delay after a recent deployment. What are the likely reasons and how would you debug it?
3When choosing between Kafka and Kinesis for event ingestion, what trade‑offs would you consider for a startup versus a big‑tech environment?
5-8 years experience
1Design an ingestion layer that can sustain 10 k events per second with occasional spikes to 100 k. Which components would you pick and how would you scale them?
2Explain how you would achieve exactly‑once processing across the stream processing stage and why it matters for analytics.
3Discuss the latency vs. consistency trade‑offs when aggregating per‑user sessions in real time versus near real time.
8+ years experience
1Our legacy system runs nightly batch jobs for analytics. How would you migrate to a real‑time platform while keeping existing reports stable?
2Design the system to support multiple tenants with strict data isolation and GDPR compliance. What architectural changes are required?
3What governance, observability, and cost‑control practices would you put in place for a cross‑team real‑time analytics service?
Follow-up Questions
How would you monitor and alert on pipeline back‑pressure?
What would you change if you needed sub‑second query latency?
How do you handle schema changes without breaking existing consumers?
Sharethis question
Share via WhatsApp, X, Facebook, LinkedIn or copy link. Open Graph preview enabled.