| name | resume-screener |
| description | 简历筛选与评分系统(boss-hr-auto 工作流的 Step 3)。基于 JD 自动提取特征 → 硬门槛过滤 → 权重加权评分 → 排名输出。
支持动态学历分档和双模式权重(技术岗/管培岗)。
**本 Skill 是 boss-hr-auto 编排流程的子步骤,通常由 boss-hr-auto 在 Step 3 阶段调用,不应作为入口 Skill 直接加载。**
**重要更新**:
- 学历评分必须严格执行学校分档标准,禁止给所有人打相同分数
- 行动建议必须根据候选人具体经历个性化,禁止模板化
|
Resume Screener
核心架构
JD + 简历 → [特征提取] → [JD 类型判定] → [硬门槛过滤] → [加权评分] → [个性化建议] → [结构化呈现]
第 0 步:JD 类型判定
技术岗判定条件(任一满足即判断为技术岗):
- 包含编程语言:
Python / Java / Go / C++ / Rust / JavaScript / TypeScript / SQL
- 包含框架/平台:
Spring / Django / React / Vue / TensorFlow / PyTorch / Docker / Kubernetes
- 包含技术领域:
后端 / 前端 / 算法 / 数据开发 / 测试开发 / 运维 / 全栈 / 数据挖掘 / 机器学习 / AI
- 包含中间件/数据库:
MySQL / Redis / MongoDB / PostgreSQL / Kafka / Elasticsearch
- 含明确技术栈描述(如"熟悉 Linux"、"掌握分布式系统")
管培/非技术岗判定条件(任一满足即判断为管培岗):
- JD 含:
管培生 / 商务 / 运营 / 市场 / 人力 / 销售 / 行政 / 客服 / 产品 / 设计 / 财务 / 法务 / 采购 / 物流 / 供应链
- JD不包含任何技术岗关键词
- JD 偏重软性技能:沟通能力 / 团队协作 / 责任心 / 执行力 / 抗压能力
判定优先级: 技术关键词优先 → 无技术关键词按非技术 → 均无默认管培权重
⚠️ 每次输出必须明确写出「岗位类型判定结果及判定依据」
第 1 步:特征提取
从 JD 提取:岗位名称、职责、硬性要求(学历/毕业时间/专业/年限)、技术栈(仅技术岗)、软性要求、加分项
从简历提取:毕业时间、学校、学历、专业、GPA、所在地、实习经历(企业/时长/职责/成果)、项目经历、竞赛获奖、证书、品格信号
第 2 步:硬门槛过滤
一票否决项(不通过直接筛除):
- 毕业时间不匹配(JD 明确要求某届,不匹配则否。JD 未明确的跳过此项)
- 学历不达标(JD 要求本科,大专直接否)
- 专业零交集 + 技能栈为零(JD 招后端,简历无关且无编程经验)
- 非在读(实习岗要求在校生,已毕业直接否)
"稍微搭边可以先过"→标记为「待定」进入评分池
硬门槛结果表:
| 候选人 | 毕业时间 | 学历 | 专业交集 | 在读状态 | 结论 |
|---|
| 姓名 | ✅/❌/🔄无要求 | ✅/❌ | ✅完全对口/▲部分相关/❌无关 | ✅/❌ | ✅通过/🚫淘汰/▲待定 |
第 3 步:加权评分(双模式)
模式 A:技术岗权重(修订版)
| 维度 | 权重 | 评分方法 | 说明 |
|---|
| 学历 | 25% | 严格执行学校分档表 | ⚠️ 必须根据学校实际档次查表,禁止给所有人相同分数 |
| 工作经验 | 30% | 相关经验年限 + 业务匹配度 | 年限 2 年=60%, 3 年=75%, 5 年+=90%;有相关项目经验 +15% |
| 专业技能 | 25% | JD 技能覆盖率 | 目标技能匹配数 × 20 + 基础 30 分 |
| 项目经历 | 15% | 项目复杂度 + 相关性 | 完整度、与企业需求匹配度、是否企业实战 |
| 专业 | 5% | 匹配度 0-100% | 优先专业=100%,相关=80%,无关=30-60% |
模式 B:管培/非技术岗权重(修订版)
| 维度 | 权重 | 评分方法 | 说明 |
|---|
| 学历 | 25% | 严格执行学校分档表 | ️ 必须根据学校实际档次查表,禁止给所有人相同分数 |
| 实习/项目 | 30% | 专家打分 0-100% | 完整度、复杂度、与企业需求匹配度 |
| 竞赛/荣誉 | 15% | 含金量与密度 0-100% | 国家级竞赛/奖学金>省级>校级 |
| 技能 | 15% | 证书与工具覆盖 0-100% | 办公软件、语言能力、专业证书等实用技能 |
| 品格 | 10% | 信号累计 0-100% | 领导力、沟通力、抗压力、自驱力 |
| 专业 | 5% | 匹配度 0-100% | 优先专业=100%,相关=80%,无关=30-60% |
评分公式
单维度加权分 = 原始百分比 (%) × 该维度权重 (%)
总分 = Σ(所有维度加权分)
示例:学历原始值 65%,权重 25% → 学历加权分 = 65% × 25% = 16.25 分
⚠️ 每个维度的原始百分比必须写明依据
第 4 步:学历分档(严格执行)
️ 重要:必须根据候选人实际学校查表评分
学校分档表:
| 档次 | 分数 | 示例学校 |
|---|
| C9 | 100 | 清华、北大、复旦、交大、浙大、中科大、南大、哈工大、西交 |
| 985 | 92 | 其他 985 高校 |
| 211 | 85 | 其他 211 高校 |
| 双一流 | 77 | 双一流建设高校 |
| 一本公办 | 71 | 省属重点一本 |
| 二本公办 | 62 | 普通公办二本 |
| 民办本科 | 53 | 民办高校、独立学院 |
硕士加分规则:
- 在本科基础上 +8%(如 985 本→92%,985 硕→100% 上限 100%)
- 专升本:取最高学历查表,若路径体现自驱力(大专→公办二本及以上),品格 +5% 附加分
评分时必须:
- 提取候选人学校名称
- 判断学校所属档次
- 查表得到分数
- 在评分依据中写明「学校名称 - 档次 = 分数%」
错误示例: ❌ 所有人都是「普通本科 65 分」
正确示例: ✅ 安徽中医药大学 - 一本公办 = 71%
第 5 步:个性化行动建议(必须)
⚠️ 重要:禁止模板化建议,必须根据候选人具体经历个性化
推荐面试(≥70 分)每人必须包含:
- 候选人背景:基于实际学校、专业、工作经历、项目经历、技能标签总结
- 🎯 沟通方向:针对该候选人的具体情况给出面试重点
示例(正确):
赵一坤 - 77.75 分
- 背景:车辆工程专业 + 3 年动力域/底盘域测试(ABS/EPB/ESC)+ CANOE/TSMaster/UDS 技能
- 沟通方向:重点确认是否有车架结构设计经验(非测试),询问 CATIA/SolidWorks 三维设计能力,了解车架强度仿真和焊接工艺熟悉程度
示例(错误 - 模板化):
赵一坤 - 77.75 分
- 沟通方向:重点了解车架结构设计经验,确认是否熟练使用 CATIA/SolidWorks 等三维设计软件,询问焊接工艺和钣金工艺熟悉程度。
待沟通确认(60-69 分)每人必须包含:
- ✅ 优势:为什么值得联系
- ❓ 需确认问题:具体的、针对该候选人的问题
不推荐(<60 分):
第 6 步:结构化结果呈现
每次输出必须严格按以下两部分结构。
📊 第一部分:每岗位候选人打分与排名
岗位名称:[岗位名]
| 项目 | 内容 |
|---|
| 岗位类型判定 | 技术岗 / 管培岗 |
| 判定依据 | JD 含关键词 xxx → 判定为 X 岗 |
| 使用权重 | 技术权重 / 管培权重 |
硬门槛过滤结果
筛选结果:N 进 M(✅通过 X / ▲待定 Y / 🚫淘汰 Z)
| 候选人 | 毕业时间 | 学历 | 专业交集 | 在读状态 | 结论 |
|---|
| ... | ✅26 届 | ✅本科 | ✅完全对口 | ✅在校 | ✅通过 |
| ... | ✅26 届 | ✅本科 | ▲部分相关 | ✅在校 | ▲待定 |
| ... | ... | ... | ... | ... | 🚫淘汰 - 原因 |
每维度详细评分(表格格式)
候选人:姓名 — XX 分
| 维度 | 原始值 | 原始% | 权重 | 加权分 | 评分依据 |
|---|
| 学历 | 安徽中医药大学 | 71% | 25% | 17.8 | 一本公办,查表→71% |
| 实习/项目 | 审计实习 3 个月 + 省赛奖 | 85% | 30% | 25.5 | 凭证审核/数据核对/报表/Excel→与 JD 高度匹配 |
| 竞赛/荣誉 | 省三等奖 + 校奖 + 奖学金 | 75% | 15% | 11.25 | 电商省赛三等奖 + 财会校赛+SRT 论文 |
| 技能 | CET-6+初级会计+Office | 75% | 15% | 11.25 | 语言 + 专业证书 + 办公工具 |
| 品格 | 剧团部长 (统筹/排班) | 75% | 10% | 7.5 | 组织力/执行力/责任心 |
| 专业 | 会计学 (财务类) | 100% | 5% | 5.0 | 完全对口 |
| 总分 | | | | 78.3 | |
总分排名表
📊 [岗位名] 评分排名表
岗位类型:X 岗 | 权重:X 权重 | 筛选:N 进 M | ✅推荐 X 📌待定 Y 🚫淘汰 Z
┌─────┬────────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┐
│排名│候选人 │总分 │学历 25%│经验 30%│技能 25%│项目 15%│专业 5% │建议 │
├─────┼────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
│ 🥇 │ 张三 │78.3 │ 17.8 │ 25.5 │ 11.25│ 11.25│ 5.0 │✅推荐│
│ 🥈 │ 李四 │ xx │ xx │ xx │ xx │ xx │ xx │📌待定│
│ 🚫 │ 王五 │ — │ — │ — │ — │ — │ — │🚫淘汰│
└─────┴────────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘
技术岗排名表的表头为:排名│候选人│总分│学历 25%│经验 30%│技能 25%│项目 15%│专业 5%│建议
管培岗排名表的表头为:排名│候选人│总分│学历 25%│实习 30%│技能 15%│项目 15%│品格 10%│专业 5%│建议
📋 第二部分:行动建议(按岗位区分,必须个性化)
岗位 A:[岗位名]
✅ 强烈推荐面试(≥70 分)
| 优先 | 候选人 | 总分 | 候选人背景 | 🎯 沟通方向 |
|---|
| 1 | 张三 | 78.3 | 车辆工程专业 +3 年动力域测试 +CANOE/UDS 技能 | 重点确认是否有结构设计经验,询问 CATIA 能力 |
| 2 | ... | ... | ... | ... |
待沟通确认(60-69 分)
| 优先 | 候选人 | 总分 | ✅ 优势 | ❓ 需确认问题 |
|---|
| 1 | 李四 | 65.5 | 4 年经验最长,有 Ford 大厂经历 | 计算机转车架?是否有机械设计背景? |
❌ 不推荐(<60 分)
💬 沟通策略(一句话指引,不列表格)
各岗位下的候选人按优先级简短说明沟通顺序和要点即可。
示例:
岗位 A: 先约张三面试(本地 + 匹配度高),面试通过后视情况联系李四确认到岗意愿。王五不联系。
岗位 B: 赵六专业对口但异地,先电话沟通意向;刘七实习经验丰富但 27 届,需聊动机。两人都通过后再决定约谁面试。
岗位 B:[岗位名]
(同上结构,若多岗位同时筛选则每个岗位独立呈现)
品格推测方法论
| 信号 | 推测品格 |
|---|
| 项目组长/团队负责人 | 领导力、责任心 |
| 三人以上协作项目 | 协作能力、沟通 |
| 国家励志奖学金 | 刻苦、逆境向上 |
| 班长/社团社长 | 组织力、责任心 |
| 专升本学历路径 | 自驱力、上进心 |
| 英语六级 + 项目英文文档 | 钻研、抗压 |
可复现性保障
- 步骤不可跳步:严格按 特征提取→JD 类型判定→硬门槛过滤→加权评分→个性化建议→结构化呈现 顺序执行
- 每维度注明依据:原始%取值必须附带明确理由
- 学历评分严格执行分档表:必须根据学校实际档次查表,禁止给所有人相同分数
- 行动建议必须个性化:根据候选人具体经历给出建议,禁止模板化
- 分数公式公开:每项加权分写出
原始% × 权重 = 结果 的算式
- 保留硬门槛结果:淘汰原因保留到最终输出
- 排名表含所有维度列:方便追溯分数来源
- 同一 JD+ 同一组简历→同一组分数
注意事项
- 区分度原则:分数覆盖 0-100 全区间
- 学历评分必须区分学校档次:C9/985/211/双一流/一本/二本/民办,每档分数不同
- 项目经历和技术栈有重叠:评项目时已体现的技术栈不重复扣技术栈分
- 品格推测注明依据
- JD 类型判定必须明确输出
- 多岗位时每个岗位独立筛选
- 行动建议禁止模板化:每个人的沟通方向和需确认问题必须不同