Start with the problem you are solving: decoupling, load levelling, or async processing. Then discuss the trade-offs you accept: eventual consistency, debugging complexity, and delivery guarantees.
Strong answers identify good use cases: decoupling services, handling spiky workloads, long-running processes, eventual consistency scenarios, and audit trails. Trade-offs include: debugging complexity, eventual consistency challenges, message ordering, idempotency requirements, and operational overhead of running queue infrastructure. Best candidates discuss specific technologies (RabbitMQ, Kafka, SQS) and when each fits.
Senior architecture question. Tests distributed systems thinking. Candidates who default to synchronous calls for everything will hit scaling walls. Those who use queues everywhere create unnecessary complexity. Look for judgment about when each approach fits.