前端面试回答问题的技巧(纯干货 找工作必备良药)

通常技术面试至少三轮:

  1. 基础面试:主要考察对岗位和简历中涉及到基础部分的提问,包括一部分算法和场景设计的面试题,这一面可能会涉及现场coding。
  2. 项目面试:主要考察简历中涉及的项目,会涉及你项目的相关业务知识、扮演角色、技术取舍、技术攻坚等…
  3. HR面试:这一面试通常是HR把关,只要涉及行为面试,考察候选人价值观是否符合公司要求、工作稳定性如何、沟通协作能力如何等等。

当然,对于初级岗或者校招生会涉及一轮笔试,相当多的公司会在现场面之前进行一轮电话面试,目的是最快最有效地把不符合要求的候选人筛除,对于个别需要跨部门协作的岗位会涉及交叉面试,比如前段候选人会被后端的面试官面试,一些有管理需求的岗位或者重要岗位可能会涉及总监面试或者vp面。

而一个正常的技术面试流程(以项目面为例)大致分为三部分:

  1. 自我介绍
  2. 项目(技术)考察
  3. 向面试官提问

那么该如何准备技术面试?如何在面试中掌握主动权呢?

自我介绍

几乎所有的面试都是从自我介绍这个环节开始的,所以我们要搞清楚为什么自我介绍通常作为一个面试的开头.

为什么要自我介绍?

首先,有一个很普遍的问题就是面试官很可能才拿到你的简历,他需要在你自我介绍的时候快速浏览你的简历,因为技术面试的面试官很多是一线的员工,面试候选人只是工作的一小部分,很多情况下是没有提前看过你的简历的。

其次自我介绍其实是一个热身,面试官和候选人其实是陌生人,自我介绍不管是面试还是其他的情况下,都是两个陌生人彼此交流的起点,也是缓解候选人与面试官之间尴尬的一种热身方式。

最后,自我介绍是展示自我、引入接下来技术面试的引子,是你指定技术面试方向的一次机会。

知道了以上原因,我们才能进行准备更好的自我介绍。

自我介绍的几个必备要素

自我介绍归根到底是一个热身运动,因此切忌占用大量的篇幅,上来就把自己从出生到大学的经历像流水账一样吐出来,往往会被没耐心的面试官打断,而这也暴露了候选人讲话缺乏重点、沟通能力一般的缺点。

但是,一些关键信息是必须体现的,就我个人而言,以下信息是必备的:

  • 个人信息:至少要体现出自己的姓名、岗位和工作年限,应届生则必须介绍自己的教育背景,如果自己的前东家是个大厂(比如BAT)最好提及,自己的学历也是亮点(985或者硕博或者类似于北邮这种cs强校)最好提及,其他的什么有没有女朋友啊、是不是独生子女没人在意,不要占用篇幅。这个部分的重点在于**『你是谁』**
  • 技术能力:简要地介绍自己的技术栈,切忌把自己只是简单使用过、写过几个Demo或者看了看文档的所谓『技术栈』也说出来,一旦到后面问到就算是自找尴尬,这部分的重点在于**『你会什么?』**
  • 技能擅长:重点介绍自己擅长的技术,比如性能优化、高并发、系统架构设计或者是沟通协调能力等等,切忌大夸其词,实事求是,这是之后考察的重点,这部分的重点在于**『你擅长什么?』**

自我介绍要有目的性

要重点匹配当前岗位的技术栈

你的面试简历可能包含了各种各样的技术栈,但是在自我介绍的过程中需要匹配当前岗位的技术要求。
就比如你目前面试的是移动端H5前端的开发岗位,就重点在自我介绍中突出自己在移动前端的经验,而此时大篇幅的讲述自己如何用Node支撑公司的web项目就显得很不明智。

要在自我介绍中做刻意引导

如果你的自我介绍跟流水账一样,没有任何重点,其实面试官也很难办,因为他都没法往下接话…

而只要你稍作引导,绝大部分面试官就会接你的话茬,比如『你在自我介绍中提及了一个项目,碰到了一些难点,然后被你攻克了,效果是如何如何好等等』,如果我是面试官,一定会问『你的XX项目中的XX难点后来是怎么解决的?』。

面试官的目的是考察候选人的能力,对候选人做出评估,因此需要知道候选人擅长什么,是否匹配岗位,面试官绝大多数情况下很乐意你这种有意无意的引导,这样双方的沟通和评估会很顺利,而不是故意刁难候选人。

如何准备自我介绍

其实最好的方法也是最笨的方法就是把自我介绍一定要体现上面提到的几大必备要素,在面试钱简单过几遍,能把自我介绍的内容顺利的表达出来即可,切忌千万不要跟背诵课文一样。

自我介绍的时间最好控制在1~3分钟之间,这些时间足够面试官把你的简历过一遍了,面试官看完简历后正好接着你的自我介绍进行提问是最舒服的节奏,切忌别上来开始10分钟的演讲,面试官等待的时候会很尴尬,这么长的篇幅说明你的自我介绍一定是流水账式的。

技术考察

一个好的技术考察的开始,必须得有自我介绍部分好的铺垫和引导,有一种情况我们经常遇见:

候选人说了一大堆非重点的自我介绍,面试官一时语塞,完全get不到候选人的重点,也不知道候选人擅长什么,有什么亮点项目,然后就从他简历的技术栈中选了本公司也在用的技术,候选人这个时候也开始冒汗,因为这个技术栈并不是他的擅长,回答的也磕磕绊绊,面试官的引导和深入追问也没有达到很好的效果,面试就在这种尴尬的气氛中展开了,面试结束后面试官对候选人的评价是技术不熟练,没有深入理解原理,候选人的感受就是:面试官专挑自己不擅长的问。

所以在前面的部分,一定要做好引导,把面试官的问题引到我们擅长的领域,但是这样还远远不够,正所谓不打无准备之仗,我们依然需要针对可能出现的问题进行准备。

那么如何准备可能的面试题?
比如你擅长前端的性能优化,在自我介绍的部分已经做好了引导,接下来面试官一定会重点考察你的性能优化能力,很可能会涉及很有深度的问题,即使你擅长这方面的技术,如果没有准备也可能会乱了阵脚。

多重提问

多重提问的意思是,当一个技术问题抛出的时候,你可能面对更深层次的追问
依旧以前端性能优化为例,面试官可能会提问:

  1. 你把这个手机端的白屏时间减少了150%以上,是从哪些方面入手优化的?这个问题即使你没有做过前端性能优化也能回答个七七八八,无非就是组件分割、缓存、tree shaking等等,这是第一重比较浅的问题。
  2. 我看你用webpack中SclitChunksPlugin这个插件进行分chunk的,你分chunk的取舍是什么?哪些库分在同一个chunk,哪些应该分开?你是如何考虑的?如果你提到了SplitChunkPlugin插件可能会有类似的追问,如果没有实际操作过的候选人这个时候应该难以招架了,这个过程一定的试错和取舍的。
  3. 在分chunk的过程中有没有遇到什么坑?怎么解决的?其实SclitChunksPlugin这个插件有一个暗坑,那就是chunk的id自增性导致id不固定唯一,很可能一个新的依赖就导致id全部打乱,使得http缓存失效。

以上只是针对SclitChunksPlugin插件相关的优化提问,当然也可能从你的性能测试角度、代码层面进行考察,但是思路是类似的。

因此不能把自己准备的问题答案停留在一个很浅显的层面,一方面无法展示自己的技术深度,另一方面在面试官的深度体情况下很容易丢分,因此在自己的答案后面多进行自我的追问,看能不能把问题做的更深入。

答题法则

很多面试官相关的宝典都推荐使用STAR法则进行问题的应答,我们不想引入这个额外的概念,在基础技术面试的部分老老实实回答面试官的问题即可,通常需要问题运用到这个法则的是项目面,比如然你介绍一下你最得意的项目,回答问题的法则有这几个要点:

  • 项目背景:简要说一下项目的背景,让面试官知道这个项目是做什么的
  • 个人角色:让面试官知道你在这个项目中扮演的角色
  • 难点:让面试官知道你在项目开发过程中碰到的难点
  • 解决方案:针对上面的难点你有哪一些解决方案,是如何结合业务进行取舍的
  • 总结沉淀:在攻克上述的难点后有没有沉淀出一套通用的解决方案,有没有将自己的方案在大部门进行推广等等。

重点就在于后面三条,也是最体现你个人综合素质的一部分,我是面试官的话,会非常欣赏那种可以发现问题、找到多种解决方案、能对多种方案进行取舍还可以沉淀出通用解决方案回馈团队的人。

以上述几点可以体现出一个人的技术热情、解决问题的能力和总结提高的能力。

刻意引导

是的,在回答面试官提问的时候也可以做到刻意引导。

我们就简单举几个例子:

  • 除了Vue还用过Angular吗?这个时候很多候选人就很实诚回答『没有』,其实我们何以回答的更好,把你知道的说出来展示自己的能力才是最重要的,你可以说『虽然我没有用过,但是在学习双向数据绑定的时候了解了一下Angular脏检查的原理,在学习Nestjs的时候了解了依赖注入的问题,跟Angular也是类似的』,面试官一定会接着问你脏检查和依赖注入的问题,虽然你没有用过Angular,但是Angular的基本原理你都懂,这是很好的加分项,说明候选人有深入理解原理的意愿和触类旁通的能力
  • Vue是如何实现双向数据绑定的?很多人会说object.defineproperty()如何操作然后就没有了,其实你可以在回答完之后再加上一嘴『Vue 3.0则选择了更好的Proxy来替代defineproperty』或者『除了object.defineproperty这种数据劫持的方式,观察者模式和脏检查都可以实现双向数据绑定』,面试官大概率会问『Proxy好在哪里?』或者『聊聊脏检查』等等,这样下一个问题就依然会在你的可控范围之内。

我们第一个例子把原本回答不上来的问题,转化成了成功展示自己能力的加分项,第二个例子让自己更多展示了自己的能力,而且始终使面试官的问题在自己的可控范围内。

向面试官提问

这个部分基本到了面试尾声了,属于做好了不影响大局,但是可能加分,如果做不好容易踩雷的区域。
首先我们要明示几个雷区:

  • 切忌问结果:问了也白问,绝大部分公司规定不会透露结果的,你这样让大家很尴尬
  • 切忌问工资:除了HR跟你谈工资,千万别跟技术面试官谈工资,工资是所有公司的高压线,没法谈论
  • 切忌问技术问题:别拿自己不会的技术难题反问面试官,完全没意义,面试官答也不是不答也不是

有几个比较好的提问可供参考:

  • 如果我入职这个岗位,前三个月你希望我能做些什么?
  • 我的这个岗位的前任为什么离职的,我什么地方能做到更好?
  • 你对这个职位理想人选的要求是什么?

尽量围绕你的岗位进项提问,这可以使得你更快熟悉你的工作内容,也让面试官看到你对此岗位的兴趣和热情,重要的是这些问题对于面试官而言,既可以简略回答,也可以详细的给你讲解,如果他很热情的跟你介绍此岗位相关的情况,说明你可能表现的不错,否则的话,你可能不在他的备选名单里,这个时候就需要你另做打算了。

总结:

我们用大量篇幅介绍了技术面试中的一些应试技巧,但是归根到底候选人的基本功和丰富的项目经验才是硬道理,如果你看完了整篇文章,并进行了精心的准备,他是可以让你从75分到85分的技巧,而不是让你从55分到85分的秘籍。最后 祝愿大家都能找到自己理想的工作。

通过HR面试的技巧

猜你喜欢

转载自blog.csdn.net/Glory_05/article/details/112478011
今日推荐