本文是将IT招聘工作流程化自动化,分享组建团队的一些持续改进的过程记录。
总体方案
书面筛选上,要通过一票否决提高筛选效率。
技能水平上要维护一套人员的评估体系
- 基础上,涉及到考察知识体系,要尽快固化为类似雅思的分级量化机制,实现人人均能招聘
- 系统设计上(中高级only),只问主观问题,最好有“从零到一”的经验,主要问系统设计
综面上,主要判断其沟通表达与逻辑能力,项目经历的角色与复杂度
其它难以发现的问题,比如工作态度与挫折应对等问题,基本在面试中很难问出来,只能通过后续培训考试给纠正过来。
制定目标
招聘同相亲一样,本质在于你的期望和你的体验之间的差距
与领导对齐标准
领导一般不会介入面试技术细节,事实上你也基本上问不出落地的标准。但是可以问出当前现状,比如HC限制、目前是否紧急招人,是招专家、还是普通搬砖或者备份等。我们可能需要基于招聘窗口截止时间逐步下降标准。
与同事、下属对齐标准
作为招聘人,经常与同事交流并了解同事对新人的反馈非常重要,尤其是可以量化的问题。比如有同事和我抱怨"XX连MyBatis的Mapper都不会写"就是招聘诉求,因此需要把同事平时的抱怨录入到招聘标准中
旁听面试
如果你是招聘新手,最快捷的方法就是旁听技术专家的面试了。专家经验丰富,手到擒来,只需要多听几次,就可以总结出具体套路并复用了。这样后期就可以节约专家的时间,也可以对齐专家的标准。
了解市场评级
比如这里可以看到中位数,某人期望24*12的工资/工作三年,在网站中对应阿里P4,那么就要至少阿里P5的标准去提问。
简历初筛
在保守的大公司中,招聘进来一个麻烦人物是要担责的,因此对“不背锅”的要求最高,捡漏并不重要。
AI粗筛
给出定级标准,并交给多个AI模型进行估算
人工核对
黑名单处理
这里建议一票否决的形式提高效率
如下可能存在偏见,仅为个人观点,但是对效率提高很有效。
- 三年两跳/五年三跳:基本难有从零到一的项目成长,连同事的人名都认不全,只有多个雾里看花的经历。五年三跳建议放弃,这个也是国内IT大厂的准则。
- 英语:没过四级建议放弃,建议至少六级。这些明显是大学时期的态度和能力问题。
- 项目黑名单:XX商城项目,建议简历查重
- 断档:建议查培训班经历。在家考公或考研失败勉强接受。
- 学历:这个很玄学,难以作为标准进行评定。
上述标准可能政治不正确(即credentialism),但是如果没有完善透明的监管流程与征信代价,为了避险风险偏见将始终存在。那么是否有方法来挽救劣势呢?只有可证伪的证明(等级证书/Github/Blog)才能解决信任问题。
初步定级
针对项目经验,进行初步的定级
基础技能面试
在英语的学习中,我们通过CEFR级别来对某人的能力进行评估,IT能力测试也是一样需要试题的。
技术基础
这里指IT基础的单向面试,要知识体系涵盖非常广才可以。虽然我个人不喜欢八股文,但是它的确非常有效,专治各种滔滔不绝的精通Java和分布式锁。
这套试题的维护还是挺耗费人力的,理想的提问是使用回溯法,实时加深与回退难度。简历里提到的可以加深提问,没写的也要提问。
- 如果招人不用刷算法,参考“黑马/北大青鸟”等IT培训去提问足矣,或者让AI列清单。
- 有钱建议购买Codility等服务
如果基础水平不过关,就不要纠结对方过去的辉煌与工作年限而特招进来。有犹豫的场景一律认为是未通过。面试官需要枚举记录哪些通过与哪些失败,并供下轮面试信息共享。
面试结果不要写“优秀”,“良”,而是写成具体的结果。
设计与管理面试
如果没有全程跟进模块的从零到一的过程,那么项目经历就不重要,止步技术面,定级初中级即可。假如有主导核心流程,主要提问如何系统设计,不要在项目经验中夹杂问基础技能的问题。
区分关键字
- 角色:主导,参与,参加
- 场景:架构设计,重构搬迁,线上部署,生产定位,过程管理。
系统设计
- 需求分析如何做,有什么交付件?如何设计UML,流程,用例
- 高阶设计有什么交付件?如何重构老代码?
- 变更上线的流程?
- 系统如何部署,处理过哪些故障?如何改进?如何安全?组网图,常见云服务/Kubenetes组件,日志监控如何实现?
这些都不是行为面试的问题,而是技术问题兼真伪验证,不要放到后面。如果表达能力太差,就考虑放弃。
管理经验
这里管理的定义是对质量,进度与人力负责。而不是带几个小弟作为传话筒
- 项目的用户是谁?多少人用?你的上游需求方是谁?怎么排期,如何估算工时?
- 作为SE,如何管控整体质量?如何排优先级
行为面试
此时一般技术面已经过了,将会问一下综合问题,打开话题热度。主要是发现这家伙是否跑火车与性格问题。
举例如下,这里类似相亲,没有对错只有匹配。
- 你为什么离开原部门?
- 你遇到最难的问题是什么,如何解决的?你干过最好的事情如何?
- 你与领导的关系如何,遇到冲突如何解决的?你在工作过程中遇到怎样的下属,遇到冲突如何解决的?你与你的同事的对比,你认为谁是最好的,有什么优点?
- 你的未来职业规划是什么?你是否能够承受奋斗者文化?(只是压测下,并不是996)
- 你对新部门有什么要求?
开放性技术问题(不加减分数)
- 平时看过研究过什么书籍/博客,是否有Github?这本书中印象最深的是什么?为什么?
- 平时有没有钻研过框架源码,介绍一个看看?
- 你平时使用什么编辑器?有装什么插件提高效率?
观察言行
语言: 观察是否存在答非所问的问题,比如你问这个项目做了多久,对方回答他加班了很久
行动: 非身体健康原因下,观察衣着是否得体,站姿坐姿是否正常,是否驼背,是否玩笔。这类人我招进来过,要么任务没下文,要么不服管又搞不出来,极有可能存在性格问题。
薪酬定位
一般来说,一个人可以分为如下
原则上岗位定级与薪酬是无关的,不要因为对方要多少钱而反向推算定级。
- 技能定级是绝对值,基于简历进行CheckList判断即可。不要考虑经验年限,年龄等因素。
- 薪酬与大环境,汇率,加班工时息息相关
跟踪后续
如果候选人有意向
- 一定要及时让候选人放心,回答各种疑问,避免各种原因导致凉了
- 如果中间HR能力不行,你千万不要让HR当二传手,而直接与候选人交流
试用期观察与复盘
相比于终身工匠模式,中国的工作模式更加类似美式的短期现货雇佣制,要求成果与即战力。因此,不符合要求的需要尽快替换。
- 进展规划:在项目进度或阻塞点上,需要观察能否及时反馈问题;度量输出的工作量。
- 纠正习惯:
- 质量:通过大量的考试,形成初步标准;实施自动化静态检查,比如代码warning的清除
- 一对一培训:这种可能需要投入8~16小时的全职时间去纠正一个人的习惯
- 责任:对进度意识弱,每天回答“正在做”的组员,需要及时给予压力,不匹配就尽快开除。
- 学习培养:我们在实际工作中也发现,在职培训甚至比招聘本身更加重要。
- 业务上的从零学习与总结输出的能力。
- 纯IT理论的培养规划(比如软考/架构设计)
假如上述能力长期不具备,需迅速开掉换人。同时需要再次改进简历与面试过程,争取下次不再出现问题。
其他
关于大龄码农
大龄码农工作经历久,自然对高工资有线形需求,因此输出必然被高期待。个人感觉如下
- 很多习惯难以纠正,学习速度不如应届生,培养成本极高
- 软件领域的知识半衰期非常短,经验没有形成壁垒
- 即使强服从,卷加班,姿态低也没有用:只要有“拉通考评”,那肯定排最后。
那么是不是“活到35岁”就结束了?结论上来说是的,而且从千禧年一直如此。当然随着少子高龄化,未来就业可以参考隔壁岛国
- 年龄歧视从35升到50
- 40以上正式雇佣的机会逐步减少。