各位是否遇到过这种情况,“programmers that can’t program”。他们几乎写不出什么可以编译的代码,但是产品的质量却远高于他们的技能,即使这样,他们也被聘用了,本文列出7种常见的招聘误区,一起来看下: 1.专注工作经验 在招聘中,工作经验是最简单和最客观的评估。面试官在面试工作经验丰富的应聘人员时,潜意识里会认为他们有很高的技术实力,从而形成了经验附加技术的想法。 不幸的是,这样的结论往往是片面的或者说是错误的,尤其是对于程序员来讲。有些人是有做程序员方面天资的,而有些人就不是,即使他们有了几年的工作经验,他们也不会成为一名很好的程序员。 2.关注证书 在每次面试中,我会问应聘人员是否获得过证书,并且会让他们阐述一下。通常大多数应聘者都会告诉你这个证书是什么?或者是如何获得的?也有吹嘘这个证书含金量有多高?可是我从来都不相信这些。因为一般实力强悍的人是不会炫耀并且是非常谦逊的,另一方面也说明应聘者有一些基本的技能水平。 与其关注这些证书,我更关注他们对这个技能证书的实际应用与观点表述。 我也会用这种方式找出他们最擅长的领域,然后对进行实际应用与测试,编写一段代码然后展示给大家看。 3.忽略实际操作 对程序员的编码能力进行测试是必须的。但在实际面试中,这一环节很容易被忽略。对于这一现象我常常感到很惊讶,因为有些很畅谈的人,在实际操作时却完全相反。 其实代码测试并不难,也不要太复杂。在最近的面试中,我就出了这样两道题:第一个是关于数据库方面,我给了一个简单的数据库,并且里面有Persons和Cars这两张表。Cars表到Persons表里面有一个外键来对应每个人有多少辆车,并且在Persons表里面有一个主键,该如何实现?最后我会让他把结果演示给我看。
另外让他在LINQ和SQL之间选择,写查询语句,对于那些真正经验丰富的程序员来说,这个是非常简单,而且会很快写好。第二个是,我会提供一个Square到Shape的基类。我也问他如何解决“fizz buzz”这个问题,但是如果他连这一步都没有过关,请问,我还应该给他机会吗? 4.给“其他团队”招聘 每次面试结束后,我都会问自己一个很尖锐的问题:
如果答案是否定的,就不会雇佣。Joel Spolsky在Guerrilla Guide to Interviewing中曾说到,给其他人招聘是最愚蠢的做法:
5.忽略简历中的错误 在进行面试之前,我会认真阅读简历上面信息。结构良好吗?拼写正确吗? 对于程序员来说,书面沟通这条技能也是相当重要的。他不仅要会编码,也需要写文档,甚至需要发邮件给客户。如果在简历中都不能条理清晰的表达,那么在工作中呢? 6.关注技术忽略沟通表达能力 通常情况下,人们会声称:“口头表达能力对程序员来说不重要,只要他们的编码能力强就OK啦”! 在一个团队里面,如果每个人的编码能力都很强,但是他们无法顺利的表达出自己的观点、意图,那么对于团队建设来说,这该是多么糟糕的事情。 在面试中,我常常会向应聘人员提这样的问题:“请你阐述一下前一个项目?”来看看他的口头表达能力和对基本框架的理解程度。 7.畏惧实力派应聘者 技术方面的面试一般都是由高级软件工程师或者架构师进行的,他们都是在公司有一定地位,在遇到某些问题时,他基本上也是唯一有能力解决的。 如果一个实力相当或者比面试官更好的应聘者来应聘,对于面试官来说,通常会发生以下两种情况:
以上两个想法是非常普遍的,不幸的是,如果公司总是招一些新兵,那么整体的竞争性也不会有太大提升的。 你敢雇他们吗?有可能比你强? |
|