Systems Analyst interview question
When do you choose synchronous or asynchronous integration?
Choose synchronous integration when the caller needs an immediate result and both services can share availability; choose asynchronous messaging for decoupling, buffering, long work, or retries, while accepting eventual consistency.
Direct answer
What a strong answer covers
How it works
A synchronous call blocks the caller until the callee answers, which is right when the answer is needed to continue and both sides are expected to be up together; it couples their availability and latency. An asynchronous message lets the caller continue and the callee process later, which absorbs load spikes, tolerates the callee being down, and suits long-running or multi-step work; it costs eventual consistency, duplicate handling, and harder debugging. Most systems use both: synchronous for reads and validations on the user’s critical path, asynchronous for side effects and cross-system workflows.
Example
Checking an address against the postcode service during form entry is synchronous because the user is waiting and the result changes what they see next. Sending the confirmation email, updating the CRM, and notifying the warehouse after the order is placed are asynchronous events, so an outage in the CRM never blocks a sale and a burst of orders queues rather than failing.
Common mistakes
- Chaining five synchronous calls so the user request fails if any service hiccups.
- Making a step asynchronous when the next screen depends on its result.
- Going asynchronous without idempotent consumers and creating duplicates on retry.
A useful answer structure
Answer from your own work.
Do not memorise a script: use only examples you can explain honestly in follow-up questions.
Open the desktop workspace and rehearse a clear answer in your own words.