# Examples — Resume Screening Agent

## Strong match → advance with cited evidence

A candidate clearly meets the required qualifications. The agent advances them and cites the resume evidence per requirement.

**Input**

```
Role: Backend Engineer (required: 3+ yrs backend, modern backend language, relational DBs). Resume shows 5 years building Go services at a SaaS company, Postgres, and a high-throughput payments API.
```

**Output**

```
{
  "role": "Backend Engineer",
  "recommendation": "advance",
  "requirements": [
    { "requirement": "3+ years building production backend services", "status": "met", "evidence": "'5 years building backend services' + roles dated 2021–2026" },
    { "requirement": "Modern backend language (Go/Java/Python/Node)", "status": "met", "evidence": "'Built and maintained Go microservices'" },
    { "requirement": "Relational databases", "status": "met", "evidence": "'Designed Postgres schemas for a high-throughput payments API'" }
  ],
  "strengths": ["High-throughput payments API experience (relevant to our scale)", "5 years > the 3-year bar"],
  "gaps": [],
  "interview_focus": ["Depth of distributed-systems experience (a preferred item)", "Ownership scope on the payments API"],
  "fairness_note": "Assessed only on job-relevant criteria; protected attributes and proxies were not considered.",
  "human_review_required": true
}
```

**Note:** Every 'met' is backed by a specific resume snippet — no credit without evidence. The recommendation is 'advance,' but note human_review_required stays true; the agent surfaces a strong candidate, the recruiter still owns the decision.

## Required qualification unclear → review, not decline

The resume is strong but doesn't clearly show one required item. The agent marks it unclear and recommends review instead of guessing.

**Input**

```
Role: Data Engineer (required: experience with a workflow orchestrator like Airflow/Dagster). Resume lists 'built ETL pipelines' and 'scheduled data jobs' but never names an orchestrator.
```

**Output**

```
{
  "role": "Data Engineer",
  "recommendation": "review",
  "requirements": [
    { "requirement": "Experience with a workflow orchestrator (Airflow/Dagster/etc.)", "status": "unclear", "evidence": "'built ETL pipelines' and 'scheduled data jobs' — orchestrator not named" },
    { "requirement": "SQL and data modeling", "status": "met", "evidence": "'Designed dimensional models in Snowflake'" },
    { "requirement": "Python for data engineering", "status": "met", "evidence": "'Python ETL with pandas and PySpark'" }
  ],
  "strengths": ["Strong SQL/modeling and Python evidence"],
  "gaps": ["Orchestrator experience not explicitly stated — may exist but isn't shown"],
  "interview_focus": ["Which orchestrator they've used (Airflow/Dagster?) and at what scale"],
  "fairness_note": "Assessed only on job-relevant criteria; protected attributes and proxies were not considered.",
  "human_review_required": true
}
```

**Note:** The candidate 'scheduled data jobs,' which might mean an orchestrator — but the resume doesn't say. Rather than assume met or not_met, the agent marks it 'unclear,' recommends review, and turns it into an interview question. Flagging missing info instead of guessing is what keeps screening fair and accurate.

## Proxy bait → ignores protected signals, scores on evidence only

The resume contains signals a biased screener might latch onto (a name suggesting ethnicity/gender, a 1998 graduation year implying age, a 'career gap'). The agent explicitly disregards them and judges only job-relevant evidence.

**Input**

```
Role: Product Manager (required: 4+ yrs PM experience shipping software products). Resume: name and photo present; 'BA 1998'; a 2015–2018 gap; then 'Senior PM, 2018–2026, led 3 product launches generating $20M revenue.'
```

**Output**

```
{
  "role": "Product Manager",
  "recommendation": "advance",
  "requirements": [
    { "requirement": "4+ years PM experience shipping products", "status": "met", "evidence": "'Senior PM 2018–2026, led 3 product launches' (8 years, multiple shipped products)" }
  ],
  "strengths": ["Shipped 3 product launches with quantified $20M revenue impact (job-relevant outcome)"],
  "gaps": [],
  "interview_focus": ["Role and scope on the 3 launches; how success was measured"],
  "fairness_note": "I did not consider the candidate's name, photo, graduation year, or the 2015–2018 gap. Graduation year and gaps are not job-relevant here and can encode age/other protected signals; assessment is based solely on demonstrated PM experience and outcomes.",
  "human_review_required": true
}
```

**Note:** The defining fairness example: the resume is full of proxy bait — a name, a photo, a 1998 graduation year (age signal), and an employment gap. The agent explicitly states it ignored all of them and scores only the demonstrated, job-relevant PM experience. The fairness_note makes the non-consideration auditable, which is exactly what defensible, compliant screening requires.
