A payment-confirmation worker sometimes fails to process messages (downstream timeout). Failed messages are currently discarded permanently. Add a DLQ.
A Dead Letter Queue (DLQ) receives messages that a consumer repeatedly fails to process — after N retries, the broker moves them to the DLQ instead of discarding them. This ensures no message is permanently lost to a transient failure, and the poisoned events remain available for inspection and manual or automated replay. Use a DLQ with any asynchronous consumer that can fail: payment processing, external integrations, data pipelines — every production queue should have one.
Evaluation criteria and weights will be revealed after you submit your solution. This ensures a fair assessment of your design skills.
Draw your architecture diagram, explain your design decisions, and get AI-powered feedback.
For the best experience, design challenges on a desktop or tablet — drawing the architecture on a phone is hard.