Skip to main content

Claude/ChatGPT Prompt to Run a Timed Rate Limiter System Design Drill

Run a time-boxed mock system design interview on a distributed rate limiter, with probing follow-ups and a graded scorecard at the end.

Fill in the placeholders

Edit the values, then copy your finished prompt.

Your Prompt
prompt.txt
You are a senior staff engineer running a mock system design interview. Be a tough but fair interviewer — ask one question at a time, wait for my answer, and push on weak spots rather than lecturing.

Context:
- Topic: design a distributed rate limiter
- Time box: 45 minutes
- Target level: Senior / Staff engineer
- Scale: 1M requests/sec across 200 services
- Backend constraint: Redis cluster, single-region, sub-ms budget

Drill steps:
1. Make me ask clarifying questions; refuse to hand me requirements I should extract.
2. Push me through capacity estimation for 1M requests/sec across 200 services.
3. Probe algorithm choice (token bucket vs sliding vs fixed window) and tradeoffs.
4. Pressure-test the backend given Redis cluster, single-region, sub-ms budget, including the Redis-down failure mode.
5. Challenge per-user vs per-IP limits, tiers, and client-side hint headers.
6. At 45 minutes, grade me against Senior / Staff engineer with a scorecard and concrete gaps.

Return the interview turn-by-turn, then a scorecard with a verdict and three fixes.

What this prompt does

This prompt runs a timed mock system design interview focused on a distributed rate limiter, with the model acting as a tough but fair staff-engineer interviewer. It's told to ask one question at a time, wait for your answer, and push on weak spots instead of lecturing. The drill walks through six stages: forcing you to extract requirements, capacity estimation, algorithm choice and tradeoffs, backend pressure-testing including the Redis-down failure mode, limit-policy challenges, and a graded scorecard at the end.

Four variables tune the difficulty. [time_box] sets the length of the drill and when grading happens. [target_level] is the seniority bar you're graded against. [request_scale] is the traffic you must size the limiter for during capacity estimation. [backend_constraint] shapes the storage and coordination pressure-testing, including how the system behaves when Redis goes down. The drill deliberately won't hand you requirements you should extract yourself, which mirrors how real interviews start. Because it asks one question at a time and waits for your reply, the session reads like a genuine back-and-forth rather than a lecture you passively absorb.

When to use it

  • You have a system design interview coming up and want realistic rate-limiter reps
  • You can recite token bucket but haven't reasoned about the Redis-down case
  • You want to practice extracting requirements instead of being handed them
  • You're about to design anything load-sensitive and want to pressure-test your thinking
  • You want a scorecard graded against a specific [target_level]
  • You need practice defending algorithm tradeoffs under time pressure

Example output

The interview runs turn by turn: the model pushes you to ask clarifying questions, drives you through capacity estimation for the given scale, probes your algorithm choice between token bucket, sliding window, and fixed window, pressure-tests the backend and the Redis-down failure mode, and challenges per-user versus per-IP limits and tiering. At the time box it produces a scorecard with a verdict against your target level and three concrete fixes.

Pro tips

  • Don't skip the failure-handling stage; how you handle the Redis-down case under [backend_constraint] is where most candidates fall over
  • Set [request_scale] realistically (e.g. 1M requests/sec across 200 services) so capacity estimation is a genuine exercise, not a token one
  • Actually answer one question at a time and think out loud; the drill is built to probe weak spots, so engaging fully is the point
  • Calibrate [target_level] to your real bar so the scorecard's verdict is meaningful rather than flattering
  • Use [time_box] to practice pacing; running out of time before the backend discussion is itself useful feedback
  • Treat the algorithm-tradeoffs step as a chance to defend a choice, not recite definitions

Frequently Asked Questions

Does the interviewer give me the requirements upfront?
No. The drill deliberately refuses to hand you requirements you should extract, forcing you to ask clarifying questions first. This mirrors real system design interviews, where requirement-gathering is itself a graded signal.
Why does it focus on the Redis-down scenario?
Because failure handling is where many candidates stumble. Reciting token bucket is easy, but reasoning about what happens when your coordination backend disappears under `[backend_constraint]` is exactly the depth a senior or staff interview probes.
Can I change the topic from a rate limiter?
This prompt is built specifically around a distributed rate limiter, so the drill steps reference rate-limiting algorithms and failure modes. For a different system you would need a differently structured prompt rather than just swapping a variable.
How honest is the scorecard?
It grades against the `[target_level]` you set, so calibrate that bar accurately. The model can only assess what you actually said in the session, so a thorough, think-out-loud performance gives you a far more useful verdict.
Engr Mejba Ahmed

Need this built for real?

Engr Mejba Ahmed

AI Developer · Software Engineer

I'm Mejba — I design and ship production AI systems, automations, and full-stack apps. If you want this turned into a working solution for your team, let's talk.

More in Technical Interview Prep Prompts

Engr Mejba Ahmed

Engr Mejba Ahmed

AI assistant · trained on my work

👋

Hey there!

Quick Actions

WhatsApp Direct line to me

Chat on WhatsApp

+880 1723 741224 · Replies within the hour on working days

Popular Questions

Engr Mejba Ahmed is connected
Engr Mejba Ahmed is typing...
Engr Mejba Ahmed avatar

✉ Want me to follow up? Drop your email

Engr Mejba Ahmed avatar

📞 Connect Directly

Choose how you'd like to reach me

WhatsApp

+880 1723 741224

Email

mejba.13@gmail.com

✓ Details sent! I'll get back to you shortly.

Powered by OpenAI

335+

Blog Posts

25

AI Courses

63

Projects

Services & Expertise

Pricing & Process

Learning & Resources

Connect & Support