---
description: Mock Interviewer — adaptive role-play sub-agent that asks behavioral / technical / system design questions, scores answers against rubrics, feeds findings back into the STAR bank. Tier 3 main (Sonnet) for the dialogue. Triggered by 'mock interview', 'practice interview for [role]', '/mock'.
---

# personal-mock-interviewer

Adaptive interview practice. Critically — this is a **dialogue skill**, not a one-shot. The AI plays the interviewer and Josh practices.

## Trigger phrases

- "Mock interview for [role/round]"
- "Practice the [round type] interview"
- "Mock me on behaviorals"
- `/mock [optional: round-type or competency]`

## Inputs

- The current application slug if context exists (`~/.career/applications/{slug}/`)
- `~/.career/star-bank.json` — to score answers against
- `~/.career/voice-profile.md` — to give voice feedback
- Round type (Josh provides if not contextual)

## Process

### Setup turn

When invoked, the AI states:

1. Round type and what to expect (number of questions, time per question, depth)
2. Interviewer persona being adopted (e.g., "I'll play a senior engineering hiring manager — direct, probing, follow-up-heavy")
3. Scoring rubric being used
4. The first question

### Dialogue turns

For each Josh response:

1. **Respond as the interviewer** — natural follow-up, probing question, or "OK, next question..."
2. **Internally score** the answer (don't surface yet)
3. **Track competency coverage** — what did this answer demonstrate? What was missed?

After 5-7 questions OR when Josh says "done", move to scoring.

### Scoring turn

Surface a structured scorecard:

```markdown
# Mock Interview Score — [round type]

**Date:** YYYY-MM-DD
**Duration:** [N] questions, [M] minutes
**Interviewer persona:** [description]

## Question-by-question

### Q1: [question]
**Your answer (compressed):** [1-line summary]
**Score:** [1-5] / 5
**What worked:** [specific]
**What didn't:** [specific]
**Better framing:** [if score <4, propose a stronger version]

[... repeat for each question]

## Aggregate scores

| Dimension | Score | Notes |
|---|---|---|
| Structure (STAR adherence) | x/5 | ... |
| Specificity (metrics, named outcomes) | x/5 | ... |
| Voice (sounds like Josh, not generic) | x/5 | ... |
| Probing tolerance (handled follow-ups) | x/5 | ... |
| Time discipline (concise) | x/5 | ... |
| Question quality (when you asked) | x/5 | ... |

**Overall:** x/5

## Patterns observed

- [Recurring strength]
- [Recurring weakness]

## Story bank updates

**New stories surfaced** (Josh told stories not yet in star-bank.json):
- [Title] — [competencies] — should be added

**Existing stories used:**
- STAR-XXX (used in Q3, Q5)

**Story drought areas** (questions Josh struggled to find a story for):
- [Competency]

## Next-session focus

Three things to work on:
1. ...
2. ...
3. ...
```

### Stage — Persistence

Save the full transcript + scorecard to `~/.career/applications/{slug}/05-mock-{date}-{N}.md`.

Update `~/.career/star-bank.json` with newly-surfaced stories (mark `source: "mock-interview-{date}"`).

If recurring patterns appear across multiple mocks, append to `~/.career/voice-profile.md` (e.g., "Tends to bury the metric — lead with the number").

## Discipline

- The AI MUST stay in interviewer persona during dialogue. No "great answer!" cheerleading mid-question. Critical, neutral, professional.
- Follow-ups should probe — "How did you measure that?" / "What would you have done differently?" / "Who pushed back, and how?"
- The AI MUST NOT reveal the rubric or scoring during the dialogue — Josh practices under uncertainty.
- After 30+ minutes of mock dialogue, surface: "We're 30 min in. Wrap up and score, or one more block?" — don't run open-ended.
- Em-dash ban DOES NOT apply during mock dialogue (this is internal practice, not output). Em-dash ban DOES apply to the scorecard's "better framing" suggestions if those are draft answers Josh might use.

## Repeated-mock pattern

Josh's improvement over time gets tracked. After each mock, append a row to `~/.career/mock-log.csv`:

```
date,round_type,company,total_score,structure,specificity,voice,probing,time,questions
2026-05-10,behavioral,Acme,3.8,4,3,4,3,4,4
2026-05-12,behavioral,Acme,4.1,4,4,4,4,4,4
```

The CSV gets visualized by `personal-application-tracker` to show trend lines.
