Development of AI Resume Screening System
AI screening automatically evaluates candidate resumes against job vacancy criteria. The recruiter receives a ranked list with justification rather than an unprocessed stream of hundreds of files.
Screening Architecture
class ResumeScreeningResult(BaseModel):
candidate_name: str
match_score: float # 0-1
technical_match: float # match to technical requirements
experience_match: float # match to experience requirements
education_match: float # match to education requirements
strengths: list[str] # candidate strengths
gaps: list[str] # mismatches to requirements
highlight_skills: list[str] # key skills from resume
recommendation: Literal["strong_yes", "yes", "maybe", "no"]
reasoning: str # 3-5 sentence justification
suggested_interview_questions: list[str]
def screen_resume(resume_text: str, job_description: str) -> ResumeScreeningResult:
return llm.parse(
build_screening_prompt(resume_text, job_description),
response_format=ResumeScreeningResult
)
Resume Parsing
Resumes come in different formats: PDF, DOCX, hh.ru API. Extracting structured data:
- hh.ru API: resumes already structured (JSON)
- PDF/DOCX: unstructured.io or custom parser
- LinkedIn: LinkedIn Talent Solutions API (paid)
Normalization: experience dates → months worked, skills → standard dictionary.
Preventing Discrimination
AI can reproduce discriminatory patterns from historical data. Mitigation:
- Remove demographic data from resumes before evaluation (name, age, photo)
- Regular audits: no systematic bias by gender, age, university
- Transparency: each rejection must be justified by professional criteria
According to employment law (64-FZ): discrimination based on criteria unrelated to professional qualifications is prohibited.
ATS Integration
- hh.ru for employers: API for mass screening of applications
- Huntflow: REST API for sales funnel automation
- 1C:Payroll and HR: candidate integration into HR system
- Potok.io / Talantix: native integrations via Webhook
Metrics: time-to-screen (from hours to minutes), quality-of-hire (% of AI-recommended hires still employed after 6 months), recruiter satisfaction score.







