坚持编码面试,是没法招到高级工程师的

559 篇文章 5 订阅

全文共2568字,预计学习时长7分钟

图源:unsplash

假如你是一所小型K-8(涵盖幼儿园到八年级)学校的校长,正在招聘一个新老师。这所学校只有不到20名教师,必须确保每个教师都能够教任何一个年级。更糟糕的是,不久前,一位有15年工作经验的最佳教师刚刚解约,而且这名教师还是众多初级教师的导师。你该如何补位呢?

深思熟虑过后,你精心设计了一个自认为有创意的面试方法。当候选人应试时,你让他们试讲一门幼儿园到八年级范围内的课程。为了确保候选人是全能的,直到面试开始才告知他们上哪一门课。

如果他们成功过关,你便能推断他们能够轻松地教授任何课程,因为显然他们在面对试讲题目随机选择的压力下仍然能够表现出色。

招聘启事发布之后,一些优秀应聘者随即前来应聘。你打算将这种新方法先在一名候选人身上试用,这名候选人曾与你的一名教员共事过,而且号称是学校的明星教师。你对她会前来应聘感到惊讶和开心,认为她将完美地通过新的面试流程。你联系她确定面试时间,并告诉她这个新的面试方法,好让她做些准备。

面试的日子到了,候选人来到学校,你感觉她有些紧张。对于一个经验丰富且简历无可挑剔的候选人来说,这有点不寻常。但你并未做过多纠结,便把她领到一间教室开始面试。

“我想请你讲授一堂数论课”,她脸色沉了下去,因为她已有10多年没教过8年级,你不知道这一点。但她确实专业,随即走上讲台开始授课。她讲到了因数,以及如何确定一个给定的数是否可以被2、5和10整除,但她显然是在硬撑。

当你问到GCF和LCM时,她不理解这两个缩略语的释义,你觉得这不太妙。你解释说你指的是“最大公因数”和“最小公倍数”,但就在这时,你能看出她的自信被击垮了,她的声音带着一丝忿意。

在最后一小时,她磕磕绊绊地讲解着数论的重点知识,但你感觉到她完全没有信心能在一群胡搅蛮缠的八年级学生面前把课教好。虽然她在其他几次行为面试中表现优异,但你仍坚持她也许不是最佳教师的这种感觉。深思熟虑之后,你决定放弃她,并聘请一位经验虽少但在“试讲”中表现出色的教师。

这例子看起来像是完全虚构的,面试方法也很奇怪,但事实是,这正是软件工程师的面试过程。我并不是要否认所有编码面试,我只是坚信按照这种面试方法,他们是招不到高级工程师的。

为什么?简单地说,因为高级工程师是不同的,一般的编码面试不利于他们。原因有很多:

· 他们需要大量的准备时间确保通过。

编码面试试题是从软件开发所有领域抽选的,因此很难充分准备。对高级工程师来说,很多事情放大了难题。首先很显然,他们的学校教育很早就结束了,那可能是他们最后一次学习软件开发中一些深奥的方面(比如动态编程、红黑树甚至递归),他们可能需要大量准备时间来回忆各种算法和数据结构。

其次,高级工程师时间紧迫(他们的工作要求很高,而且往往还有重要的个人责任),这就成了一场灾难。我曾听说过,许多高级工程师在向某雇主询问面试流程后,听说包含一场编码面试,便拒绝了面试。

 

· 他们迫使高级工程师改变工作方式。

高级工程师与编写面试代码所使用的基本开发环境相去甚远。他们通常处在高度优化的环境中,经过多年的改进,希望将自己从不必要的编码负担中解放出来。如果人为地限制时间,将他们从带离原环境,会令他们处于非常不利的地位。

他们可能在过去几年一直在使用他们旧雇主的专有库(内存管理、错误检查、追踪)。一次突然的编码面试就会把他们从舒适区拉出来,又回到标准库和简单文本编辑器的世界。

 

· 他们测试的内容和未来工作内容不一样。

也许编码面试最糟的是,这仅测试了高级工程师工作内容的一小部分。高级工程师的工资通常是新毕业生的3-5倍(或更多)。期望他们产出比新毕业生多出3-5倍的代码显然是不合理的——一天办不到。

相反,你找他们来干的是支持初级工程师团队、指导初级工程师、识别系统问题、调试最复杂的问题,以及在编码时,理解复杂系统以及编码所需的复杂工作。这些都不在编码面试里,这也是高级工程师讨厌编码面试的主要原因之一。

 

· 他们释放出一个坏信号。

正如你自知你雇佣一个高级工程师并不是要他来编写代码,他们也知道这点。但如果你在招聘中强调编码面试,就会让高级工程师怀疑应聘职位:“他们只是想让我做个程序猿吗?”、“我来这里是不是太浪费我的才华了?”、“这是前进了,还是后退?”

你最不该让一个有才华的工程师在面试过程中怀疑自己或公司的定位,但是编码面试就是会让他们产生怀疑。

综合以上原因,高级工程师讨厌编码面试也就不奇怪了。如果想要吸引优异的高级工程师,并在这个劳动力紧张的市场中减少面试冲突,建议不要再设置编码面试了。

那我该如何知晓他们会不会编码?如果你想测验一个高级工程师的编码能力,我建议你布置一个非常短的能带回家的任务(完成时间不超过一两个小时)。大多数高级工程师应该能用极短的时间完成该任务,这样可以不用准备编码面试了,而且可以分成更小的时间段,能够更好地适应他们繁忙的日程安排。

带回家的任务还可以让他们在自己的本地IDE(集成开发环境)中工作(如果他们愿意的话),并在必要时可以重新熟悉标准库。

 

候选人可根据自己的意愿投入多长时间,使你能够深入了解是什么成就了他们。他们的意见是否周全?有无全面考虑测试?他们编辑的代码是否合理、易懂?他们是否非常关心他们作品的质量?换句话说,你将不仅知道他们是否会编码,而且会知道他们能否编好代码,能否在更实际环境中编码。

高级工程师是任何软件公司的补给,他们最受欢迎、最值钱却也最难吸引。尤其是在劳动力市场空前紧张的情况下,招聘流程应当根据他们的特定需求调整,因为你对他们的需求远大于他们对你的需求。

高级工程师讨厌编码面试。若想吸引最好的人才,那你也该如此。

一起分享AI学习与发展的干货

欢迎关注全平台AI垂类自媒体 “读芯术”

(添加小编微信:dxsxbb,加入读者圈,一起讨论最新鲜的人工智能科技哦~)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值