关于前端面试这块,笔者有一些想说的。
以期望,一来为近期需要面试的同学提供一些参考建议,二来站在面试官角度,希望能为其面试招聘提供一些参考。
在上个大厂上班的那几年,陆陆续续的参加过很多次候选人的面试。
过去笔者面试,基本上是从网上找一些前端八股文(前端基础知识)去问一问候选者,然后就着项目随便问几句。
这样的面试有个很大的问题,就是面不出候选者的真实水平。
前端八股文,网上一搜一大堆,候选者只要提前多背一背,就能很好的应对面试。
今年自己参加过几次面试,通过面试官问的问题,就能看出面试官的水平如何。
一般水平问八股,高阶面试官主要就着项目深挖原理思考。
如果面试官本身水平有限,原理自己都不清楚,怎么可能问出有深度的问题呢?
以下,言归正传。
如何才能通过半小时到一个小时的面试时间里,面出候选者较为真实的水平?
自我介绍
首先,笔者会在面试前浏览一下简历内容,想好大概问的问题,也是对候选者的尊重。
通过简历第一印象,能粗略的了解该候选者的水平。
看过很多简历,优秀的简历各有各的不同,劣质的简历大都雷同。
总结起来,就两点,一个是流水账,无重点无亮点,另一个是夸大其词。(比如一年经验的前端,经历上写的是精通JavaScript...)
举个例子,比如简历里,长篇大论的介绍自己项目的产品,什么功能。
我们是前端,产品功能提那么多并不能为自己加分,适当简述是必要的。
优质一点的简历,一般是做了什么项目,自己采取了什么行动,达成什么样的成果,并有量化指标。
类似的项目写一个就行。不要做功能的罗列堆砌。
看完简历,到了面试环节,我会先自我介绍一下,姓名,公司名称,职位。
这一环节不是必须的,我之所以加上有两个方面的考虑:第一,面试是面试官和候选者的平等交流,面试官先自我介绍,以示尊重;第二,希望候选者不要紧张,正常交流即可。(tips,面试不是面试官高高在上,面试不是难倒候选者😁)
接下来,让候选者自我介绍。
依据笔者面试的经验来说,大部分候选者的自我介绍都千篇一律,把简历内容陈述一遍,敷衍了事。
自我介绍的目的是通过短短几分钟时间,向面试官介绍自己,自己的基本信息一带而过,交代一下自己的大致经历,重点陈述简历上看不到内容,体现自己的亮点。
大白话就是,要通过这个简短的自我介绍,让面试官,知道你说谁,你做过什么,你牛在哪里。
项目经验考察
近年来,大厂的面试八股文已经不太多了。
我的理解,原因大概是八股文是可以通过短期突击去背诵的,而项目深度的理解,不知道啥时候都不知道。
我一般考察项目,以项目为切入点,深挖候选者项目的思考,技术的深度。
比如,我会问简历里项目技术选型是如何思考的,用A技术,为什么不是B,背后如何考虑的。
就着项目,深挖到某个技术问题,再继续从使用层问到原理层。
再比如,很多候选者喜欢写项目优化,秒开率提升50%等等,我会问:
之前是多少,你做了哪些优化?然后再去问你们秒开率口径是什么?甚至再去问你们是怎么统计的?
往往一个项目问完后,候选者的大概水平就显现出来了。
面试环节中项目经验比重更多之后,就要求我们平时除了业务开发之外,多多思考技术背后的逻辑。 未雨绸缪。这样在不稳定的大环境下,才能遇事不慌,心里有底。
开放题型
再往下,我可能会去问一些开放性问题。
“以往的项目中,你觉得自己做过最有成就感的事情是什么?”
“你觉得自己做过最复杂的项目是什么?如何解决的?”
重点考察候选者解决问题时的思考能力。
不爱总结反思的候选者这个问题可能都答不上来,原因可能是不记得了。
编码能力
最后一个环节,考验候选者的代码编写能力。
说得再牛,还得拉出来练练。
我相信,大部分参与过近两年面试的同学都深有体会,现在前端面试,编码能力是必考内容了!
对于代码题,作为前端,我一般也不会考察过于复杂的算法题。
大部分都是偏简单级别算法题。
以上,环节下来,对于该候选者的能力评估估计也就心里有数了。
最后,我想说的是,虽然大部分人都在说现在市场行情差,“再无前端”!找工作难于上青天。
但是,对于资深的优秀的前端er们,一直是稀缺的。
外在环境我们很难去改变,但,我们可以让自己越来越优秀呀。
Tips: 以上内容来自自己浅显的思考,欢迎大家留言交流。力求每天进度一点点~