面试官到底想了解什么?

我说说我这边的面试流程,以及每一轮的面试官到底在看什么。可能跟很多人想象的不太一样。

我们是做IT的,技术面试一共三轮,每轮的面试官角色不同,关注的东西也不一样。第一轮是团队里的高级开发来面,他主要看专业技术能力,其他的基本不关注。第二轮是我,除了技术,还要看沟通、协同、表达这些横向的东西,以及有无啥亮点。第三轮是CTO,他的视角又不一样了,看的是行业经验和这个人能给团队带来的增量。

三轮面试,三个视角,层层递进。很多人以为面试就是考技术,技术过了就拿offer,其实不是这么回事。

先说第一轮。高级开发面技术,这个安排本身就是一种筛选策略。业内比较通行的做法是,第一轮由同级别的工程师来面,目的是做技术基线筛选,确认候选人的技术底子是不是达到了岗位的基本要求。

一般来说,公司的面试评估维度,分为沟通、问题解决能力、技术能力、测试能力四项。

第一轮主要看的是后面两项:技术能力和问题解决能力。能不能把代码写出来,方案思路对不对,边界情况有没有考虑到,这些是核心。

但这里面有个东西很多人没意识到。技术面试考的不只是你会不会,而是你理解得深不深。同样一个技术问题,能说出「是什么」的人很多,能说出「为什么这样设计」的人才说明真正理解了。我在团队里跟高级开发对齐面试标准的时候,经常会提一个要求:不要只问候选人某个知识点是什么,要追问一层为什么。比如你问他HashMap的底层结构,他能说出来。但你问他为什么JDK8以后要从链表转成红黑树,为什么阈值是8不是16,能不能答上来,就看得出这个人是背过答案还是真的想过这个问题。背八股文能过第一轮的人不少,但多追问一层,很多人就露馅了。面试官心里其实很清楚,能把「为什么」讲出来的人,到了项目里遇到问题也是能自己往下钻的,不需要事事等人教。

这点真的非常关键,我经常会提到,这个是区分度。要有一定的深度。请广大程序员,务必要记住这一点。你平时对技术没啥兴趣的,没有课外去研究,在深度上,是很难达到的。你就是要有一探究竟的兴趣。

过了第一轮之后,面试官的关注点就会发生明显的变化。第二轮是我来面,我是团队的技术负责人。技术深度我当然也会看,但我更在意的是这个人进来以后能不能和团队合到一起。我见过技术能力很强但跟团队配合不来的人。写代码谁也不服谁,code review的时候经常否定别人的方案但说不出建设性的意见,讨论技术方案的时候表达不清楚自己的想法,最后搞得一屋子人都不痛快。这种人进来,团队效率反而下降了。技术能力决定了一个人能产出多少,沟通协同能力决定了这个人能在团队里发挥多大的价值。

业内有个说法叫T型人才。纵向是你在某个技术领域的深度,横向是跨领域协作、沟通、理解全局的能力。第一轮面的是纵轴,第二轮我要看的是横轴。这个概念最早是麦肯锡提出的,后来在科技行业被广泛采用。Google和微软的招聘流程里也有类似的考量,不是只看你能不能写代码,还要看你能不能跟产品经理、设计师、其他团队的工程师有效地合作。一个只有纵轴的人,适合做独立贡献者,但大部分岗位不是让你一个人闷头写代码的。

第二轮还有两个我会重点看的东西:候选人接下来的职业规划,我们团队能不能提供。我会问他接下来两三年想做什么方向,想往什么方向发展。如果他想做架构方向,但我们团队当前的业务阶段主要在做功能迭代,那哪怕技术再对口,进来之后大概率会失落。入职半年人就走了,对他是浪费时间,对团队也是成本。这个视角,说实话,只有带团队的人才会天然地去想。因为招一个人的隐性成本,最终是团队负责人在承担。HR关注的是这个人能不能招进来,而我关注的是这个人招进来以后能不能留住、能不能成长。招人不是填坑,是给团队加一个人。这个人会改变团队的协作节奏和氛围。如果他接下来想做的事情和团队方向一致,那他会跟着团队一起自然成长。如果方向不对,硬拉进来也没用。

第二个是:有无什么亮点。这个我每次面试候选人必问的。当然我也是出于挖掘他的亮点。有些候选人其实有不少亮点来的,但是不会表达或者一紧张忘记了。这个时候,我看到简历里啥亮点都没有时,我会引导他的。比如他其实主导落地过一个复杂系统的,又或者从0到1重构过复杂系统的等等。

我会帮忙挖掘出来。

这里有一个区分需要了解:参与一个复杂系统和主导一个复杂系统,是完全不同的经历。参与过的人很多,你能讲清楚自己负责的那块模块,用到了什么技术,实现了什么功能。但主导过的人,他需要具备的能力远不止这些:架构怎么决策的、跨团队怎么协调的、技术方案怎么选的、风险怎么预判的、资源不够的时候怎么取舍。这些能力不是光靠写代码能练出来的。

有这种经历的人,你让他聊一个他做过的项目,他能把决策过程讲得很清楚。为什么选了这个方案而不是那个,当时面临了什么取舍,哪些地方踩过坑,如果时间重来会怎么做。他的叙述是有逻辑链条的,你能感受到他在项目里是做了判断的。而没有这种经历的人,讲项目像是在复述需求文档:项目是做什么的,我负责了哪部分,用了什么技术。信息是对的,但你听不到思考和决策的痕迹。这种主导复杂系统落地的能力,是区分一个工程师是「能干活」还是「能扛事」的关键指标。

好,看到这里后,你记住几个关键词:有无亮点,有无横向能力。这个是我自己作为技术团队管理者,会看的。

到了第三轮,CTO的视角跟前面两轮完全不一样。他不关心你某个框架用得熟不熟,也不关心你跟团队相处得怎么样,那些前面两轮已经看过了。CTO看的是更宏观的东西。

第一个是行业积累。我们做的系统,涉及门店进销存、供应链、会员营销这些业务,如果你之前做过类似的系统,「对业务逻辑有深入的理解」,这就是一个很大的加分项。行业知识是有复利效应的。在同一个行业深耕过几年的人,跳到同行业的公司,上手速度比跨行业的人快得多。因为他带过来的不只是技术能力,还有对业务的认知。比如做过电商支付的人,他知道幂等怎么做、对账怎么设计、资金安全要注意哪些坑。这些东西不是看文档能学会的,是在项目里踩过的坑。很多候选人低估了行业经验的价值,觉得技术是通用的,到哪都一样。同样的技术能力,有行业积累的人犯的错误更少,做出的架构决策也更贴合业务场景。

第二个是他能给团队带来什么不一样的东西。CTO关心的不是你这个人能不能干活,到了第三轮,能干活已经是默认的了。他关心的是你能不能带来增量。这个增量可以是某个领域的深度经验,也可以是某类系统的架构经验,甚至是一种做事的方法。我见过有的候选人技术能力一般,但他在上一家公司做过完整的服务端迁移,踩过很多坑,这些经验对我们团队正好有用。有的候选人在技术社区很活跃,能给团队带来技术氛围。CTO在面试的时候,脑子里其实在想一个问题:这个人进来以后,团队里有没有人能从他的经验中受益。如果答案是有的,那这个人就不是简单地来干活的,他能推动团队往前走。

看到这里,你依然需要记住几个关键词:是行业累积和业务熟练度,尤其是业务熟练这块,我司的CTO特别看这点的。

把三轮串起来看,第一轮考你能不能干,第二轮考你能不能一起干,第三轮考你能不能带来增量。三个问题,三个不同的面试官,三种不同的视角。每一轮的面试官写的反馈是独立的,但最终会汇总到一起做决策。某一轮表现不好不代表直接淘汰,但如果某一轮给了负面信号,后面就需要更强的正面信号来对冲。比如第一轮技术面评价一般,那第二轮和第三轮就需要拿出更突出的表现来弥补。了解这一点,对准备面试是有实际帮助的。

给候选人的建议其实不是去刷更多的题,而是想清楚自己在上面这些维度上,有没有拿得出手的东西。技术基本功够不够扎实,能不能讲清楚背后的原理。跟团队协作的时候有没有值得说的经历,职业规划是不是清晰。有没有一个你觉得真正有挑战的项目经历,能讲出决策过程和取舍逻辑。如果这几个问题你都能给出有说服力的回答,面试的结果通常不会差。

面试其实是一个双向匹配的过程。我在评估你的同时,你也在评估这个团队和这家公司值不值得你花接下来几年的时间。真正好的面试状态,不是你紧张地等着对方出题,而是双方都在判断:我们是不是合适的搭档。我见过的最好的候选人,进来的时候心态都是这样的,他不是在「面试」,他是在了解一个机会,同时让我了解他。这种状态下面试的通过率反而最高,因为真实的东西是藏不住的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SamDeepThinking

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值