Amazon前技术副总裁解剖完美技术面试
英文原文:The Anatomy of the Perfect Technical Interview from a Former Amazon VP
Neil Roseman 厌倦了硅谷公司“我们只要最优秀和最闪亮人才”的口号。因为无论怎样强调,在真正招新时,多数人还是凭借自己的直觉,和应聘者的基本资格而定,例如 GPA,是否来自名校,有无大公司的工作经历—甚至是 SAT 成绩。
Roseman 对这样的考核标准不以为意。对曾在 Amazon 和 Zynga 任技术副总裁,面试过数百人的 Roseman 来说,面试的每个环节都需要被一丝不苟地设计。只有这样,才能从面试中挖掘出有真才实学的,契合企业文化的,且有领导者潜质的应试者。下面,Roseman 分享了他的面试哲学,解析他是如何挑选人才的。
在 10,000 英尺的高度上
关于面试,有一些需要遵循的基本组织原则,能帮你拟定一个清晰的计划。
- 在每个面试结束时,你都应该对这个应试者是否会对公司带来帮助有基本的评估。
- 成功的面试要花功夫。从面试前对简历的了解,到面试本身,再到后期总结讨论,都要当其是工作一样认真对待。
- 在面试开始的 1 分钟内,你会对应聘者形成初步印象。在剩下的时间里则要使这个印象无效。
- 大量做笔记,以得到强有力的证据选择或放弃应聘者。
- 多数情况下“最优秀和最闪亮”的人都已经有工作了。因而你真正要做的是在可选人才中挑出最好的。另外,因为你无法对招聘结果进行A/B测试,你无从得知是否挑到了对的人。
- 依然力求将巨星式人物纳入麾下,但也明确并非所有人都有“水上飘”的功夫。只要他们在某些方面超越现有员工且有潜力就足够了。
- 要找那些聪明的,能完成任务的,对特定职位有相应技能的人。
筛选简历和设计问题的正确方法
简历通常都是第一步。然而,简历并不能完全反应出应聘者的真实水平。Roseman 建议一个深入地筛选简历阶段。
“多数团队在如何阅读简历,如何找到目标条目并对其深挖方面知之甚少。”
在筛选简历时,Roseman 会关注那些应聘者未来能够提高的领域。他会去寻找简历上能被量化的条目,例如“将营业额提高 50%”。
Roseman 认为,要去发现应聘者真正完成的东西,而不仅仅作为观察者或是参与者。即使是在一个伟大的公司,主心骨和起辅助作用的员工间有很大差异。
很多情况下,这也能立刻显现应聘者对他们自己和其职责的认识。假如现在要雇用一个系统工程师,那么你需要知道他简历上”将系统可用性提高 50%”这一条他究竟参与了多少。一个优秀的候选人,无论你把问题挖掘地多深,都能够言之有物地解释清楚他声称自己完成的事。
一个具体的例子是,在 Roseman 看到简历上有这么一句”带领一组 3 人工程师团队完成了可大规模扩展的存储基础设施,并被广泛用于 Google 的多种产品上”时,Roseman 选择让应试者在白板上绘制出基础设施的结构图,并划出哪些是由他完成的,接着 Roseman 再就那些方面提问测试应聘者究竟知道多少。
总结起来,在技术面试中,要就能证明其贡献,行为以及决策的方面进行提问。具体操作如下:
- 抛出问题:给我一个关于…的例子
- 深入挖掘:对于每一个处细小成果完成的时间,地点,合作者,细节,为什么采取这种方式及其如何执行的进行提问。
- 区分出:优秀 vs. 卓越;有所涉猎 vs. 专家;参与者 vs. 领头羊。
Roseman 补充,他会去寻找那些足够有分量和深度的项目按照 STAR 的方法进行提问—STAR 代表”情况”(Situation),”任务”(Task),”行动” (Actions) 和”结果“(Results)。
具体问题就是:
- 你从事的这个项目的背景是什么
- 你的具体任务是什么
- 你采取了怎样的行动* 你是如何评估结果的
此外,在面试前阅读简历的时候也应当弄清楚,简历上列出的这些项目或产品,无论成功与否,是否会对你自己的公司有益。
技术问题与面试
Roseman 常常听到招聘主管的第一个问题是让应聘者介绍一下自己的简历。Roseman 并不认为这是个有价值的问题。Roseman 的建议是面试官先介绍自己,并陈述这次面试的目的,通过这种方式,双方同样可以消除紧张,令应聘者进入状态。
简介之后,Roseman 会直接进入技术问题的面试。他认为,对于一个工程师职位来说,落选的主要原因多为技术不过关,因此,摸清应试者的技术水平是首要的。
Roseman 首先会把注意力放在候选人所擅长的领域上。例如,如果他擅长写代码,那就问一个编程问题。重点要注意的是,不要提出一个全新的你没在非面试情况下问过别人的问题。因为你会无从得知如何引导对方来完成这个问题,也会很难判断答案的好坏。
尤其在当下,网络上的面试题库丰富。候选人完全可以从 Glassdoor 或者 Quora 等网站上得到大量信息。Roseman 认为从这些资源中找问题是可以的,但要能将其雕琢成自己的问题。对于问题的选择和修改,整个团队都应该坐下来讨论。提出的问题要能从高处开始不断向下挖掘,即使应聘者曾见过这个问题,你的深入提问也能得到不一样的信息。
而对于原创问题,Roseman 的建议则是让应聘者试着解决一些你的公司实际面临的难题。在 Amazon 时,Roseman 经常会提一个关于”推荐”系统(根据用户的购买历史而向他们推荐他们更有可能会买的其他产品产品)的设计问题。Roseman 认为,一个人们都有所熟悉的产品的问题,能看出应聘者是否既关注产品又关注解决方案。
Roseman 尤其关注产品设计方面的问题。他认为,卓越的工程师不仅只会接任务,更应该能够参与到产品开发的过程中来。而设计上的问题则能让你得知应聘者的思考方式。Roseman 会让应聘者给他们曾参与过的项目写一个小的项目管理计划, 或是提出一个通用的设计问题例如,怎样设计一台给盲人用的 ATM/ 电梯。
技术面试还需要掌握好时间分配与节奏。一个 60 分钟的面试里,在一个特别复杂的查询语句上花 45 分钟是很稀松平常的。
至于企业文化的契合和软技能,Roseman 最喜欢的一个问题是:你认为自己是个幸运的人吗?无论职位如何,这都是他的必问问题。
Roseman 的解释是,他遇到过许多不认为自己幸运的人。那些人会抱怨,自己差一点就升职,可惜最后一刻被上级取消了自己在做的项目;或是会找到一些失败的其他原因。而 Roseman 要寻找的则是坚信”机会只给有准备的人”的求职者。他们懂得未雨绸缪,继而抓住一切能够展示自己的机会。对于创业公司而言这点尤其可贵。
在“幸运”的问题之后,Roseman 通常有个后续问题。不同于常规的”你认为自己的优势和劣势在哪儿“,Roseman 换了一种思路去提问。他会让应聘者试想,如果让他的师长,同事,或是上级用三个形容词去形容他,他们会选择什么,并具体例证。对与经典的“自我评估优势,劣势问题”一些人会回答,自己的缺点是工作太努力了。这种提问方式就规避了很多“优势,劣势”问题的弊端。
另外一点 Roseman 坚持的是,不要轻易缩短面试的时间。即使你在 15 分钟的时候已经决定这不是个合适的候选人,也应该完成整个面试过程。对应聘者来说,他们依然会有所受益。
相反,如果这个应征者明显是这个职位的绝佳人选,结束时则应进一步增加他对职位的兴趣。在面试时,能够很好地回答应试者的问题并传达出你对公司的热忱是很重要的两点。
招聘团队
招聘团队的质量会直接影响到所招员工的整体质素。Roseman 认为,多数公司都没有花时间训练当前雇员的面试技巧。
Roseman 要求招聘团队中的每个人都和应征者见面,并在面试过程中做详细的笔记。当最后所有人聚在一起时, 每人投票并反馈信息。这个最后商议时间不能被无限拉长,每个面试官在言之有物的前提下要精简。Roseman 对于他自己的招聘团队的要求是:1)如果他们无法综合地反馈信息,例如面试后对应聘者的评价仅仅是 “这人还不错”, 那他们则是在浪费所有人的时间。2)如果你无法学会成为优秀的面试官,要么你去学会如何成为优秀的面试官,要么就不要面试别人。Roseman 在面试中不会给应征者施压,却对他自己团队成员在面试新人上的表现要求严格。
成为一个好的面试者也是现有雇员展示自己能承担更多责任,对公司有深刻思考的好机会。
在做出招聘决策时,提出的观点要能够令人信服。Roseman 认为,这是个团体的决定,并不能是来自招聘经理的压倒性意见。
无论硅谷标准有多高,你都不应该要求每位新员工有“水上飘”的超能力。最简单的衡量标准是只要新招比在同等职位上现有员工的水平高足矣。长远看来你想要实现的是在每一次招聘中逐渐提高标准。
至于员工推荐,Roseman 十分欢迎,他十分乐意给员工推荐奖金。他认为这是找到优秀人才最有效和最经济的方式。
Roseman 的招聘哲学总结
- 自我介绍让大家放松进入状态。
- “简单介绍你自自己”在技术面试中不是个有用的问题。
- 通过深度提问以辨别应聘者的对项目的参与程度。
- 不要尝试无从辨别答案好坏的新问题。
- 现场写代码。
- 探究算法,数据结构,代码组织和简洁性。
- 故意提出指示不明的问题,观察应聘者是否发问。
- 通过设计问题考察其全局思考的能力。
- 确认应聘者具备公司所需要的核心才能。
- 让面试变得有难度却不失趣味。优秀的研发人员只想和聪明人对话。
Amazon前技术副总裁解剖完美技术面试的更多相关文章
- CTO和技术副总裁应该如何分工?谁才是技术领导者?
谁是初创公司的技术领导者,是CTO还是技术副总裁?任何在创业公司工作的人都知道,我们不应该去问这个问题.因为这两个是非常不同的角色,角色本身会随着创业公司的发展而变化,两者对于业务规模都很重要. 简单 ...
- AdMaster技术副总裁谈Hadoop、营销数据、Python和挖掘平台
http://www.infoq.com/cn/news/2014/09/admaster-hadoop 卢亿雷是现任AdMaster技术副总裁,曾在联想研究院.百度基础架构部.Carbonite C ...
- 【转】Stack Overflow研发副总裁:.NET技术并不差,合适自己就好
摘要:在QCon纽约大会上, Stack Exchange的工程部副总裁David Fullerton深入解析了如何使用C#.MS SQL等技术支撑Stack Overflow网站的单块应用架构,这个 ...
- Google科学家前腾讯副总裁吴军将出席第二届万物互联创新大会
当越来越多的科技产品注入互联网的基因,"万物互联"的模式悄然兴起.第二届万物互联创新大会(B12大会)将于2016-11-13日在杭州市余杭区隆重召开.Google科学家前腾讯副总 ...
- 亚马逊副总裁谈Marketplace平台的个性化服务
说到个性化,亚马逊无疑是挖掘与利用数据为消费者打造个性化网购体验的先驱之一.而现在,几乎所有的公司和网站都在利用更加个性化的推荐算法为用户提供更好的购物和浏览体验. 亚马逊近年来尤其重视将其个性化特性 ...
- 凡客副总裁崔晓琦离职 曾负责旗下V+商城项目_科技_腾讯网
凡客副总裁崔晓琦离职 曾负责旗下V+商城项目_科技_腾讯网 凡客副总裁崔晓琦离职 曾负责旗下V+商城项目 腾讯科技[微博]乐天2013年09月18日12:44 分享 微博 空间 微信 新浪微博 邮箱 ...
- 亚马逊AWS业务副总裁:如何在基础设施上降成本
腾讯科技 林靖东 11月17日编译 亚马逊Amazon Web Services业务的副总裁.著名工程师詹姆斯汉密尔顿(James Hamilton)在AWS re:Invent大会上解释了公司是如何 ...
- Gartner研究副总裁:人工智能的五点傲慢与偏见
对于人工智能能够为各企业机构完成哪些任务,IT与业务领导者们时常感到困惑,并深受多个人工智能错误观念的困扰.全球领先的信息技术研究和顾问公司Gartner认为,开发人工智能项目的IT与业务领导者必须分 ...
- 翻译 | Qt研发副总裁分享2018年工作计划
原文作者:TuukkaTurunen,高级研发副总裁 翻译校审:Haipeng.Yulong和Ryan 引言:2018年,我们将继续完善Qt 5.9 LTS,现在我们正在为5月份发布Qt 5.11进行 ...
随机推荐
- 使用Xcode和Instruments调试解决iOS内存泄漏
尽管iOS 5.0加入版本号之后ARC机制,由于相互引用关系是复杂的.内存泄漏可能仍然存在.于是,懂原理是非常重要的. 这里讲述在没有ARC的情况下,怎样使用Instruments来查找程序中的内存泄 ...
- HTTPS背后的加密算法(转)
当你在浏览器的地址栏上输入https开头的网址后,浏览器和服务器之间会在接下来的几百毫秒内进行大量的通信.InfoQ的这篇文章对此有非常详细的描述.这些复杂的步骤的第一步,就是浏览器与服务器之间协商一 ...
- JavaScript总结一下--创建对象
在JavaScript象主要就是用下面三种语句: var box=new Object(); 或var box=Object(); var box={};//字面量 function Bo ...
- jquery中DOM的操作方法
先介绍几个比较简单的方法,不经常用到,做个记录 1. filter() 方法 顾名思义,filter是一个过滤器,如果给定表示 DOM 元素集合的 jQuery 对象,.filter() 方法会用匹配 ...
- Func和Action的用法区别
平时我们如果要用到委托一般都是先声明一个委托类型,比如: private delegate string Say(); string说明适用于这个委托的方法的返回类型是string类型,委托名Say后 ...
- SQL Server Log文件对磁盘的写操作大小是多少
原文:SQL Server Log文件对磁盘的写操作大小是多少 SQL Server 数据库有三种文件类型,分别是数据文件.次要数据文件和日志文件,其中日志文件包含着用于恢复数据库的所有日志信息,SQ ...
- Oracle缓存机制
- firefox里面title乱码
原文:firefox里面title乱码 昨天 在notepad++里面写得文档里面title里面有中文,即使在文档里面写有charset=’UTF-8’, 但是保存后在firefox运行,浏览器标签标 ...
- 随记一个C的时间加减
//Centos6 x86_64 #include <time.h>#include <stdio.h>#include <string.h>#include &l ...
- [SQLXML]FOR XML语法导出XML的易错之处
原文:[SQLXML]FOR XML语法导出XML的易错之处 [SQLXML]FOR XML语法导出XML的易错之处 Version Date Creator Description 1.0.0.1 ...