前言
上半年忙着刷题准备面试,同时也因为各种各样的事情搞得自己的写作都断了(其实主要是因为变懒了),现在新工作已经确定,后面要重新开始找回写作的节奏了。
面试流程
工作了7年左右,前后跳槽4次,根据自己的经历和自己身边朋友的经历,说说出去面试的流程一般是什么样的。
基本上分为大团队与初创团队两种情况:
初创团队
一般一个初创公司或者一个大公司的初创部门,这种情况下可能没有那么完善的职级体系,一面你的可能就直接是技术负责人了,很可能直接跳过基础知识的面试,直接进入项目面试,根据面试官的理解来考察你的工作能力,这里很可能会提出一个他们正在进行的项目问题,只要能答出合理的解决思路就可以。全程大概1到2面的技术面,然后就是hr面。其实很多情况下你的学历和过往的公司经历已经能基本确定结果,面试过程只要别太差,剩下的就看薪资能不能满足要求。
大公司大团队
这个时候面试流程就相对规范很多,通常5面左右。
一面是一线开发,基本也是你未来的同事。这一面以基础知识为主,考察硬实力,全程基本就是面试“八股文那一套”。
二面一般是组长级别的,可能也是你的领导,这里会以问项目为主,主要考察过往经历里项目的难易度,考察提出问题解决问题的能力,个人觉得依然以硬实力为主,如果面试官自身能力过硬,会不断的追问项目中使用到的技术,深入到各种技术,很多问题和相关的思考不是简单的在网上搜索一下就能得到的。
三面一般是更高一级的leader,这里主要以面试软技能为主,可能会提出一个场景,比如抛给你设计个12306之类的业界难题,其实并不需要你真的给出一个完美的设计,主要是和你探讨在项目开发的过程中遇见一些难题的情况下你的思考问题的方式。
四面是交叉面试,这里主要是防作弊用的,基本上都能过。
五面一般是加面GM面或其他面试,一些大厂会有这种要求,其实如果有这一面也好,看看你和这边的大领导脾气是否和的来,挂人的可能性也很小。
最终的hr面情商稍微在线一点,除非薪资问题,不然基本上问题都不大。
从面试官的角度看求职者应该做到什么
自己工作这些年也面试不少候选人,那么从面试官的角度看,求职者要做到哪些才能更“打动我”呢
1,面试的时间与环境
“守时”这个就无需多言了,作为第一次见面的第一次承诺,如果这都做不到很难相信以后作为同事的时候如何能够彼此信任的开展工作。
关于环境可以说一下,因为疫情等原因,现在大家都习惯线上远程面试,所以一定要确认自己有个不错的网络环境,比如我之前面试一个同学,使用自己的校园网导致网络经常卡顿,因为时间原因我很多问题都没问出来。然后既然是远程面试,建议提前准备好有麦克的耳机,这样可以大大减少彼此沟通时周边的噪音,顺畅的沟通才能让彼此有更好的心情聊的更多,面试官原因和你聊的多是好事情,作为求职者千万不要害怕聊太多,反而上来简单几句就完事儿的才更有可能“有坑”。
2,面试“八股文”
目前有个很流行的词叫“内卷”,无论面的岗位是高是低,出去面试上到系统架构设计,下到框架源码实现,知识点全方位无死角的覆盖到,这可能还只是一面。然而面的公司越多就越发现大家用的其实都是差不多的题库,很多都是那种你看了就能答上来的,但是大部分工作上又用不到的知识点。一个面试,我们至少多花了一个月的时间去刷题,然而仅仅是跳槽的门槛,就像我本次经历的,面某公司前一个部门一面就挂了,但是回去稍微复习一下,然后被另一个部门捞起来后一路顺风顺水的就过了。
那么这些“八股文”要背吗?答案肯定是要背,因为从面试官的视角来看,一来这些能体现一个人基础知识的扎实程度,也能看出来候选者在工作中面对的知识有没有刨根问底的习惯,二来很多候选者的工作经历和目前部门使用的技能相差太多,除了这些底层的东西确实没什么好聊的,最后面试官肯定要表现出比候选者“更资深”才行,不然多没面子,这种成体系的知识点对于提前看过答案的面试官来说是最好的降维打击武器,只要提前准备好题库,无论深度还是广度候选者都很难全部回答上来,很适合让一次面试进行的完整。
所以求职者不管怎么抱怨,这些东西还是好好准备吧。在本文最后也有一个我本次跳槽准备的脑图,可以参考。
3,简历的准备
首先简历算是第一印象,所以还是要好好对待,比如简历最好不要直接下载使用网上那些boss直聘等招聘网站的模块,因为每个人的工作侧重点不同,使用那些模块可能让自己真正想突出的有点没有凸显。另外很多“花里胡哨”的word模板在不同的电脑上呈现效果不一定相同,很可能就出现乱码或者换行等,导致简历很难看。
推荐使用word自己编辑一个简历模块,简单就好,简历的内容一定要把自己想突出的公司经历或者项目经历放在第一页,工作年限越多可写的就越多,但是真正面试的时候大家都是对着第一页的内容来面试你,所以一定要学会突出重点。写好后记得导出一份pdf版。
其次,简历中工作经历一定要全,我之前面了一个人,他的简历里缺少了最新经历的部分,说是投简历的时候用了老的那份,不管是什么原因这个是非常减分的一项。而且各段工作经历要准确到月份,一些大厂会请第三方公司背调,这里好好写可以免去很多后续的麻烦。
4,学会提出问题、发现问题,具备解决问题的方法与思路
除了前面的基础知识,面试过程中最容易提问的是“你之前的项目里一个困难的点/印象深刻的事件”之类的问题,这里我作为面试官的时候,着重听的就是项目中的问题是什么样的,如何发现的问题,如何解决的问题。因为求职者在之前行业里的“经验”,在新公司可能完全没用,但是遇见问题解决问题的思维是可以沿用的,对于互联网行业,技术日新月异,公司的发展也是经常充满变数,如果能提前洞察可能出现的问题绝对是加分项,工作中时不时遇见各种大小问题也是常态,遇见问题不可怕,可怕的是遇见问题就逃避,这种是不能允许的。
这里也可能是由面试官提出一种场景,让求职者来给出解决方案,总体上也是考察求职者如何应对突如其来的棘手事件。有些求职者会说“这个没太考虑好/没考虑到/暂时没想好”之后就完了,但是好的求职者会在这之后跟上一句“我想也许可以XXX”,“参考XXX方案也许可以XXX”之类的,这就完全不一样了,这样就给人一种很靠谱的感觉,更原因让后者成为自己的同事。自己作为面试官,有好几个刚毕业的人都是因为有这种回答,虽然基础知识的部分回答的不好,但是被我认为有培养潜力而通过。
5,清晰流畅的表达
很多人有优秀的技术能力,但是沟通能力一般,这种在我的工作中也是遇见不少。自己从事业务后端产品研发的工作这么多年,感觉在这个岗位最重要的就是沟通能力,这个岗位没有算法等岗位的技术门槛那么高,更多是时间都放在需求沟通这个环节,消息传递的顺畅度很大程度影响着产品的交付推进。
在面试过程中都有让求职者介绍自己项目的环节,这里作为面试官的我最注重的就是求职者在介绍的过程中有没有一个先后的逻辑线,能不能在最短的时间里描述清楚一件事情,描述项目建议用STAR法则。比如有些求职者就是简单介绍一下做了一个什么产品,大概有哪些功能,自己做了哪些功能就完事儿了。但是好的求职会先从需求开始介绍,为什么做这个系统,然后介绍系统解决了哪些事情,系统分为哪几层哪些模块,自己负责了哪些模块,在整个系统中处于什么地位。这种在不加引导或稍加引导就能一次性表达出来的人,我个人是非常欣赏的。
从求职者的角度看如何做一个好的面试官
在自己求职的过程中,体验到了很多好的面试官,自己在未来的面试过程中可以学习借鉴一下,这里稍作总结。
1,面试的时间与环境
面试官的守时可能有一点点难度,很多都是上一个会刚下来马上就要面试,但是很难快速找到一个方便的位置,迟到个3~5分钟是难免的,这里可以理解。但是还是要说,很多求职者都是早早就准备了,这个过程心里还是有一点点煎熬的,所以能准时或者早个几分钟出现是最好的。
环境同样,自己在求职的时候出现了面试官周边比较吵闹的情况,这个也是影响了不少面试的整个体验流程。
2,提前阅览简历
很多用心候选者会在简历里写上自己项目使用的技术栈,自己的博客或github链接。这些如果面试官可以提前拿出个5~10分钟看一下的话,就可以和候选者聊的更多,比如虽然现在主流的后端技术是mysql,但是有些公司只用mongo,那么是不是面试官稍微在网上看看mongo相关的东西好一些,也防止问出一些低级的问题。同时看看候选者的博客或git项目,也可以针对这里的内容进行探讨,避免出现面试官全程看自己题库的尴尬。这样只会让求职者觉得这个面试官不行,甚至对这个公司的期待值降低很多。
3,和善的态度
如果面试官一直是一种颐指气使的态度,那么要么多求职者会产生一些压力,要么会让求职者产生反感,我在求职的过程中发现有些公司的面试官会先进行自我介绍,这个我感觉是个非常好的开场。而有些面试官远程面试的过程中甚至连摄像头都不开,这个真的是大大的减分项。
在提问与探讨的过程中,面试官应该多加引导,比如有些基础知识,求职者可能没有提前看到,这时候面试官抛出来一个名词发现求职者没听过,就快速跳过,我觉得这样不好,我更喜欢的是将这个场景作为问题让求职者说一下自己心中的答案,虽然结果可能不是完美的,但是求职者能够感觉自己多少尽了一份力的感觉,而不是被快速否定。
在场景题的时候,有的面试官会给出充足的时间,针对每个细节进行讨论和引导,我在遇见这类面试官的时候也原因稍微静下心来好好思考。有些面试官看到求职者稍微卡顿就开始催促或跳过,如果不是时间问题不建议这样。
面试是一个双向选择的过程,很多求职者在最终的offer对比时,同事和未来leader的能力与态度也是一个很重要的考核项,所以面试官如果想招聘更多更好的同事,自身在这方面也要努力。
面试题整理汇总
这里整理了自己这段时间准备的面试“八股文”,发现当所有知识点穿起来后对自己也是有很大的帮助,未来会继续充实这份脑图,感兴趣的小伙伴可以看一看