面试官:我在面试技术人时,会考察什么?
极客时间编辑部
讲述:丁婵大小:5.68M时长:04:08
你好。欢迎收听极客视点。
面试一直是职场中的热门话题,通常,我们都会从求职者的角度去考虑面试这件事,但是如果换个角度,从面试官的角度来看这件事呢?此前,极客时间专栏《微服务架构实战 160 讲》的作者杨波在极客 Live 分享了他作为面试官给程序员的面试建议。具体如下。
很多程序员会问,该如何通过心仪公司的面试。在我的职业生涯中,面试过上千人,除了一些基础的技术岗位,还有技术管理者、技术总监等。面试时,我会侧重考察 2 点,硬技能与软技能。
硬技能
对于不同的面试者,我考察的维度不同。对于工作经验 3 年内的程序员,我会更多考察他的基本功,有没有扎实掌握数据结构算法等编程基础。而对于工作 5 年以上的程序员,考察的方面较多。
首先要考察他的数据结构算法能力,因为这是基本功。其次,我会考察他的潜质,比如架构设计思维。
架构设计思维有三个关键能力:抽象、递归、分治。
抽象能力就是关注本质,忽略细节的能力。我在做架构评审时只关注两件事,一是数据模型 (或称领域模型),二是接口模型。通过数据库表、表结构、API 接口模型,就能看出来架构设计者的抽象能力如何。
递归能力的考察方法是让面试者写递归算法,对递归的掌握程度直接影响解决问题的能力。比如编译器、解析器、代码生成器、序列化算法都涉及递归,没有递归思维的程序员,做不好这方面的工作。
分治即分而治之。也就是先将大问题分解为小问题,依次解决小问题,最终解决大问题。这又和数据结构算法相关。
抽象、递归、分治,在数据结构当中都有体现,你学好了数据结构,有了解决原子小问题的基础,通过项目实践锻炼自己,就能解决更大的问题。
此外,还要考察面试者对编程语言的掌握能力,代码必须得过关。要做到深入一种语言去编程,而不是只在一种语言里编程。我在面试时,通过让面试者讲 API 的实现原理、红黑树或底层实现,了解面试者对编程语言的理解程度。
除此以外,设计模式、架构原理甚至工程流程对高级工程师都很重要。当然,面试者的项目经验也是考察方向之一,这能反映出面试者的实战能力和对技术、对项目是否热爱。
软技能
对于技术能力越强的人,越要看重他的软性能力,《奈飞文化手册》一书中提到:只招成年人。我们都希望一起合作的同事是个能对自己行为负责的成年人,不是动不动就闹情绪的小孩子。所以我会衡量面试者的沟通能力、积极主动性以及是否诚实正直。软技能不易考察,我一般会用压力面试的方法来考察面试者,也就是故意否定他,通过制造一些压力,试探对方的反应。人的软性能力到底如何,往往在压力面前可以体现出来。
总而言之,在你工作的前 5 年,可以多关注硬技能的提升,随着你工作经验的增加,工作 5 年或者 10 年就会有一个分水岭,需要你提升自己的软实力。卡耐基曾说,一个人的成就只有 15% 与他的专业技能相关,另外 85% 取决于他的软实力。可见软实力的重要性。
以上就是杨波给技术面试者的建议,希望对你有所帮助。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 小斧在你工作的前 5 年,可以多关注硬技能的提升,随着你工作经验的增加,工作 5 年或者 10 年就会有一个分水岭,需要你提升自己的软实力。卡耐基曾说,一个人的成就只有 15% 与他的专业技能相关,另外 85% 取决于他的软实力。可见软实力的重要性。1
- LDxy一个人的成就只有 15% 与他的专业技能相关,另外 85% 取决于他的软实力。1
收起评论