Loading...
Loading...
Browse 6 real-world technical and behavioral interview questions about Microservices. Review scenarios, edge cases, and architectural best practices.
A saga has no rollback. Each step already committed in its own database and was visible to everyone, so you can only run new forward transactions that semantically offset it. Compensations are not atomic, some actions cannot be compensated at all, and compensations themselves fail - so a saga needs idempotent handlers and an ordering rule for irreversible steps.
Analyzing architectural resilience patterns, including circuit breakers, bulkheads, adaptive load shedding, and the mitigation of retry storms. Use this distributed systems answer to show the decision, trade-off, and evidence rather than a memorised definition. It also connects resilience to the point an interviewer is testing.
Contract testing has each side verify itself against a shared description of the interaction, so consumer expectations are checked against the provider's real behaviour without the two ever running together. Mismatches surface in each team's own pipeline, not in a shared environment days later. It also connects api testing to the point an interviewer is testing.
The choice turns on team topology and independent deployability, whether domain boundaries are stable, data ownership and distributed-transaction cost, and real operational maturity. Default to a modular monolith with enforced internal boundaries and extract services only on evidence.
Fanning out in parallel is fine while every service can answer independently, but a filter or sort spanning owners cannot be composed at all. Either make one service the driver and hydrate its page of identifiers, or build a read model from events and pay for staleness deliberately.
Draw boundaries on data ownership so exactly one service writes each table, then accept that a workflow crossing them needs a saga of compensating steps and an outbox to make the write and the publish atomic. While the boundaries are still moving, a modular monolith is the honest answer.