Development of an AI system for HR and recruiting
HR is one of the industries where decision-making is highly subjective. AI standardizes candidate assessment, reduces time-to-hire, and predicts employee retention—not by replacing HR, but by eliminating routine and bias.
AI recruiting
Automatic CV processing (CV Parsing and Matching)
from transformers import AutoTokenizer, AutoModel
import torch
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity
class JobMatchingSystem:
"""Семантический матчинг вакансий и резюме через embedding"""
def __init__(self, model_name='sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2'):
self.tokenizer = AutoTokenizer.from_pretrained(model_name)
self.model = AutoModel.from_pretrained(model_name)
def encode(self, texts):
"""Получение sentence embeddings"""
inputs = self.tokenizer(texts, padding=True, truncation=True,
max_length=512, return_tensors='pt')
with torch.no_grad():
outputs = self.model(**inputs)
# Mean pooling
embeddings = outputs.last_hidden_state.mean(dim=1)
return embeddings.numpy()
def match_candidates(self, job_description, cv_list, top_k=20):
"""Ранжирование кандидатов по релевантности вакансии"""
job_embedding = self.encode([job_description])
cv_embeddings = self.encode(cv_list)
scores = cosine_similarity(job_embedding, cv_embeddings)[0]
ranked_indices = np.argsort(scores)[::-1][:top_k]
return [(idx, float(scores[idx])) for idx in ranked_indices]
def extract_skills(self, cv_text):
"""NER извлечение навыков и технологий"""
# spaCy + кастомный NER или regex-паттерны
pass
Structured Interview Automation:
AI assistant for conducting structured interviews: - Generation of questions using the STAR methodology based on job requirements - Transcription of video interviews (Whisper) + NLP analysis of responses - Assessment based on specified competencies (automated rubric scoring)
Bias Mitigation:
The main ethical problem with AI in HR is the reinforcement of historical biases: - Removal of demographic characteristics (name, photo, age, gender) from model features - Fairness metrics: demographic parity, equality of chances between groups - Adversarial debiasing: training a classifier + an adversarial network that removes features of protected attributes - Mandatory human-in-the-loop for final decisions (the Labor Code of the Russian Federation prohibits automated hiring decisions without human intervention)
Predicting retention and churn
Early Warning for Employee Churn:
import lightgbm as lgb
import pandas as pd
def build_retention_model(hr_data):
"""
Прогноз увольнения в ближайшие 90 дней.
Признаки из HRIS, анализа коммуникаций (с согласия), опросов.
"""
features = [
# Карьерные
'months_since_last_promotion', 'salary_vs_market_pct',
'performance_score_last', 'performance_score_trend',
# Рабочая среда
'overtime_hours_30d', 'overtime_trend',
'manager_tenure_months', # новый менеджер = риск
'team_attrition_rate_6m', # уходят соседи → тоже уйдёт
# Вовлечённость
'survey_engagement_score', 'survey_intent_to_stay',
'learning_hours_90d', # снижение = снижение вовлечённости
# Контекстные
'job_market_activity', # обновлял ли профиль LinkedIn
'years_in_company',
'commute_time_min'
]
model = lgb.LGBMClassifier(n_estimators=300, class_weight='balanced')
model.fit(hr_data[features], hr_data['left_90d'])
return model
At P(attrition) > 0.6 → automatic notification to HR BP with recommendations: career talk, compensation review, transfer to another department.
Performance Management
Continuous Performance Management:
Replacing the annual Performance Review with continuous monitoring: - OKR tracking: progress on goals in real time - Peer feedback aggregation: NLP processing of feedback → thematic insights - Recognition patterns: who receives recognition more often → correlation with performance
High Potential Identification:
ML model on historical data: what characteristics characterize future leaders: - Cross-functional involvement, initiatives - Growth rate of performance indicators - Networking: centrality in the corporate social network (ONA — Organizational Network Analysis)
People Analytics
Workforce Planning:
- Forecasting personnel needs by function for 1–3 years - Skills gap analysis: what the team can do vs. what the business will require - Build/Buy/Brow decision: train in-house, hire, or outsource
Organizational analytics:
- Identification of "overloaded" employees (center nodes in ONA + overtime data) - Teams with high communication barriers - Time in meetings analysis: >60% of time in meetings → alert for the manager
Development time: 4–7 months for an HR AI platform with CV matching, retention prediction, and people analytics with integration into 1C:ZUP, SAP HCM, or BambooHR.







