从CTO到CEO,10年面试1000人,我是怎么面试程序员的?
Posted ShowMeBug
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从CTO到CEO,10年面试1000人,我是怎么面试程序员的?相关的知识,希望对你有一定的参考价值。
什么时候一位程序员真的晋级成为技术 leader 呢?很多人可能会说是从管理别人开始。而作为管理者,其中一项重要工作就是帮团队招募人。说白了,就是你要从单纯敲代码,变成面试候选人来敲代码了。
如何做好面试官,就是成为技术 leader 的第一站。
当你第一次面试别人的时候,你紧张,激动,甚至小兴奋:被别人面试了这么多次,这次终于可以面试别人了。
然后问题来了:怎么面试候选人,才能更好的挑出我未来的同事,同时高端大气上档次,充分显示我司的水准?
bug君特意为你采访了一些技术大牛,看他们是怎么面试候选人的。第一个为你带来的是ShowMeBug 的创始人李亚飞的访谈实录,作为10年技术大牛,在大公司待过,创业公司待过,自己连续创业 3 次,他面试人才的经验不断迭代升级,越来越高效和直接。
接下来我们一起看看,他是怎么面试程序员的吧。
一、小组长如何高效面试未来组员?
我在招聘程序员的路上分为三个阶段。
第一阶段是在大公司。
我在 2010 年毕业去了深信服,进去一两年之后就成了技术leader,开始面试别人,为深信服的高级自动化测试团队招人。面试的重点,不在于快速挑选出合适的人,而是快速排除掉不合适的人。有些人可能5分钟我就发现他不行了,所以,第一阶段在大公司,我不需要考虑面试的流程和筛选简历,面试的重点在于快速排除那些根本不合适的人。
二、CTO如何全方位考察技术人员
到了第二阶段,我去了一家创业公司做 CTO,这个时候我要帮公司搭建一支技术团队。
同样还是跟HR配合,我会把我招人的一些要求告诉HR,除了一些学历、工作年限等基本要求,我还有一些偏好:1)除了主流语言外,会一种 Ruby 或 Python 语言的;2)有自己的技术博客有github等,然后HR根据这些要求去筛选简历,最后我来面试。
这个阶段面试我有了自己的一些套路。问完自我介绍、项目经验之后,开始针对候选人做过的项目进行深挖。
你做的这个项目当时的情况是怎么样的?
遇到了哪些问题?
你是怎么解决这些问题的?
你的反思是什么?
从候选人过往解决过的问题,就能大体看出来他的工作风格。
接下来我会问一些技术基本功问题。
你怎么理解线程和进程?
如何理解进程描述符?
个别的编程语言特性
Ruby3.0的了解,对未来有什么看法
第一个问题是考察候选人的技术基本功,就像扎马步一样,马步扎得好了 ,出拳才会稳。技术也是一样的,基本功扎实了,才能更好地解决更复杂的问题。
第二个问题就是考察具体招式了,看你怎么用技术来解决具体问题。
第三个问题看的是候选人的潜力,未来是不是有成长性。
所以从这三个维度:基本功,具体招式,成长潜力,来全面考察候选人的基础技术素养。
考察了综合素质和基础技术素养之后,我们来到了最重要的环节:解决真正的工作技术问题。
这个时候我会提出一些我们在工作中遇到的技术难题,看看他的解决思路。很多时候候选人说得天花乱坠,但真正做的时候就不行了,所以我会用 ShowMeBug ,直接秀出我们工作中具体业务的代码片段,根据这个片段来交流。甚至直接让候选人开写代码,看他代码写得怎么样。
三、创业公司怎么招人?
之后我开始创业,就需要自己招人。
最开始一波是从熟悉的朋友下手,基于信任关系,还能找到一起共事的伙伴。再加上我经常在技术社区活跃,也有一定的知名度,所以招技术对我来说相对不难。
但是招其他人员,就得从市场上招聘了。一段时间之后我发现,按照我的要求,非常满意的候选人是少数,所以我不得不放低要求。别的要求放低了,但是最起码招来得能干活啊,所以这时候面试就特别注重实操能力。那么用 ShowMeBug 在线代码面试就是最高效的。
总结
面试的目的,是为了招到未来一起共事的同事。所以为了更准确地反应候选人在工作中的表现,其实可以把面试当做一场与未来同事的「技术讨论」。
既然是技术讨论,那就得尽量避免应试题/客观题,纯背答案,看不出来思路;而且也没有必要故意打压对方,问对方完全不懂的领域。最合适的事从真实工作情况出发,共同探讨,在这个过程中验证他的能力。
绝大多数人都像我一样,没有什么培训,就被HR抓去当面试官了,也经历了前几次的紧张,然后慢慢形成套路,形成自己的标准。也希望本文在给咱们技术人员在成长的过程提供一点帮助。
以上是关于从CTO到CEO,10年面试1000人,我是怎么面试程序员的?的主要内容,如果未能解决你的问题,请参考以下文章