程序员必知:企业如何招到一个靠谱的程序员

版权声明:本文为北京尚学堂原创文章,未经容许不得转载。​html

与其余IT公司同样,程序员的流动性也比较高,而做为企业的架构师,须要为所在的部门招聘各个层级的开发人员,固然也包括外包。他们可能没有参加过任何人力资源方面的培训,也没有正式研究过如何面试程序员,可是我经过对大量程序员的面试,以及录用后效果的观察,得出了一套本身的面试策略,去找到那些真正靠谱的程序员。​程序员

1. 简历看人面试

阅读简历永远是面试的第一步。好的简历必定是正确、清晰而且可以体现候选人最有价值一面的。我首先会过滤掉那些包含错别字,文句不通或没有逻辑性的简历,由于若是一个程序员连本身的简历都不肯意去仔细检查并完善的话,很难想象他写出来的代码质量会如何。接着,我便会重点阅读简历中的项目经验部分,在这里我可以看到面试者的开发经验,技能栈,而且判断他们熟悉的技术框架、工具是否与目前公司要求相匹配。算法

这里,我还会特别关注面试者是如何来写这部分项目经验的,你须要用尽量简练的文字来描述项目的背景,你在项目中承担的角色、参与项目的时长,你用到的技术、以及你在项目中的亮点等信息。优秀的程序员们每每有一个共同的特质,那就是善于概括,并可以一针见血的发现问题或把一个问题说清楚。我常常看到面试者在简历中像写故事通常地描述他们的项目经历,光这一个章节就有好几页,其实这反而会给你减分,由于这会让面试官判断你缺少必要的概括能力。更多精彩内容关注微信公众号:北京尚学堂。安全

2. 给面试者10分钟介绍本身最擅长的微信

 

当面试者经过了笔试和HR面试以后,你就须要面对面地对候选人进行面试。我远不是什么面试专家,但我有一些本身的独特方法。我讨厌问一些很我的的问题,好比你的职业规划是什么?你为何想换工做?等等。我更愿意给面试者10分钟时间,让他介绍本身最擅长和最感兴趣的领域。这每每能帮助我很快做出下面的判断:架构

这我的对他所作的事情是否充满激情框架

他们是否能在团队中颇有效地进行沟通jsp

他们是否在专业领域足够擅长工具

你的团队是否会乐于和这我的一块儿工做

这一招我在面试中用得不少,而实践证实也确实很是有效。

3. 基础打牢了吗?

通常,有必定规模的公司都会为面试者安排机考或笔试,从而能首先筛掉一批未能经过的面试者。另外一些规模较小的或初创公司则会让面试官直接进行技术面试。其实,我以为这二者的差异不大,有经验的面试官每每可以经过几个最简单的技术问题,判断出面试者的技术基础是否牢固,这不是为了证实他有多优秀,而是用来判断他是不是一名合格的程序员。对于我来讲,并不看重机考的成绩,由于机试的考题不少可以在网上获得,特别对于一些外包公司,他们老是可以经过各类途径获得考题,从而使得他们推送的外包可以顺利经过笔试。

下面是我常常会问的几个问题(JAVA):

HashTable与HashMap有什么区别?

Servlet是线程安全的吗?

JSP中 @include跟jsp:include的区别

HTTP的response code 403和500分别表明什么

......

这些问题都很简单,但一些基础不牢的程序员每每会在这个时候露馅。固然,根据面试岗位的不一样,你还能够有针对性地问一些问题,例如,你须要找一个能写核心算法的程序员(好比 银行的总帐计算,或者保险公司的保费计算),那么你能够问一些算法相关的问题。

4. 技术深度够吗?

具有牢固的技术基础,通常就能够知足项目中普通程序员的要求了,但若是你须要找的是一个资深程序员,那么你还须要对面试者的技术深度进行考察。咱们如今作项目时都会大量使用框架,这能使咱们的开发效率和质量都获得提高和保障,但同时也下降了对于程序员开发技能的要求。所以我通常会询问面试者下面的问题,来考察他对所使用框架的掌握程度。

请你描述一下,在这个项目中,从一个HTTP请求发起,到最终的Response返回,它在你的系统和框架内部是如何流转的?

除了技术层面上的考察以外,对于资深开发人员,还须要考察他们的设计能力。说到软件设计,大部分面试者都能熟练地背出面向对象的三个基本特性:继承、封装、多态,也能把它们的概念描述清楚。​

5. 选择适合所在企业文化的人

这一点也曾是我经历的一个误区,我老是但愿能为团队招到技术能力最强的人,而忽略了他是否与整个公司和团队的文化相匹配。这每每会形成,虽然招到了人,但没过多久就由于理念不一样不欢而散的结果,反而给公司带来了损失。让咱们看看GitHub的负责人是怎么说的。更多精彩内容关注微信公众号:北京尚学堂。

我曾在具备鲜明文化差别的不一样公司或团队工做,看到许多崇尚开放、开源的程序员在一个相对封闭,具备不少流程以及规范限制的公司中很难发挥,最终选择离开。所以在招聘程序员时,选择合适的每每比选择最优秀的更重要。

6. 行为面试法

行为面试法多是我在整个面试过程当中惟一用到的教科书面试方法。一个程序员是否可以很好地工做,不只取决于他可否顺利地完成开发任务,更重要的是在遇到一些特殊场景或问题时,他可否合理有效地处理和解决。行为面试法可以帮助咱们从面试者描述的过去某一具体事件中,预测将来他在工做中可能的表现。下面即是一个我常常用到的问题。

“请谈谈你在这个项目中遇到的最大困难或挑战是什么,你是如何解决的。”​

从面试者对上面这个问题的回答中,我可以很好地判断他是否有较强的独立解决问题的能力,而我认为这是除技术能力以外,程序员最应具有的能力。

7. 给他们一个虚拟任务

通过上面的这些环节,你可能对面试者的总体状况已经比较满意,但先别急着下结论。我曾见过可以顺利经过上面全部面试步骤,而且被雇佣的程序员,当他们进入实际工做后却没能把事情作好。

在你肯定是否录用他们以前,能够给他们一个虚拟任务。我不是说一个抽象的程序问题,而是指一个真实的,可能就存在于你当前项目中,而且须要在一两个小时以内完成的一个开发任务。更多精彩内容关注微信公众号:北京尚学堂。

8. 以上毫不能保证你招到合适的程序员

你能够在面试程序员时参考上面的这些步骤,对于我来讲大多数状况下它们都是有效的,但偶尔也会出错。你须要结合你所在公司和团队的实际状况,提炼你以为有用的面试步骤,并忽略其余的,最终造成属于你本身的面试策略。另外,你还须要根据面试时的实际状况,随机应变,由于人是最复杂的动物,而面试过程倒是须要双方互动的。

想象一下,在你退休以前的将来几十年时间里,你都须要每周40小时地工做,所以不管是公司仍是应聘者都应该互相尊重,创建充分的信任,并充分判断是否适合对方后,再肯定是否雇用某人或接受一个公司的职位。你的目标不该该是简单的得到一份工做或者雇佣某我的,而应该以得到更多的工做乐趣和创建更良好的工做关系为目的去看待招聘这件事,切忌不要急于求成,就像谈恋爱同样,当双方都有感受时,一切就水到渠成了。更多精彩内容关注微信公众号:北京尚学堂。

若是你的目标是就业,而且是高薪就业,那么北京尚学堂是你正确的选择。北京尚学堂一直在为改变中国IT教育努力着。十年以来,北京尚学堂坚守“为莘莘学子改变命运而讲课”这份情怀,不忘初心。感谢你们的阅读!​

更多猛料!欢迎扫描上方二维码关注北京尚学堂官方微信公众号(资料领取验证消息:156)

相关文章
相关标签/搜索