How the STAR+R Story Bank Accumulates and Reuses Interview Preparation Stories

The STAR+R story bank automatically accumulates behavioral anecdotes from job applications and enables their reuse across interviews through a structured markdown format that maps stories to specific audiences.

The santifer/career-ops repository implements a systematic approach to interview preparation through a centralized STAR+R story bank that grows with each job application. This single markdown file serves as a curated repository of your best professional narratives, eliminating the need to craft fresh answers for every new interview while maintaining the Situation-Task-Action-Result-Reflection structure.

Automatic Accumulation via the Oferta Mode

The accumulation process triggers automatically during the Oferta mode (modes/oferta.md) when generating Block F (the Interview Plan). According to the source code at lines 72-75, the system checks interview-prep/story-bank.md for existing entries and appends new STAR+R stories only if they are not already present. This logic ensures the bank grows organically without duplicates while capturing context-specific narratives generated for each role.

The relevant implementation logic follows this pattern:

// Inside Block F generation (modes/oferta.md)
for (const story of generatedStories) {
  const entry = `

### ${story.theme} ${story.title}

**Source:** Report #${reportId} — ${company} — ${role}
**S (Situation):** ${story.situation}
**T (Task):** ${story.task}
**A (Action):** ${story.action}
**R (Result):** ${story.result}
**Reflection:** ${story.reflection}
**Best for questions about:** ${story.tags}
`;
  // Append only if not already present
  if (!storyBank.includes(entry)) {
    fs.appendFileSync('interview-prep/story-bank.md', entry);
  }
}

Structured Markdown Format

Each entry follows a strict template defined in interview-prep/story-bank.md (lines 16-25), ensuring machine-readable consistency across all stored narratives. The format includes a theme header, source reference, and the five STAR+R sections, making the bank searchable by topic, question type, or reflection content.

A concrete entry in the story bank looks like this:


### [Leadership] Turnaround of Legacy Service  

**Source:** Report #042 — AcmeCorp — Senior Backend Engineer  
**S (Situation):** The legacy payment service suffered 30% monthly outages.  
**T (Task):** Lead the effort to redesign the architecture and improve reliability.  
**A (Action):** Designed a micro‑service split, introduced circuit‑breaker patterns, and set up automated canary deployments.  
**R (Result):** Reduced outage frequency by 90% and increased transaction throughput by 25%.  
**Reflection:** Learned the importance of incremental rollout and monitoring early‑stage metrics.  
**Best for questions about:** “Tell me about a time you improved system reliability.”

Reuse Across Interview Preparation

The Interview-Prep mode (modes/interview-prep.md) reads the story bank at the start of each session (input list, line 9). During Step 5 (Story Bank Mapping), the mode matches existing stories to the specific audience—whether recruiter, hiring-manager, or peer-tech—and identifies gaps requiring new narratives.

This architecture enables candidates to reuse a core set of 5-10 master stories by reframing them for different behavioral questions. Rather than writing new anecdotes for every interview, you select the appropriate entry from the bank and adjust the emphasis based on the target role's requirements.

The Growth Loop

The system creates a compounding knowledge base where updated stories are written back to the bank after each preparation session. Over time, this produces a curated collection of high-impact narratives that can be re-framed for different roles, reducing preparation time while maintaining answer quality. As implemented in santifer/career-ops, this loop ensures that interview preparation becomes more efficient with each job application rather than starting from scratch.

Summary

  • Automatic accumulation occurs in modes/oferta.md when generating Block F, appending new STAR+R stories to interview-prep/story-bank.md only if they do not already exist.
  • Structured format uses a strict markdown template with theme headers, source references, and standardized STAR+R sections for machine readability.
  • Audience mapping in modes/interview-prep.md reads the bank at line 9 and matches stories to specific interviewers (recruiter, hiring-manager, peer-tech) during Step 5.
  • Compounding reuse allows candidates to maintain 5-10 master stories that can be reframed for different questions, with the bank growing more valuable over time.

Frequently Asked Questions

What does STAR+R stand for in the story bank format?

STAR+R stands for Situation, Task, Action, Result, and Reflection. This extension of the traditional STAR method adds a reflection component that captures lessons learned and growth areas, making stories more adaptable for leadership and behavioral questions.

How does the system prevent duplicate stories from entering the bank?

The Oferta mode (modes/oferta.md lines 72-75) implements a check before appending: it verifies whether a story already exists in interview-prep/story-bank.md by comparing content, and only writes new entries when no match is found. This deduplication happens automatically during the Block F generation process.

Can I reuse the same story for different interview questions?

Yes. The Interview-Prep mode (modes/interview-prep.md) specifically maps stories to questions based on themes and tags rather than one-to-one correspondence. A single story about system reliability can answer questions about leadership, problem-solving, or technical decision-making by adjusting which STAR+R elements you emphasize for the specific audience.

Where is the story bank file located in the repository?

The central store is located at interview-prep/story-bank.md in the repository root. This file is read by the Interview-Prep mode at the start of each session and updated by the Oferta mode whenever new job-specific stories are generated.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →