Skip to content

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.

Start a practice session

Opens GitHub Codespaces — the free tier works; the interviewer greets you in the terminal.

Print the booklet

The bound PDF: every reference sheet, made for paper.

Why this works

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

  1. Click Start. The container builds in about two minutes — no account setup beyond GitHub, no secrets required.
  2. 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).
  3. Answer one placement question. No menu, no clock unless you ask for one. First sessions always start conversational.
  4. 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.

The interviewer's persona, the sheets, and this site are generated from one public source tree — propose an edit from any page.

A practice room with a resident interviewer. Content is tracked in git; every page links to its source.