AI Mock Interview — Spec
AI Mock Interview — Spec
This document specifies how the app runs an AI-driven mock interview using the drill banks in this folder (behavioral.md, sourcing-and-boolean.md, screening-roleplay.md, stakeholder-and-closing.md, recruiting-knowledge.md, and the full-loop drills in mock-interview.md). It's a behavior spec for the future app — there's no app yet — written so the drills and rubrics already in the repo are everything the AI needs.
Goal
Give the learner realistic, repeatable interview practice with structured feedback, approximating a human mock interviewer within the self-serve model. Recruiting loops aren't just Q&A — they're auditions: candidates are asked to run a recruiter screen, probe a vague claim, sell a role, write a cold outreach message, and think aloud through a sourcing whiteboard. This is what turns "I read about interviews" into "I've practiced them dozens of times," including the live role-plays that make recruiting interviews distinctive.
Session flow
- Choose a mode: a single question, a focused set from one bank, or a full mock loop (e.g., behavioral → sourcing exercise → screen role-play → stakeholder/closing, as strung together in the full-loop drills), optionally filtered by
typeordifficulty. - Ask a question. The AI poses a drill's prompt verbatim and waits — it does not reveal the Framework, Model answer, or Rubric.
- Let the learner answer, ideally thinking aloud (typed or spoken). For role-play and live-exercise drills (running a recruiter screen, probing a claim, pitching a role, writing an outreach message, building a Boolean string on the whiteboard), the AI asks the learner to do the thing, not describe it — and may stay in character as the candidate or hiring manager for a turn or two. The AI may give one light nudge if the learner is stuck or silent (e.g., "What's the goal of this screen, and what do you want to cover?"), mirroring a real interviewer — but never feeds the answer.
- Optionally probe with a follow-up a real interviewer would ask ("Why that channel?" / "Which of those requirements is a true must-have?" / "How would you surface salary gracefully?"). In a role-play, the AI can play the candidate's pushback ("I'm happy where I am — why should I move?") or the hiring manager's vague rejection ("none of these are right") and see how the learner responds.
- Score and give feedback against the drill's Rubric when the learner finishes.
Scoring & feedback
- Evaluate the answer against the drill's Rubric signals and the Framework structure. Produce: an overall rating (e.g., Needs work / Solid / Strong), per-criterion notes (what was good, what was missing), and 2–3 concrete, actionable improvements.
- Only after scoring, optionally show the Model answer as a reference — never before.
- Be specific and kind: cite what the learner actually said. The aim is improvement, not a grade.
- In a full mock loop, score each station against its source bank's rubric and give a per-station verdict plus one overall note on the throughline (specific, fair, drives the process, connects the role to what the person wants).
- Watch for the classic misses the rubrics encode across this role's banks:
- Behavioral: not using STAR, vague about what you personally did (all "we"), no measurable result, leaning on a job title instead of influence-through-value, picking a fake weakness, or missing the recruiting parallel.
- Sourcing & Boolean: keyword-matching the whole JD instead of separating must-haves from nice-to-haves, chaining everything with AND (too narrow), forgetting title variation (OR), no NOT for noise, treating result volume as a target instead of a signal, sourcing literally from buzzwords ("rockstar," "many hats") without an intake, or naming vague channels with no link to where that profile actually lives.
- Screening role-plays: no structure or agenda, blurring the recruiter screen into a technical interview, accepting a claim at face value (no "I" vs. "we" probe), dodging or trying to "win" the salary conversation, generic company-centric pitches, fabricated personalization in outreach, or missing bias triggers (school prestige, vague "culture fit," age signals, skipping the consistent process).
- Stakeholder & closing: acting as an order-taker instead of an advising partner, accepting an unfillable req silently (or flatly refusing without quantified trade-offs), bringing no funnel data, taking calibration rejection personally and re-sending similar profiles, leading a close with a money fight, badmouthing the competitor, or ignoring why the candidate was looking (the counter-offer trap).
- Recruiting knowledge: treating time-to-hire as one blob instead of decomposing the funnel to locate the leak, defending speed uncritically without naming quality-of-hire (and offer-acceptance), parroting a job title instead of decoding the role, or blurring ATS (system of record) and LinkedIn (sourcing engine).
Repeat & improve loop
- Each session draws a fresh question (avoid immediate repeats) so practice isn't memorized.
- Track which rubric criteria the learner repeatedly misses across sessions and surface a "focus next on…" summary (e.g., "you often forget to surface salary early," "your Boolean strings AND nice-to-haves as if required," or "your STAR stories slip into 'we' and lose your personal action").
- Tie into the program (
../program.md): mock-interview checkpoints recommend specific drilltypes by week (e.g., behavioral and recruiting-knowledge early to build fluency, then sourcing-and-boolean and screening-roleplay, with stakeholder-and-closing and the full-loop mock before the job hunt).
Guardrails
- The AI is a coach, not a gatekeeper — encourage retrying.
- Never expose the rubric/model answer before the learner attempts the question.
- Keep feedback grounded in the rubric; don't invent criteria.
- In role-plays, stay in character only long enough to test the learner — then step out cleanly to score. Don't let the role-play drift into the AI doing the learner's job (writing their Boolean string, their pitch, or their outreach for them).
- Reinforce fairness: when a learner's screen or note leans on biased signals (prestige, "culture fit," age), flag it the way the bias-awareness rubric does — anchor on job-relevant criteria and a consistent process applied to every candidate.
Inputs the AI uses (already in the repo)
- The drill prompt (the question), its Framework (ideal structure), Model answer (reference), and Rubric (evaluation signals) — from the drill files in this folder (
behavioral.md,sourcing-and-boolean.md,screening-roleplay.md,stakeholder-and-closing.md,recruiting-knowledge.md) plus the cross-station full-loop drills inmock-interview.md. - No additional data needed; the content is the spec.