从微博上看到转发的文章,如何hire一名数据科学家(http://treycausey.com/hiring_data_scientists.html),主要的讨论点在博主认为不要写白板代码。看了下,有些赞同,有些并不很赞同。简单列一下,做个备份。
博主的面试过程分四部分:
电面,根据候选人资历问一下简单技术问题;
家庭作业;
面试;
不/发offer;
博主有个观点是:不要你自己设定好限制条件(如:XX证书、XX年工作经验,XX语言),来寻找你所需要的人。因为数据科学家多种多样,你并不能完全确定别的数据科学家是什么样子,而你要找的是一个以后的工作同伴,因此,扩大自己的限制条件,也许很多时候会发现一些新的发现,比如:自己忽略了这个岗位本该具有的一些更重要的东西。当然不是说之前说的东西不重要,而是他们不是“唯一”重要的。更重要的是,你不能只按照“目前”岗位所需要的技能来找人,而是按照半年甚至一年后这个岗位所需要的技能来招人。
面试流程:
电面时先简单介绍下职位和需求,讨论一些可扩展的问题,问一些相同的问题作为不同候选人之间的baseline,给候选人留5分钟提问。最后留家庭作业。作业最好别太复杂,最好是模拟一个工作场景,一两个小时可以做完,防止有人有孩子没时间做。
对于那些有能力,可能会有很多offer而可能不想做作业的候选人,也许他不是你想要的人。因为你想要的是一个同事,是喜欢这份工作和挑战的人,而不是只为了薪水而来的人。
当面面试时,博主强烈反对写“白板代码”。因为这样“不自然”:没有谁在工作中是写白板代码,而不用Google啊,stackoverflow啊什么的。而且这只是考察了候选人的“默写”能力,只不过再次做了一次算法课的测验而已。【个人表示不同意,因为面过真的很简单的白板代码也没写出来的。talk is cheap, show me the code.】
最后,博主说的是人道一些,谁面试时都压力很大,把候选人当人看,要有善意。
对于与众不同的面试原则,博主很骄傲.