AI / LLM

AI Job Application Assistant

Learning project in the AI Learning Tracker series. The AI never auto-submits applications.

Parse a job and a CV, explain the match, draft materials, then stop for a human. The AI never applies.

Overview

The AI Job Application Assistant is Project 3-B. It parses a job posting and a CV, runs an explainable hybrid match, drafts application materials, and waits for human review before anything is finalized. FastAPI is the HTTP surface; LangGraph owns the workflow. Evaluation packs score skill recall, score range, stability, and grounding.

Problem

Most “AI apply” demos skip the dangerous part: sending something in your name. I wanted a workflow that can help with matching and drafts, then stop.

What I built

A LangGraph workflow parses inputs, scores overlap with an explainable hybrid matcher, drafts materials grounded in the CV, and inserts a human-in-the-loop review before finalize. Golden packs under app/eval exercise strong match, weak match, domain shift, and alias overlap without requiring a paid LLM.

My contribution

  • Built parse → match → draft → human review as a LangGraph workflow.
  • Kept application submit off the graph so a person always decides.
  • Added an offline evaluation harness with golden packs and grounding checks.

Technologies

  • Python
  • LangGraph
  • FastAPI
  • Human-in-the-loop
  • Evaluation

More ai / llm

AI / LLM

LEPA Support Agent

A LangGraph support workflow for LEPA: typed state, conditional routing, tools, memory, and a multi-agent split behind FastAPI.

  • Python
  • LangGraph
  • FastAPI
  • SQLite
  • OpenRouter

AI / LLM

AI Learning Tracker

A public repo of small AI engineering projects — terminal agents, MCP, LangGraph, and async document workflows — built while learning in public.

  • Python
  • TypeScript
  • OpenRouter
  • MCP
  • AI SDK

Related writing