如果让您感觉更好,那么几乎每个国家都存在不良的程序员。问题是如何清除它们。
首先除草是简历。我要寻找的一件事是拥有很多声称的语言经验,而没有什么可以描述他们在该语言中所做的事情。我见过简历,几乎可以断言他们知道曾经发明的每种语言,但是他们的经验表明,他们实际上只在Access和Visual Basic中工作。那些就直接扔进垃圾桶了。10页的简历正好丢进了垃圾桶(尤其是我经验不足2年的人的10页的简历)。对于刚毕业的大学毕业生来说,经验很少,您必须对他们的表现非常挑剔。最好的候选人在履历上要小心,他们没有错误。您是否真的在寻找一个人,那么在乎他一点也不在乎校对自己的简历呢?
专业准备的简历也丢进了垃圾箱。阅读数百份简历后,您可以选择它们,因为它们使用完全相同的措词。您无法信任专业准备的简历中的内容,并且您知道此人没有自己准备。这种人将依靠他人为他解决问题,您真的希望在编程岗位上这样吗?
寻找能让人在您选择的人中脱颖而出的东西。对于那些刚刚离开学校的人来说,这当然更难,但是要寻找成就,对开源的贡献等等。
下一个杂草是电话采访。询问与您的实际工作相关的基本概念。如果人们不具备您需要的基本概念知识,那么就不值得去参加个人面试。年轻人经常认为这是不公平的,因为他们可以在Internet上查找所有内容,但事实是我从未遇到过一个优秀的程序员,他不得不在Internet上查找所有内容。您应该对自己的专业有所了解,不必每次都查找。
电话面试后,您应该选择4-5位最佳候选人并进行面试。当然,如果您只有1-2个好的候选人,那么就不要打扰已经被淘汰的人。现在,您将要问一些棘手的问题,并了解它们如何解决问题。我永远不会使用fizzbuzz测试,因为它太出名了,所以答案什么也没有告诉您。而是从您自己的代码库中解决一些问题。我可能会给他们一个要求和一段代码,然后问他们代码是否满足要求,如果不满足,为什么要满足要求。我想请他们描述他们必须解决的最困难的编程问题,以及他们为寻求答案所采取的步骤。我会问一些更深入的技术问题。记住,您正在尝试了解他们的技术能力,他们的问题解决和调试能力以及与现有团队的适应能力。我还问一些问题,他们可能不知道如何判断他们如何处理压力,这是一项压力很大的工作,我不希望有人在面试中折腰,因为工作压力大于面试压力。我希望在我们目前薄弱的领域中发挥优势,并具有团队合作并向客户展示自己的能力(我们的开发人员广泛与用户打交道),您的列表可能会有所不同。不想因为面试的压力大于面试的压力而参加面试的人。我希望在我们目前薄弱的领域中发挥优势,并具有团队合作并向客户展示自己的能力(我们的开发人员广泛与用户打交道),您的列表可能会有所不同。不想因为面试的压力大于面试的压力而参加面试的人。我希望在我们目前薄弱的领域中发挥优势,并具有团队合作并向客户展示自己的能力(我们的开发人员广泛与用户打交道),您的列表可能会有所不同。