loopprep

Multi-step interview practice

Real interviews don't stop at the first question.

Practice coding questions that add realistic follow-ups to working code, so you can prepare for the tradeoffs, changing requirements, and time pressure of an interview loop.

Python and TypeScript · 22 questions reported at Anthropic and OpenAI

rate-limiter · 17:54 / 45:00
Rate Limiter
Fixed window counter09:14
Sliding window log06:30
Token bucket with burst08:07
Tiers, daily quotas and eviction—
$ run tests
✓ 26 passed · sliding window log
Step 2 solved in 06:30.
Step 3 unlocked: Token bucket with burst

How it works

One problem. Follow-up requirements. The same working code.

This Rate Limiter question has four steps and 45 minutes on the clock. Each step adds a requirement to the solution you have already built.

Every step re-runs every earlier test. You cannot break Step 1 to make Step 3 pass — the same constraint you face when an interviewer adds a follow-up.

Beyond single-function practice

Practice the follow-up, not just the first solution.

Single-function practice

  • Focuses on finding one solution to one prompt
  • Usually ends once the first implementation passes
  • Does not ask your code to accommodate new requirements
  • Gives less practice with late-round tradeoffs
  • Builds algorithm recall and implementation speed

LoopPrep's multi-step practice

  • Shows how far you progressed: for example, 3 of 5 steps in 45 minutes
  • Each step adds a requirement to your existing code
  • Your interfaces need to hold up through the next follow-up
  • Shows which kind of follow-up to practice next
  • Builds comfort with design decisions under time pressure

Timed per step, not just overall

See time spent on each step as well as the full question, so you can spot where a follow-up changed your pace.

Visible test files

Read and run the test modules in a multi-file workspace. When something breaks, you can see the case and understand why.

The bank

24 multi-step questions for experienced engineers.

Start with three questions now. The rest cover the same kind of evolving, practical coding problem.

Transactional Key-Value Store
Grow a plain dictionary into a store with value counts, expiring keys, nested transactions and atomic conditional batches.
Anthropic · OpenAIPython · TypeScript
4 steps · 45 min
Profiler Stack Samples
A sampling profiler hands you periodic call-stack snapshots. Turn them into trace events, then into call records, a total/self time profile, a merged call tree, and finally folded flamegraph output that survives sampling gaps.
AnthropicPython · TypeScript
5 steps · 50 min
Worker Mode Tracker
A coordinator collects integers from worker shards and answers global frequency queries. Start with counting, add removal and top-k, then make the hot query O(1) and let the worker pool grow.
AnthropicPython · TypeScript
5 steps · 50 min
PREMIUM · 21 QUESTIONS · 104 STEPS · 902 TEST CASES
Rate Limiter
Build the rate limiting layer of an API gateway, one policy at a time: fixed window, exact sliding window, token bucket, then per-tier limits with quotas and eviction.
Anthropic · OpenAIPython · TypeScript
4 steps · 45 min
Duplicate File Finder
Walk a directory tree and group files with identical contents, then make it safe for huge files, correct around symlinks, useful as a report, and configurable with ignore rules.
AnthropicPython
5 steps · 50 min
Image Transform Pipeline
Run every source image through every JSON-described transformation pipeline. Build the transform engine, the directory plumbing, the cross product, then the edge cases and the decode-once optimisation.
AnthropicPython
5 steps · 50 min
+ 18 more premium questions
90 steps

Pricing

Keep practicing without a question limit.

No credits, per-question purchases, or daily run quota.

Free
$0

A complete way to experience the multi-step format.

  • 3 full questions, 14 steps
  • Unlimited runs, timers, the real test files
Start coding now
Premium
$12 / month

More full-length questions for continued interview practice.

  • All 24 questions, all 118 steps
  • Multi-file workspaces with the real test files
  • Every new question as it ships
  • Cancel any time — your progress stays
Unlock Premium · $12/mo

Cancel any time. Your saved progress stays with you.

Questions about the questions

Details

Does my code leave the browser?

No. Pyodide and the TypeScript compiler both run in a web worker on your machine; your code and results never reach a server.

Which languages?

Python and TypeScript. 21 of the 24 questions ship in both, with the description and the tests written separately for each rather than translated. Pick the language in the question; your work is kept per language.

Can I stop mid-question?

Yes. Code, step progress and timings persist locally per question. Reset clears one question without touching the rest.

Are these real interview questions?

They are interview-style questions: one premise followed by requirements that build on working code as time runs down.

Why are they all marked Hard?

They are designed to leave room for follow-ups, tradeoffs, and deeper implementation work within a timed session.

What if I cancel?

You keep every free question and everything you've already written. Premium steps re-lock; nothing you solved is deleted.

See how your solution holds up as the problem changes.

Start with a full multi-step question and practice the follow-ups that make interviews challenging.

Start coding now