TalentFit – AI-Enhanced Recruitment with Frappe HR and Gemini API

 

Project: TalentFit – Smart CV Screening and Hiring Assistant
Client: [Confidential / Your Company]
Tech Stack: Frappe Framework (HR Module), Gemini API (Google AI), Python, React.js / Next.js

 

📌 Project Overview

TalentFit is an intelligent recruitment system built on top of the Frappe HR Recruitment Module, enhanced with Google’s Gemini API to automate and enrich applicant evaluations. The goal was to streamline the hiring process by providing AI-based CV screening, job-fit scoring, and recommendation generation — all from within the Frappe HR interface.

 

🔍 Challenges & How We Overcame Them

1. 🧾 Limited CV Analysis in Native Frappe HR

  • Problem: Frappe’s default HR module allows resume uploads but lacks deep content analysis.

  • Solution:

    • Extracted CV content (PDF/DOC) using parsing tools.

    • Converted to structured JSON and passed to Gemini API for semantic analysis.

2. 🤖 Integrating Gemini API with Frappe Workflow

  • Problem: Needed to tightly integrate AI output into the Frappe hiring process.

  • Solution:

    • Added a custom script and background job to trigger Gemini CV analysis upon resume upload or candidate creation.

    • Created a new section in the Job Applicant DocType to show:

      • AI Score (0–100)

      • Match Summary

      • Gemini’s feedback (skills match, experience fit, gaps)

3. 📊 Job-to-Candidate Matching Logic

  • Problem: Candidates needed to be matched against specific job openings, not generic criteria.

  • Solution:

    • Pulled job description fields directly from the Job Opening DocType.

    • Fed both JD + parsed CV into Gemini with role-specific prompts.

    • Stored response back in Job Applicant doctype as a read-only summary.

4. 🔐 Data Privacy and Secure API Communication

  • Problem: CVs contain PII, and we’re calling third-party AI services.

  • Solution:

    • Ensured minimal and anonymized data is sent to Gemini.

    • Stored original resumes securely in Frappe’s private file system.

    • Logged only essential metadata and AI score — no full resume content.

5. 💼 HR Dashboard for AI-Augmented Decision Making

  • Problem: Recruiters needed an overview of all candidates with AI insights.

  • Solution:

    • Built a custom dashboard in Frappe using reports and custom scripts.

    • Filter applicants by:

      • AI Score Range

      • Job Position

      • Status (Pending, Interviewed, Rejected, etc.)

 

✅ Results

  • ⚡ Reduced manual CV screening time by over 70%.

  • 🎯 Improved shortlisting accuracy by matching candidates with job criteria using AI.

  • 📥 Seamless integration with Frappe’s native workflow — no need to switch tools.

  • 🧠 Added explainable, intelligent feedback for each applicant to support recruiter decisions.

 

🛠️ Tech Stack Summary

LayerTechnology
BackendFrappe HR Recruitment Module (Python)
AI EngineGemini API (Google AI)
CV ParsingPython Libraries (pdfminer, docx)
FrontendFrappe Custom Scripts, React.js (for dashboard/UI)
Auth & RolesFrappe Role-Based Permissions
StorageFrappe Private Files
DeploymentSelf-hosted / Frappe Cloud / Docker

 

💡 Key Learnings

  • Frappe is highly extensible — we were able to embed AI capabilities without breaking core HR workflows.

  • Prompt engineering for Gemini made a major difference in getting role-specific, actionable insights.

  • Recruiters benefited the most from having AI scores embedded directly into their existing tools — no context switching needed.

 

🧩 Bonus Feature Ideas (Optional or Future Scope)

  • Auto-suggest candidates for open roles.

  • AI-powered interview question suggestions.

  • Email-based applicant feedback system.

  • Role-specific prompt library for better Gemini accuracy