Architecture Update

The Resume Factory v2.0

Update: The pipeline described below is live. View the generated Resume here.

In the last 48 hours, we fundamentally replatformed the “Resume Engine.” We moved away from a static Markdown file to a Slot & Variant Architecture driven by a master CSV.

The Strategy: Precision over Automation

The goal isn’t just to generate more resumes; it’s to generate precise resumes. The complexity lies in the hierarchy of needs for a specific role:

The Problem: A recruiter might insist I emphasize “Change Management” or “AI” above all else. If I send them my “Headless CMS” resume, I fail the keyword scan. If I manually rewrite it, I drift from my source of truth.

1. The “Slot & Variant” Data Model

We solved this by treating career history as a database of Slots (Stories). Each Slot contains multiple Variants (Vibes).

This allows us to maintain a single “Golden Record” (CSV) that generates infinite variations without data duplication.

2. Governance: The “Human-in-the-Loop”

The Risk: Generative AI often leads to Achievement Hallucination—inventing metrics to fit a keyword.

The Solution: We restrict AI to the “Extraction Layer” (analyzing Job Descriptions). The “Assembly Layer” (Python) is strictly deterministic. It only picks pre-verified bullets from the Golden Record.

3. Dynamic Metadata Injection

The Ingestion script parses dynamic metadata to adjust the resume’s “Identity” to match the target persona:

4. Future State

We are building toward a “Headless Recruiter Interface”—a system where I can paste a Job Description URL, and the engine automatically assembles the highest-matching valid variants into a PDF.