interviewstreet/hiring-agent

AI agent to evaluate and score resumes.

What it solves

It addresses the challenge of ranking a massive volume of resumes (e.g., 50,000+ intern applications) to help recruiters decide which candidates to review first. It aims to provide a fair, explainable, and objective evaluation process rather than acting as a full Applicant Tracking System (ATS).

How it works

The project implements a multi-stage pipeline:

  1. PDF Extraction: Converts resume PDFs into Markdown-like text using PyMuPDF.
  2. Section Parsing: Uses LLMs and Jinja templates to extract structured JSON data for specific sections (Work, Education, Skills, etc.).
  3. GitHub Enrichment: Identifies GitHub profiles in resumes, fetches repository data, and uses an LLM to select the top 7 most meaningful projects based on commit thresholds.
  4. Evaluation: Scores the candidate against a specific role's rubric (defined in roles/ via JSON and Jinja templates). The system calculates category scores, bonus points, and deductions based on evidence found in the resume and GitHub data.
  5. Output: Generates a readable report and can export results to CSV for analysis.

Who it’s for

Recruiters and hiring managers who need to automate the initial ranking of high-volume applicant pools while maintaining transparency and explainability in the scoring logic.

Highlights

  • Local or Cloud LLMs: Supports local execution via Ollama (e.g., Gemma) or cloud APIs like Google Gemini and OpenAI.
  • Role-Based Rubrics: Allows users to define custom roles with their own scoring categories, weights, and criteria.
  • GitHub Integration: Augments resume data with real-world coding signals from GitHub.
  • Explainable Scoring: Provides evidence for every score assigned, making the evaluation transparent.

Related

  • Project
  • Project
  • Project
  • Project
  • Project