Why can't software engineers find jobs? I want to share four "horror stories"

640?wx_fmt=gif&wxfrom=5&wx_lazy=1

Editor's note: As a programmer, do you lose confidence in yourself if you don't receive the job offer you like? Iwan, founder of coderfit.com, a site for entrepreneurs and programmers, thinks you don't need to worry. He shares four "horror stories" to tell us—the reasons why great engineers are rejected may not have anything to do with their level of business or cultural fit.

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


When people don't get an offer, they tend to think it's their fault: "I was turned away by three companies, so I'm probably a bad engineer." After working in the tech recruiting industry for a while, I can I assure you, random and distracting factors also play an important role. The reason you get rejected so often is probably by chance or for unreasonable reasons.


Horror Story 1: Candidate rejected for adopting new framework


A company asked for front-end recruitment, so I introduced them to a front-end engineer who made a lot of contributions to ECMAScript and wrote a lot of open source code. It took me weeks to find this guy and hours to properly evaluate him, including doing video interviews (which we love to do here at coderfit.com). but! An engineer at the agency decided without hesitation that he could not be hired after just 10 minutes of browsing through his code submissions. The candidate wasn't even rejected in a decent way, because the company sent him a "possible" reply:


"Hello! Although your resume and cover letter are very competitive, unfortunately due to limited positions, our recruiting team has not included you for further consideration after further review of your application. … …”


This is a very poor answer because the candidate never even submitted a cover letter. When I saw the letter, I immediately dropped what I was doing and drove to their office to talk to the interviewing engineer who rejected the best front-end engineer candidate I interviewed in 2017.


首先,这位面试工程师甚至都不能真正告诉我,他为什么拒绝了这个候选人,他给出的理由只不过是说“代码被过度设计了”,尽管实际上这段代买的结构是完全正确的,所有ES6操作符和短函数都是正确的、有效的。在和他争论了10分钟以后,候选人被拒绝的理由变得更加清晰:他在代码中使用了一个不为人所知的MVC框架,而这位面试工程师恰好不知道。实际上,我对这位候选人在编码面试中使用的框架印象非常之深刻,以至于我无法理解这可能导致后面的一系列问题。


再次,我可以提供一些背景信息来解释了为什么我们的候选人使用了这样一个未知的MVC框架:这家招聘前端的公司是一个寻找可重复流程的机构,而首席工程师(不是前文中的面试者)曾经向我抱怨,他们每次都要“为每个客户重新发明一套机制”。我提名的这位候选人利用自己的空闲时间搭建了一个定制的框架,正好解决了这个机构所面临的一些问题。


因为拒绝这位候选人的面试官没有看我的笔记或我的视频采访记录,他没有考虑到为什么候选人使用这个框架,而只是按下了“拒绝”的按钮。而且更为不幸的是,当时公司的领导人(支持该候选人的那位)正在度假,无法对面试结果进行干预。


小提示:通常情况下,在对一个面试者做评估之前,先查看别人对他(她)的看法是一个坏主意。但在某些情况下,如果为自己增加一些额外的背景知识,确实是有意义的。至少不会像这个故事中的面试官一样,错失了一个非常优秀的候选人。


考虑到这家公司的CEO给了我一些额外报酬来让我给他们带来“最好的人”,这个故事变得尤其让人难过。我在寻找候选人上付出了额外的努力,然而,在招聘团队和面试官的共谋下,他们没有真正评估我提名的候选人。那位拒绝候选人的工程师甚至告诉我:“招聘对我们来说是最重要的。”如果你作为招聘人员给公司找到了得力干将,那就会让你更有自豪感;但如果你不太清楚自己的团队到底需要什么样的人才,那么招聘工作的价值就很小了。


更糟糕的是,这位前端工程师在受到这样的待遇后,从此拒绝和任何其他来自瑞士的雇主来往(还没交出求职信就被人力资源部回绝,长时间得不到反馈,自己提交的代码等了两周时间才被查看等等)。



恐怖故事二:前谷歌员工竟然因为没有熟记贝叶斯公式而遭到拒绝


一个正在寻找Python工程师的创业公司面试了一个曾经在谷歌-苏黎世工作了四年的程序员。在把这位候选人推荐给初创企业的过程中,我遇到了一些问题,因为每个人都认为他会要求和谷歌-苏黎世等价的报酬(几乎是行业平均工资的两倍)。


然而,他对下一份工作的实际期待并没有那么高——他只是想要一个解决各种有趣的技术挑战的和谐团队。因此,他接受了每一次面试邀请,并给大多数和他交谈过的人留下了深刻的印象。一家初创公司让他通过了四轮面试,终面里,他和团队里的每个人都进行了一对一交流。


然而,在面试结束后,团队中的一个人站了起来,明确表示因为候选人不知道也不能解释贝叶斯公式,因此不能被公司雇佣。


在座的每个人似乎都不关心,但技术主管除外。他正是那个和团队整体利益风雨同舟的人,也将是向首席执行官直接汇报的人,他们几个月以来都没有雇佣任何人。这一次,他行使了否决权,并明确表示,因为不了解某些琐碎的事情而拒绝优秀的候选人是一个相当愚蠢的理由。他们雇佣了这位前谷歌工程师。结果表明,这位工程师是公司有史以来做出最大贡献的人。


事实证明,技术主管的决定是正确的:候选人以超过记录的速度安装了他的开发环境,并在第一天就解决了三个bug。最终,每个人都因为HR雇用了这个人而深表感动。


谷歌和它的竞争对手公司们使用一些非常有技巧性的问题或者算法问题来筛选候选人是无可厚非的,因为像这样的国际大公司可以承担得起招聘过程中出现的“假阴性”结果,他们可以拒绝很多实际上非常优秀的候选人,因为有源源不断的优秀人才想要迈入这些公司的门槛(谷歌每年都会收到三百万份求职申请)。但是初创企业可承担不起这样的风险,一不小心,就可能与最适合的优秀候选人失之交臂。正如Erin Ptacek所说,如果要给疯狂下定义,“就是以谷歌的风格行事,并期待能给你带来成功。”



恐怖故事三:程序员被人力资源部遗忘了


通常都我会密切关注我提名的候选人的整个招聘过程。当我在度假的时候,一个CEO告诉我他们将雇佣一个我提名的工程师。然而,在另一个国家远程工作的人力资源部没有跟进。由于我在度假,我也没有跟进,而这位候选人在等待了几个星期以后以为自己被拒绝了,因为没有人和他进一步沟通。这是一个非常典型的错误。


两个月后,我再次和这位候选人进行沟通,问他发生了什么事。他和人力资源部都不明白为什么没有人和他进一步保持联系。所以我给所有的相关人士都写了邮件,询问我们是否能完成这个招聘过程。


人力资源部门通常是这样一个存在——薪水底下,缺乏组织。内部招聘人员通常负责其他行政任务而不是招聘。更糟糕的是,有的初创公司甚至没有人力资源部,那些来自前台的工作人员负责对建立们进行评估、拒绝或通过。这些人通常不太了解技术岗位的要求。他们只是听招聘经理对“正在寻找的人才”做出的15分钟简报,然后做出所谓的适当“过滤”。由于缺乏背景知识和对岗位的理解,往往会导致公司招不到合适的人员。



恐怖故事四:候选人因水平高于面试官而惨遭拒绝…


别笑,这不是段子。我就亲眼见到过水平超过面试官的候选人。这位候选人是一个22岁的“神童”开源程序员,在简历筛选阶段就被一个面试官拒绝。让我们叫这位面试官“乔恩”吧,我很震惊如此优秀的候选人居然被乔恩拒绝,所以我打了个电话,进行三方会谈。


Jon explained on the phone why he rejected that candidate, but it sounded ridiculous and I don't know if Jon was serious. I must say that this Jon is very weak in terms of code level, Github contribution or other ability points, but after all, he is in charge of resume screening, so I have to listen to feedback from him.


Jon pointed out some problems in the candidate code he saw on the shared screen. All the problems he mentions are actually more optimal options, not so-called problems. His other critiques do seem problematic to the unprofessional, but they're actually all for good reason. Then I lost my temper. These criticisms make me wary and suggest that the candidate's code quality on Github is better than Jon's. Here, I did something contrary to what I was doing. Thankfully HR stopped me and told me "we're not evaluating Jon". I felt like I couldn't communicate anymore, so I quickly changed the subject and hung up the phone.



Summarize


All in all, recruiting is more complicated than you might think. If you get rejected, it doesn't mean you are an unqualified engineer, as there can be many reasons behind the rejection.


Source: 36氪


The copyright of the article belongs to the original author, and the reprint is only for learning and use, not for any commercial purpose. If there is any infringement, please leave a message to delete it. Thank you for your cooperation.

640?wx_fmt=png

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324641475&siteId=291194637