The Velvet Rope
A medium Python mock interview question on DataDriven. Practice with AI-powered feedback, real code execution, and a hire/no-hire decision.
- Domain
- Python
- Difficulty
- medium
- Seniority
- L4
Interview Prompt
Implement per-user sliding-window rate limiting. The test harness calls the driver `RateLimiter_driver(label, max_requests, window_seconds, calls)`, where `calls` is a list of `[user_id, timestamp]` pairs replayed in order. Construct one `RateLimiter(max_requests, window_seconds)` and, for each call, invoke `allow(user_id, timestamp)`. A call is allowed (returns True) when that user has strictly fewer than `max_requests` previously-allowed calls inside the half-open window `(timestamp - window_seconds, timestamp]`; a previously-allowed call at exactly `timestamp - window_seconds` has expired and does not count. Otherwise the call is denied (returns False). Only allowed calls are recorded against the user. Each user has an independent window. Return the list of booleans, one per call, in order.
Summary
Some users get in. Others wait outside until the window resets.
How This Interview Works
- Read the vague prompt (just like a real interview)
- Ask clarifying questions to the AI interviewer
- Write your python solution with real code execution
- Get instant feedback and a hire/no-hire decision