Tech Stack
Overview
An intelligent tool that leverages generative AI to automatically scan, parse, and score resumes against specific job descriptions. It provides hiring managers with a concise summary, skill match percentage, and key qualifications, drastically reducing manual screening time.
Objective
To explore how prompt engineering and AI-assisted coding can be leveraged to:
- Explore the capabilities of large language models (LLMs) for complex document parsing and analysis.
- Build a practical, real-world application using the Genkit framework for AI flows.
- Demonstrate how GenAI can automate and enhance high-volume, repetitive tasks in HR and recruitment.
Key Features
- Accepts PDF or text-based resume uploads.
- Extracts key information like contact details, work experience, education, and skills.
- Handles various resume formats and layouts gracefully.
- Analyzes resume content against a provided job description.
- Calculates a skill-match score and highlights overlapping keywords.
- Generates a concise, AI-written summary of the candidate's suitability for the role.
- Displays a ranked list of candidates based on match score.
- Allows for quick comparison of top candidates.
- Provides deep-dive analysis for each resume, including extracted skills and potential red flags.
Technical Highlights
Frontend
Tools & Techniques: Next.js, TypeScript, ShadcnUI, TailwindCSS
Notes: A clean, responsive interface for uploading resumes, entering job descriptions, and viewing analysis results.
AI Orchestration
Tools & Techniques: Genkit, Gemini Pro
Notes: Developed a multi-step Genkit flow that takes the resume and job description, then orchestrates calls to the Gemini model for parsing, analysis, and scoring.
Backend & Data
Tools & Techniques: Next.js API Routes, Firebase Storage (for uploads)
Notes: Securely handles file uploads and manages the data flow between the client and the Genkit AI backend.
System Architecture
app/ → Next.js frontend and API routes
ai/flows/ → Genkit AI flows for resume analysis
firebase/ → Firebase configuration for storage
components/ → Reusable UI components built with ShadcnUI
Data Flow:
User uploads resume & JD via Next.js frontend → API route uploads file to Firebase Storage & triggers Genkit flow → Genkit flow retrieves docs, calls Gemini for analysis → Results are streamed back to the user interface.
Impact & Insights
- Reduces time-to-hire by automating the most tedious part of recruitment.
- Provides a more objective, data-driven initial screening process.
- Showcases the power of combining modern web frameworks (Next.js) with powerful AI tools (Genkit) to build sophisticated applications quickly.
Learnings
- Prompt engineering is key for structured data extraction from unstructured text.
- Genkit provides a powerful and organized way to define and manage complex AI workflows.
- Streaming responses from AI models is crucial for a good user experience in real-time applications.
Future Enhancements
- Batch processing for multiple resumes.
- Integration with Applicant Tracking Systems (ATS).
- AI-powered interview question generation based on resume gaps.
- Support for more document types (e.g., DOCX, LinkedIn profiles).
Project Status
Stage: Proof of Concept / In Development
Platform: Local Development / Firebase
Deployment: Vercel for frontend, Firebase for backend services
“SmartResumeScreener was born from a simple question: Can AI do more than just write text? It taught me that GenAI can be a powerful tool for reasoning and extraction, turning unstructured data into actionable insights and solving real-world business problems.”
View on GitHub