Files
santifer--career-ops/modes/interview/debrief.md
T
wehub-resource-sync d083df1fdb
CodeQL Analysis / Analyze (javascript-typescript) (push) Failing after 2s
Web CI / web typecheck + build (push) Failing after 1s
Release Please / release-please (push) Failing after 1s
CodeQL Analysis / Analyze (go) (push) Failing after 16s
chore: import upstream snapshot with attribution
2026-07-13 12:02:43 +08:00

9.4 KiB
Raw Blame History

Mode: interview/debrief — Post-Interview Debrief

After a real interview, capture what was asked, assess what landed and what didn't, close gaps before the next round, and update the question bank.


When to Run This Skill

  • Immediately after a real interview (while memory is fresh)
  • After a recruiter call that surfaced new information about the process
  • When the candidate learns the next round format and interviewer

Inputs

  1. Interview debrief from candidate — what questions were asked, how they answered, what felt strong or weak
  2. Interviewer name and role — informs next round prediction
  3. Round outcome (if known) — moved forward / rejected / pending
  4. Next round details (if known) — format, interviewers, timeline
  5. Question bank at interview-prep/question-bank.md — update with real data
  6. Story bank at interview-prep/story-bank.md — add new stories if surfaced
  7. CV at cv.md + article-digest.md (if present) — to ground suggested answers in real experience
  8. Retracted claims at interview-prep/retracted-claims.md (if present) — hard gate; never use a retracted claim in a suggested answer even if the candidate said it in the interview
  9. Role-specific prep file — append debrief notes

Step 1 — Capture What Was Asked

Ask the candidate to list every question they remember, in order if possible. Don't prompt with options — let them recall freely first.

For each question captured:

  • What did they say?
  • How did the interviewer react (positive signal, neutral, pushed back, moved on quickly)?
  • Did they feel confident or uncertain?

If memory is incomplete, ask targeted prompts:

  • "Were there any questions that caught you off guard?"
  • "Was there anything you wished you'd answered differently?"
  • "Did the interviewer follow up on anything — that usually means they wanted more?"

Step 2 — Honest Assessment Per Question

For each question, produce:

**Q: [question]**
- What was said: [summary of their answer]
- What landed: [what was good — be specific]
- What was missing: [gap — precise technical term, missing result, no reflection, etc.]
- Correct/complete answer: [what the full answer should include]
- Status: ✅ Strong / 🟡 Solid / 🔴 Gap

Be direct. If they missed the core concept the question was testing, say so. If an answer was genuinely strong, say that too. The debrief is the most valuable learning moment — vagueness wastes it.


Step 3 — Update Question Bank

For each question debriefed, update interview-prep/question-bank.md:

  • Change status to / 🟡 / 🔴 based on real performance
  • Add gap notes from the debrief
  • Add any new questions that appeared and weren't in the bank yet

If the question bank doesn't exist, create it with the questions from this interview as the seed.


Step 4 — Close the Gaps

For each 🔴 gap identified:

  1. Explain the correct answer — clear, concise, with a worked example (code, calculation, diagram) where it helps
  2. Connect to a real story if possible — "you actually have this in your [existing story from the story bank] — here's how to use it"
  3. Add to role-specific prep file under a "Gaps to Close Before Round N" section
  4. Add to interview-prep/interview-prep-guide.md (if the candidate maintains one) when it's a reusable principle that applies beyond this role

Step 5 — Extract New Stories

Sometimes a real interview surfaces a story the candidate hadn't prepared. If the candidate described an experience they hadn't formalized:

"You mentioned [X] in your answer — that sounds like it could become a proper STAR+R story. Want to build it out now while it's fresh?"

If yes, build it out as a STAR+R story (Situation, Task, Action, Result, Reflection) and append it to interview-prep/story-bank.md.


Step 6 — Next Round Intelligence

If the candidate knows the next round format:

  1. Predict likely questions based on:

    • Next interviewer's role (e.g., senior practitioner → depth in the core skill, design; cross-functional peer → collaboration, domain boundaries; executive → strategy, business impact)
    • What was covered in this round (next round typically goes deeper, not wider)
    • What the interviewer in this round seemed most interested in

    Label every prediction [inferred] — never present a predicted question as if it were sourced from real candidates or insiders.

  2. Build a priority list for next round prep — ordered by gap severity and likelihood of being tested

  3. Suggest running interview/plan with the next round details to build a full prep plan


Step 7 — Probability Assessment (Optional)

If the candidate asks for an honest read on their chances:

Assess based on:

  • Number and severity of gaps (🔴 on fundamentals = higher risk than 🔴 on advanced topics)
  • Interviewer signals (gave specific next round details = positive; vague = neutral; short call = risk)
  • Role fit (years of experience, domain match, location)
  • Differentiators (things the candidate said that most candidates wouldn't)

Be honest. A probability range with clear reasoning is more useful than false confidence.


Step 8 — Save Debrief

Append to interview-prep/{company-slug}-{role-slug}.md:

## Round [N] Debrief — [YYYY-MM-DD]

**Interviewer:** [name, role]
**Round type:** [screening / technical / design-case-study / behavioral]
**Outcome:** [pending / moved forward / rejected]

### Questions Asked
[list]

### Gaps Identified
[list with correct answers]

### Next Round
**Format:** [if known]
**Interviewers:** [if known]
**Priority prep:** [top 3 topics to close before next round]

### Process Intel (recruiter / HM screens — omit if not applicable)
**Comp discussed:** [yes / no — if yes, what was said and what was anchored]
**Timeline:** [any dates or deadlines mentioned]
**Other candidates:** [if disclosed]
**Next steps:** [what the interviewer said happens next and by when]

Step 9 — Write Session Transcript

After the debrief, also write a machine-readable session transcript to interview-prep/sessions/{company-slug}-{role-slug}-{round}-{YYYY-MM-DD}.md. This is a structured record of the round for downstream analysis modes; the speaker-labelled turns let a consumer read either side without re-inferring who spoke. The full contract lives in interview-prep/sessions/README.md.

Format:

---
company: [company]
role: [role]
round: [screen | hiring-manager | technical | system-design | behavioral | onsite | final]
date: YYYY-MM-DD
interviewer_role: [role, if known]
source: debrief
---

## Q1
**Interviewer:** [question as asked]
<!-- competency: tag[, tag...] -->
**Candidate:** [answer as delivered / reconstructed in this debrief]

## Q2
...

Rules for the transcript:

  • Map the round type to the enum above (e.g. recruiter screen → screen, HM screen → hiring-manager, technical deep-dive → technical, design/case-study → system-design).
  • Tag each answer. On the line directly above each **Candidate:** line, emit <!-- competency: tag[, tag...] --> — lowercase-kebab-case, comma-separated for multi-competency answers (e.g. system-design, people-leadership, incident-response). You already assessed each answer in Step 2, so tag from that assessment rather than re-reading. Tags are free-form; pick the competency the question actually tested.
  • Reconstruct the candidate turn faithfully. Use what the candidate reported saying in Step 1, not an idealized answer. The "correct/complete answer" from Step 2 belongs in the debrief file, never in the transcript — the transcript records what happened.
  • source: debrief.
  • The session file lands in a gitignored directory (real names/companies never enter version control); write it without redacting.

Rules

  • Debrief immediately. Memory of interview details degrades fast — within hours, specific questions and reactions are forgotten. Run this skill the same day.
  • Don't soften gaps. A 🔴 gap that gets called 🟡 out of kindness will show up again in the next round.
  • Never put invented claims in the candidate's mouth. Correct/complete answers may draw on general domain knowledge, but any suggested personal claim or metric must come from what the candidate said, cv.md, article-digest.md, or the story bank.
  • Retracted claims are a hard gate. If a claim appears in interview-prep/retracted-claims.md, never suggest the candidate use it — even if they said it in the real interview. Flag it: "That claim is in your retracted list — it's not defensible under pressure. Here's a version that doesn't depend on it."
  • Record new retractions. If the debrief reveals a claim the candidate used in the real interview that they now agree isn't defensible, offer to append it to interview-prep/retracted-claims.md: **"[claim]"** ([context]). Reason: [one-line reason + correct framing if applicable].
  • Extract vocabulary gaps explicitly. If the candidate used an imprecise term where a precise one exists, add it to interview-prep/interview-prep-guide.md under the vocabulary section (if the candidate maintains one).
  • One gap = one fix. Don't overwhelm with a full study plan for every gap. Prioritize the 12 most likely to be tested in the next round.
  • Celebrate what worked. Debrief isn't only about gaps. Name what was strong — it reinforces the right behaviour and builds confidence for the next round.