Batch Resume Screener
This skill helps you batch screen multiple resumes against multiple job positions with strict evaluation rules integrated from java-resume-screener skill.
Usage
When a user asks to batch screen resumes, evaluate multiple candidates, process resume ZIP packages, or screen against multiple job positions, this skill should be invoked.
Role
You are a professional technical recruiter/interviewer. Strictly follow the rules to complete batch resume initial screening evaluation. All evaluations are based solely on resume text content. No unfounded assumptions are allowed.
Input Requirements
Provide the following two parts:
- 1. Job Requirements: Multiple job requirements documents (one for each position)
- Resumes: Multiple resume files (PDF/DOC/DOCX) or a ZIP package containing multiple resumes
Core Execution Rules
1. Four-Step Process Overview
重要说明:只有步骤1使用脚本,步骤1.5、步骤2和步骤3由AI直接完成,不使用脚本,也不要创建python脚本!
Step 1: Extract Resume Content (Using Script)
- 1. If input is a ZIP package, first extract all resume files (use step1extractresumes.py)
- For each resume file (PDF/DOC/DOCX), extract text content
- Save each resume's text as a separate .txt file in a designated directory
- Provide the list of extracted resume .txt files
Step 1.5: Pre-filtering (AI Direct - Quick Scan)
- 1. Load all job requirements and identify key requirements for each position
- For each resume, perform quick keyword matching:
- Check if core technology keywords exist (e.g., "Java" for Java position)
- Check if work experience meets minimum requirement
- Check if education meets minimum requirement
- 3. Mark resumes as "highmatch", "mediummatch", or "low_match"
- Save pre-filter results as a JSON file for reference in Step 2
- Note: Pre-filtering does NOT reject candidates, only marks match level for reference
Step 2: Evaluate Resumes (AI Direct - Batch Evaluation)
- 1. Retrieve the list of all resume .txt files from Step 1
- Load pre-filter results from Step 1.5 (if available)
- Create a Todo List with tasks for each resume
- Evaluate resumes in small batches (3-5 resumes at a time):
a. Load resume .txt file contents for the batch
b. For each resume in the batch:
- Identify job level (junior/mid/senior) based on job requirements
- Apply corresponding weight coefficients
- Evaluate against all job positions using scoring rules
- Complete full evaluation (hard requirements check + 7-dimension scoring)
- Add confidence score
- Save evaluation results as a JSON file
c. Update Todo List to mark completed resumes
d. Proceed to next batch
Step 3: Aggregate and Generate Reports (AI Direct Aggregation)
- 1. Load all evaluation result JSON files from Step 2
- For each candidate, determine the best matching position with the highest score
- Sort all candidates by total score descending
- Generate multiple output formats:
-
Markdown Report: Comprehensive batch screening report
-
Excel-ready Data: Tabular format for HR filtering
-
Comparison Table: Side-by-side candidate comparison
-
Highlights Summary: Key highlights for interviewers
2. Pre-screening Hard Requirement Check
First check the hard requirements for each job position. If any hard requirement is not met, directly output a rejection conclusion for that position without subsequent scoring.
3. Hard Requirements (One-Vote Veto)
- - Education Threshold: Whether meeting the minimum education requirement clearly stated in the job (e.g., bachelor's degree or above, full-time regular education)
- Work Experience Threshold: Whether meeting the minimum Java backend development work experience requirement clearly stated in the job
- Other Hard Requirements: "Must have/indispensable" other hard requirements clearly stated in the job (e.g., must have distributed project experience, must have financial industry experience, etc.)
4. Scoring System: Percentage + Weight Coefficients
4.1 Core Design
Design Principles:
- - Each dimension is scored on a 100-point scale (0-100)
- Weight coefficients control each dimension's contribution to total score
- Weight coefficients are dynamically adjusted based on job level
Calculation Formula:
CODEBLOCK0
4.2 Dynamic Weight Allocation
| Dimension | Junior | Mid | Senior |
|---|
| Academic Background | 15% | 10% | 5% |
| Career Stability |
5% | 10% | 10% |
| Tech Stack Capability | 15% | 15% | 15% |
| Project Match | 20% | 25% | 25% |
| Problem Solving | 10% | 15% | 20% |
| Learning Ability | 20% | 15% | 10% |
| Bonus | 15% | 10% | 15% |
Job Level Identification Rules:
- - Junior: Job requirements contain "初级" (junior), "1-3年", "应届" (fresh graduate) keywords
- Mid: Job requirements contain "中级" (mid-level), "3-5年" keywords
- Senior: Job requirements contain "高级" (senior), "资深", "5年以上", "架构" (architect) keywords
5. Dimension Scoring Standards (100-Point Scale)
5.1 Academic Background (0-100 points)
CODEBLOCK1
5.2 Career Stability (0-100 points)
CODEBLOCK2
5.3 Tech Stack Capability (0-100 points)
CODEBLOCK3
5.4 Project Match (0-100 points)
CODEBLOCK4
5.5 Problem Solving Ability (0-100 points)
CODEBLOCK5
5.6 Learning Ability (0-100 points)
CODEBLOCK6
5.7 Bonus (0-100 points)
CODEBLOCK7
6. Confidence Score
Each evaluation result includes a confidence score:
CODEBLOCK8
Confidence Levels:
- - High (0.8-1.0): Resume information complete, scoring basis sufficient
- Medium (0.6-0.8): Resume information basically complete, some content unclear
- Low (<0.6): Resume information incomplete, recommend manual review
7. Total Score Rating Reference
- - 90-100 points: Far exceeds job requirements, outstanding core dimension performance, high-quality candidate
- 75-89 points: Completely meets job requirements, high core dimension match, recommend for interview
- 60-74 points: Just meets basic job requirements, has obvious shortcomings, can be alternative evaluation
- Below 60 points: Meets hard thresholds, but large gap between core ability and job requirements, not recommended
8. Individual Evaluation JSON Output Format
For each resume, save the evaluation result as a JSON file with the following structure:
CODEBLOCK9
9. Output Format Requirements
9.1 Markdown Report Structure
CODEBLOCK10
9.2 Excel-Ready Data Format
Generate tabular data suitable for Excel import:
CODEBLOCK11
9.3 Candidate Comparison Table
CODEBLOCK12
9.4 Highlights Summary
CODEBLOCK13
10. Important Notes
- - All evaluations must be based solely on resume text content
- No unfounded assumptions or guessing
- Strictly follow the given weights and scoring rules
- Must correspond to job requirements original text when stating non-compliance
- No vague descriptions allowed
- For each candidate, recommend the position with the highest score
- Sort all candidates by their highest score in descending order
- 不要为了效率试图创建py脚本来进行批量处理
- Always include confidence score for each evaluation
- Flag low-confidence evaluations for manual review
批量简历筛选器
该技能可帮助您针对多个职位批量筛选多份简历,并集成了java-resume-screener技能的严格评估规则。
使用场景
当用户要求批量筛选简历、评估多个候选人、处理简历ZIP包或针对多个职位进行筛选时,应调用此技能。
角色
您是一名专业的技术招聘人员/面试官。请严格遵守规则完成批量简历初筛评估。所有评估仅基于简历文本内容,不允许无根据的假设。
输入要求
请提供以下两部分内容:
- 1. 职位要求:多份职位要求文档(每个职位一份)
- 简历:多份简历文件(PDF/DOC/DOCX格式)或包含多份简历的ZIP压缩包
核心执行规则
1. 四步流程概述
重要说明:只有步骤1使用脚本,步骤1.5、步骤2和步骤3由AI直接完成,不使用脚本,也不要创建python脚本!
步骤1:提取简历内容(使用脚本)
- 1. 如果输入是ZIP包,首先解压所有简历文件(使用step1extractresumes.py)
- 针对每份简历文件(PDF/DOC/DOCX),提取文本内容
- 将每份简历的文本保存为独立的.txt文件到指定目录
- 提供提取后的简历.txt文件列表
步骤1.5:预筛选(AI直接完成 - 快速扫描)
- 1. 加载所有职位要求,识别每个职位的核心要求
- 对每份简历进行快速关键词匹配:
- 检查核心技术关键词是否存在(例如Java岗位需包含Java)
- 检查工作经验是否满足最低要求
- 检查学历是否满足最低要求
- 3. 将简历标记为高匹配、中匹配或低匹配
- 将预筛选结果保存为JSON文件,供步骤2参考
- 注意:预筛选不会淘汰候选人,仅标记匹配等级供参考
步骤2:评估简历(AI直接完成 - 批量评估)
- 1. 获取步骤1中所有简历.txt文件的列表
- 加载步骤1.5中的预筛选结果(如有)
- 创建待办事项列表,为每份简历分配任务
- 分批评估简历(每次3-5份):
a. 加载该批次简历.txt文件内容
b. 对该批次中的每份简历:
- 根据职位要求确定岗位级别(初级/中级/高级)
- 应用相应的权重系数
- 使用评分规则对所有职位进行评估
- 完成全面评估(硬性要求检查 + 7维度评分)
- 添加置信度评分
- 将评估结果保存为JSON文件
c. 更新待办事项列表,标记已完成简历
d. 继续下一批次
步骤3:汇总并生成报告(AI直接完成 - 汇总)
- 1. 加载步骤2中所有评估结果JSON文件
- 针对每位候选人,确定得分最高的最佳匹配职位
- 按总分降序对所有候选人进行排序
- 生成多种输出格式:
-
Markdown报告:全面的批量筛选报告
-
Excel就绪数据:适合HR筛选的表格格式
-
对比表:候选人横向对比
-
亮点摘要:供面试官参考的关键亮点
2. 预筛选硬性要求检查
首先检查每个职位的硬性要求。如果任何硬性要求未满足,直接输出该职位的淘汰结论,不再进行后续评分。
3. 硬性要求(一票否决制)
- - 学历门槛:是否满足职位明确要求的最低学历(例如本科及以上、全日制统招)
- 工作经验门槛:是否满足职位明确要求的最低Java后端开发工作经验
- 其他硬性要求:职位明确要求的必须具备/不可或缺的其他硬性要求(例如必须具备分布式项目经验、必须具备金融行业经验等)
4. 评分体系:百分制 + 权重系数
4.1 核心设计
设计原则:
- - 每个维度采用百分制评分(0-100分)
- 权重系数控制各维度对总分的贡献
- 权重系数根据岗位级别动态调整
计算公式:
总分 = 学术背景 × 权重1 + 职业稳定性 × 权重2 + 技术栈能力 × 权重3
+ 项目经验匹配 × 权重4 + 问题解决能力 × 权重5 + 学习能力 × 权重6 + 加分项 × 权重7
4.2 动态权重分配
| 维度 | 初级 | 中级 | 高级 |
|---|
| 学术背景 | 15% | 10% | 5% |
| 职业稳定性 |
5% | 10% | 10% |
| 技术栈能力 | 15% | 15% | 15% |
| 项目经验匹配 | 20% | 25% | 25% |
| 问题解决能力 | 10% | 15% | 20% |
| 学习能力 | 20% | 15% | 10% |
| 加分项 | 15% | 10% | 15% |
岗位级别识别规则:
- - 初级:职位要求包含初级、1-3年、应届等关键词
- 中级:职位要求包含中级、3-5年等关键词
- 高级:职位要求包含高级、资深、5年以上、架构等关键词
5. 维度评分标准(百分制)
5.1 学术背景(0-100分)
评分规则:
- 1. 院校级别(40分):
- 985/顶尖院校:40分
- 211/双一流:30分
- 省属重点本科:20分
- 普通全日制本科:10分
- 专科:5分
- 2. 专业匹配度(40分):
- 计算机科学/软件工程:40分
- 数学/自动化:20分
- 跨专业但有相关证书:10分
- 完全跨专业:0分
- 3. 学业表现(20分):
- 有奖学金/排名证明:20分
- 无相关描述:0分
得分 = 院校级别 + 专业匹配度 + 学业表现
5.2 职业稳定性(0-100分)
评分规则(仅基于简历中可明确计算的时间数据):
- 1. 平均任职时长(60分):
- 平均任职时长≥3年:60分
- 平均任职时长2-3年:40分
- 平均任职时长1-2年:20分
- 平均任职时长<1年:0分
- 2. 跳槽频率(40分):
- 每年<1次跳槽:40分
- 每年约1次跳槽:20分
- 每年≥2次跳槽:0分
得分 = 平均任职时长 + 跳槽频率
5.3 技术栈能力(0-100分)
评分规则:
- 1. 技术栈匹配度(35分):
- 核心技术100%覆盖:35分
- ≥80%覆盖:25分
- ≥60%覆盖:15分
- <60%覆盖:0分
- 2. 技术栈广度(20分):
- 涵盖后端框架、数据库、缓存、消息队列、DevOps等:20分
- 涵盖基础后端技术:10分
- 技术范围狭窄:0分
- 3. 技术栈深度(25分):
- 有源码理解、调优经验:25分
- 熟练使用:15分
- 仅表面了解:0分
- 4. 实践经验(20分):
- 有清晰的多项目实践描述:20分
- 有基础实践描述:10分
- 缺乏实践描述:0分
得分 = 匹配度 + 广度 + 深度 + 实践
5.4 项目经验匹配(0-100分)
评分规则(5个方面,每项20分):
- 1. 业务领域与行业匹配度:
- 与职位业务完全匹配:20分
- 部分匹配:10分
- 不匹配:0分
- 2. 项目规模与复杂度:
- 等于或高于职位要求:20分
- 略低于职位要求:10分
- 明显低于职位要求:0分
- 3. 个人职责与参与度:
- 核心开发人员/负责人:20分
- 核心功能开发:15分
- 非核心模块开发:8分
- 参与度低:0分
- 4. 技术难度与亮点:
- 有技术亮点/突破:20分
-