Practice interviews with a resident agent interviewer
The DSA Woodshed
Woodshedding for the whiteboard
A musician doesn't get better by playing more songs — they take the one bar that keeps falling apart into the woodshed, slow it down, and repeat it until it's clean. This is that room for technical interviews: a resident interviewer — kind, exacting, real-world-accurate — helps you isolate the one weak passage and drill it at the tempo your nerves can hold.
It trains one thing: confident, non-panicked reasoning out loud under observation. Your interviewer checks that you showed your work — never that you were a genius.
Opens GitHub Codespaces — the free tier works; the interviewer greets you in the terminal.
The bound PDF: every reference sheet, made for paper.
The evidence behind the practice loop.
How not to panic
The first thing your interviewer offers is not a problem — it's regulation. None of it is ever scored, streaked, or logged.
A racing heart is preparation
That surge is your body delivering oxygen for thinking — it's preparation, not danger. Naming it that way, out loud, measurably improves performance under pressure.
Four sighs, thirty seconds
The arrival reset: a double inhale through the nose, then a long exhale, four times. The fastest known lever on a stressed nervous system — offered once per session, and "no" is always accepted without comment.
Narrated stuck beats silent stuck
In a timed rep, a stuck moment you narrate passes — "I'm blanking for a second" is a passing answer. Going silent is the only failure, and your interviewer will prompt you back before it counts.
No streaks. No badges. No solve counts. Nobody reads your worry-dump. Taking a hint is engagement, not failure.
What a first session sounds like
Illustrative — the interviewer adapts to you.
interviewer: Where do you want to work today — talk a problem through with no clock, write your reasoning as comments in the editor, or a timed board-style rep?
you: No clock. It's my first time here.
interviewer: Good call. Two Sum, no code required — just tell me what the problem is asking in your own words.
you: Find two numbers in an array that add to a target… I think I'd check every pair? That's O(n²) and it feels wrong—
interviewer: It's not wrong, it's a baseline. Say it like that: "brute force is n squared, and here's what I'd trade to beat it."
you: Okay — a hash map. One pass, check for the complement as I go.
interviewer: That's the whole move. Walk me through [3, 1, 4] with target 5, and we're done for today — one clean rep is the win.
Your first ten minutes
- Click Start. The container builds in about two minutes — no account setup beyond GitHub, no secrets required.
- Say the line: "Start my first practice rep." The interviewer is already in your terminal (or one command away — the welcome banner shows exactly which).
- Answer one placement question. No menu, no clock unless you ask for one. First sessions always start conversational.
- Talk, don't grind. Stop clean: one thing that worked, one fix, done. Tomorrow's draw is already queued.
Paper at your side helps — print the booklet before you start.
The library
Everything the interviewer draws on is readable and searchable here — and every page links back to its source in git.
Anywhere a terminal lives
The interviewer is a CLI in a real shell, never an IDE-extension lock-in — which means the same session runs in GitHub Codespaces today, in local VS Code or a bare clone right now, and in self-hosted environments as they land. That includes models you host yourself: terminal agents take endpoint overrides out of the box.