Selected work
03 · AI-enabled matching workflow
JobPilot
A transparent pipeline for matching resumes to live job postings, explaining fit, and producing reviewable application drafts.
Candidate signalSemantic match
Resume
skills + constraints
+skills + constraints
Jobs
schema + source
→schema + source
Ranked
explanations
explanations
Score componentsMissing skillsApply URL status
Executive summary
A Streamlit application combining public Greenhouse job ingestion, profile parsing, retrieval, ranking, feedback, analytics, and deterministic resume drafting.
Problem
Job search data is noisy: postings can be stale or duplicated, fit explanations are weak, and tailoring application materials is time-consuming.
Approach
- 01Ingest public Greenhouse postings and normalize them into a shared job schema.
- 02Extract skills from a resume or profile and retrieve candidates using embeddings when available, with TF-IDF fallback for reliable local demos.
- 03Apply hard filters, weighted soft scoring, and plain-language explanations; preserve source labels instead of inventing apply links.
- 04Capture accept, reject, and skip feedback; expose analytics, persona tests, and CSV/Excel exports.
02
Data & methodology
Data sources
- Greenhouse public job-board API
- Bundled offline benchmark sample
- User-provided resume or profile text
Methods
- Schema normalization and deduplication
- Embedding or TF-IDF retrieval
- Multi-stage ranking and score explanations
- Feedback-weight updates and Precision@10 simulation
Workflow
Input→Collection→Analysis→Output
Local benchmark notes distinguish live postings from offline evaluation data and do not claim fake apply URLs.
Outputs & findings
Key outputs
- Ranked recommendation cards
- Fit explanations and skill gaps
- Tailored-resume draft
- Analytics and downloadable results
What the work demonstrates
- The documented local validation snapshot contained 424 Greenhouse listings with 424 valid apply links.
- Four persona checks passed their three-item checklists; the feedback loop ran end to end, while Precision@10 remained flat in the narrow live sample.
Limitations
- Posting availability, board tokens, salary parsing, and sponsor inference can change or fail.
- Generated resumes are deterministic drafts that require human review.
- The local feedback simulation is not evidence of production recommendation performance.