Design a temporary email service
PremiumBackend systemEasy
- SMTP
- MX records
- TTL expiry
Quick answer
This backend system interview question asks you to design a temporary email service. Aim for a design that meets its requirements at the stated scale, then explain its main components, data flow and trade-offs. Interviewers want to see how you scope the problem, size it and defend each choice.
The problem
Design a temporary email service, like the disposable inbox sites people use to sign up without sharing a real address. A user gets a random address that receives mail for 5 hours, then the address and all its mail expire. The hard parts are taking in a large mail volume and deleting expired data on time and cheaply.
The user opens the site, gets an address such as [email protected] and watches the inbox in the browser. Mail is receive-only: users read messages and download attachments but cannot send or reply.
What must a temporary email service do?
- Create an address: One call returns a random address and a secret inbox token; the address expires 5 hours after creation.
- Receive mail: Accept mail for live addresses over SMTP and reject mail for unknown or expired addresses.
How well must it do it?
- Timely expiry: Expired mail is never served after its expiry time, and its stored data is deleted within 1 hour.
- No lost mail: Handle 600 incoming messages per second at peak, and never lose a message once it has been accepted.
What scale should you design for?
Use these numbers in your estimates.
The scale numbers unlock with this questionUnlock
Key concepts
- SMTP
- MX records
- TTL expiry
- Object storage
- Time bucketed partitions
- SSE
How you’ll practise
- Requirements
- Estimate
- API and data
- High-level design
- Deep dives
- 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 backend system design round.
- Clarifies the requirements before drawing anything
- Uses a few numbers that actually change the design
- Draws a clear path from the client to storage
- Picks storage and caching with reasons, not by habit
- Explains what breaks first under load and how to fix it
- States trade-offs openly instead of claiming a perfect design
Questions people ask about this interview question
- Which design type is this question?
- It is a backend system question. You design a temporary email service and explain your choices the way you would in an interview.
- Is this question asked at entry level?
- It is marked Easy, so it suits engineers who are new to backend system interviews. It is also a good warm-up before harder questions.
- What should I cover first?
- Start with the requirements: what the system must do, how well it must do it and which numbers change the design. 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