Interview Question
You need to process a task that may take several seconds. Explain when you would keep the request synchronous and when you would make it asynchronous.
What a Strong Answer Should Cover
- Clarify user experience and latency expectations
- Consider failure and retry behavior
- Explain decoupling and queueing trade-offs
- Consider operational complexity and cost
- State how the client learns the final result
Common Mistakes
- Jumping to a technology before clarifying the problem
- Explaining the solution without the reasoning or trade-offs
- Omitting verification, failure handling, or prevention
Interviewer Follow-ups
- What requirement would make your decision change?
- How would you handle retries or partial failure?
- What would you measure after launch?
What the interviewer is testing
- Requirements and constraints
- Architecture and trade-offs
- Reliability, security, cost, and operations
Real-World Sample Answer
A strong real-world response should connect requirements to engineering decisions, explain why the chosen approach fits the constraints, and make failure, security, cost, observability, and verification explicit.