InterviewStack.io LogoInterviewStack.io

Event Driven and Asynchronous Architecture Questions

Designing and operating systems that decouple components using asynchronous messaging and event driven patterns. Covers message queues and brokered communication models (for example Kafka, RabbitMQ, Amazon SQS), publish subscribe patterns, producer consumer workflows, background job and task queue design, and when to prefer asynchronous versus synchronous request response interactions. Includes higher level architectural patterns such as event sourcing, Command Query Responsibility Segregation, sagas for distributed transactions, and patterns for decoupling services. Operational concerns include delivery semantics (at least once, at most once, exactly once), ordering guarantees and partitioning, dead letter queues, retry strategies, idempotency, error handling, monitoring and alerting (for example message lag, queue depth), scaling consumers, throughput and latency trade offs, consistency implications, and common use cases such as email sending, batch processing, file processing, notification delivery, and distributed work coordination.

EasyTechnical
73 practiced
Compare Apache Kafka, RabbitMQ, and Amazon SQS for backend message handling. For each broker mention typical strengths, common use-cases, delivery semantics they favor, and one operational trade-off (throughput, latency, ordering, persistence).
MediumTechnical
92 practiced
Implement an exponential backoff retry strategy as a middleware for a Node.js message consumer. The middleware should support max retries, jitter, and configurable base/backoff multipliers. Provide code or clear pseudocode showing retry logic, how failures are bubbled to DLQ after max retries, and where to insert idempotency checks.
EasyTechnical
107 practiced
Describe the difference between publish/subscribe and point-to-point queue (work-queue) messaging models. Provide an example backend scenario for each where one model is clearly preferable and explain why.
MediumTechnical
84 practiced
Explain the transactional outbox pattern and how it helps achieve reliable event publication from a service that uses a relational database. Describe steps required to implement it and trade-offs compared to distributing two-phase transactions.
EasyTechnical
77 practiced
You need to design a backend flow for sending account activation emails asynchronously. Describe the high-level architecture: how the API enqueues work, what the consumer does, retry and DLQ behavior, and how you ensure emails are not sent multiple times for the same request.

Unlock Full Question Bank

Get access to hundreds of Event Driven and Asynchronous Architecture interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.