Design a basic message queue system
PremiumDistributed infrastructureHard
- Message queue
- Distributed systems
- Asynchronous processing
Quick answer
This distributed infrastructure interview question asks you to design a basic message queue system. Aim for a design that keeps working across many machines and failures, then explain partitioning, replication, coordination and trade-offs. Interviewers want to see how you reason about failures, consistency and scale.
The problem
Design a basic distributed message queue system similar to RabbitMQ, Kafka, or SQS that enables asynchronous communication between services.
What must a basic message queue system do?
- Producers can publish messages to a queue or topic.
- Consumers can subscribe to queues or topics and process messages.
How well must it do it?
- The system should be highly available and fault tolerant.
- Message publishing and consumption should have low latency.
What scale should you design for?
Use these numbers in your estimates.
The scale numbers unlock with this questionUnlock
Key concepts
- Message queue
- Distributed systems
- Asynchronous processing
- Fault tolerance
- Consumer scaling
- Message persistence
How you’ll practise
- Requirements
- Estimate
- Data model and API
- Partitioning and replication
- Consistency and failures
- Wrap-up
Lala, personalized to you, gives a hint when you ask and reviews your design when you are ready.
What do interviewers look for?
In any distributed infrastructure design round.
- States the consistency and availability guarantees up front
- Explains partitioning and replication choices
- Describes how nodes agree and recover after failures
- Handles network partitions and slow nodes
- Plans for adding and removing capacity safely
- Names the trade-offs instead of hiding them
Questions people ask about this interview question
- Which design type is this question?
- It is a distributed infrastructure question. You design a basic message queue system and explain your choices the way you would in an interview.
- Is this question asked at entry level?
- It is marked Hard. It suits engineers preparing for senior interviews, where you are expected to drive the discussion and go deep on trade-offs.
- What should I cover first?
- Start with the guarantees the system must give and the failures it must survive. Agree on scope with the interviewer before you design anything.
- Can I practise it for free?
- It is a premium question. Sign up and unlock it once for 10 credits; it then stays unlocked. When you finish, Lala, your personalized AI mentor, can review your design for 30 credits.
Related questions
Updated · Written by the SevyDevy team