Design a Webhook Delivery Platform
The naive read is a for-loop. An event happens, look up who subscribed, POST the payload to each URL, done. That version works in a demo and falls apart the first time a customer's endpoint is down for an hour. This is a system because the receiver is code you do not control. It returns 500s, it times out, it goes dark for a day, and it still expects to hear about every event when it comes back.
So the hard parts are not the POST. The first is durability: an event accepted must reach every live endpoint eventually, even across a receiver outage. The second is isolation: one customer whose endpoint hangs for thirty seconds a call must not slow delivery to the thousand customers whose endpoints are healthy. The third is proof. When a customer swears they never got the "fine-tune complete" event, you can show them the four attempts, the response codes, and the signature you sent. Build for those three and the for-loop falls out as the easy part.
One honesty note before the boxes. OpenAI has not published how its own webhook plumbing is built, so nothing here is a claim about their internal servers. Webhook delivery is a well-worn pattern, and the public platforms that run it document the same moves: a signed payload, at-least-once delivery, exponential backoff, a dead-letter parking lot.
- 1 problem, worked step by step
- 1 diagram
- about 40 min
Premium lessonOpenAI interview guide
These took digging.
What candidates walked out with, from 20,000+ reports, forum threads behind logins and write-ups in Chinese. Then solved step by step.
100 companies. Checked every month.
Unlock all 100 companies$49 a year · less than $1 a week · Cancel anytime
OpenAI interview guideKnow what OpenAI asks before you walk in.
11 coding · 6 system design · 19 behavioral questions
Get their questions first.
InterviewLegend is independent and not affiliated with or endorsed by any company it covers.