面试

图片说明

这个时间点应该有一部分同学体验过面试的感觉,不知感觉如何。

一次面试从开始到结束不过最长不过 1 个半小时,这个时间很短,凭什么通过这么短的时间就判断一个人的能力呢?反过来想,这一个半小时,我到底要怎么做才能让面试官认可我呢?

分类:电话,视频,线下。
线下面对面沟通是最好的,你能够把更多的细节展示给面试官。但这种形式今年是不太可能了。
电话面试,这种方式很糟糕,声音是信息传递唯一的介质,所以如果你有迟疑,中间有空白,面试官感觉很糟糕,他不知道你在干什么,所以你的声音不能断,思考期间,你也要说一些废话,或者把自己的思路说出来
视频面试,这个一定要注意一点,大家一般是用电脑视频面试,电脑的那个摄像头惨不忍睹。

一面和二面的区别
这个不同公司的策略不一样,有的是难易程度的区别,有的是方向侧重点的区别。可能一面问语言基础,二面问框架原理和项目,也可能一面侧重 语言, 框架,二面侧重计算机网络,操作系统。

面试的方式虽然不一样,但具体的面试内容有迹可循。
如何面试 (划重点)
面试不是考试,你面对的是一个人,而不是卷子。
我发现很多人都在去背面经,背知识点,当作考试一样在对待面试,这是不对的,或者说不够的。优秀的应聘者应该扬长避短,主动引导面试官发现自己的优点。

从面试的流程入手,一步一步来看:

  1. 自我介绍
    面试第一项 99%都是这个,那么如何做自我介绍呢?还是反过来想,面试官为什么问这个问题呢?因为大部分面试官面试之前不会预先看你的简历,借着这个时间看一遍。所以简历和自我介绍构成了应聘者的第一印象。这对这样的情况,自我介绍应该更加简洁,有力,最好像一根针一样,直接刺中要点。我建议介绍的内容 “基本信息+能力+成就”

  2. 第一步完成, 主动权交到面试官,面试官开始提问
    2.1 针对简历中不清楚的地方了解情况
    2.2 直接问简历中的项目
    2.3 抛开简历问事先准备好的题目

    以上三种可能应该占到 80%的情况,第一种一般没什么好说的,就是简单了解一下。
    第二种就看简历的水平写的好不好,之前简历篇提过,优秀的简历所有内容都是重点,都会问,(前端为例,用了框架,vue 或 react,必问原理,内部如何渲染,如何调度,用到了什么数据解构,为什么这么用,换成别的不行吗,有没有自己实现过双向绑定或虚拟 dom,等等)所以确保,你对项目中出现的技术点是足够了解的。这个了解又分为两层

    1. 仅仅知道内部的运作原理
    2. 更进一步有自己对于原理的想法,思考,甚至有自己的应用场景。

    一般问项目会说“挑一个最能代表你能力的简单介绍一下”,这个时候还是,面试官手里有你的简历,项目经历在那写着呢,那么你要说什么,我建议“背景+角色+技术,也可以+成就”

    期间,有的面试官很恶心,在你介绍完之后尝试挑战你,“我觉得你做的没什么呀,有什么技术难度吗,成功上线,运行稳定不是最基本的吗?”,针对这一种,你要凸显个人的作用(就是吹牛逼),可以回答开发中发现什么问题,如何思考并解决,最后完善工作流程,提升开发效率,增加上线稳定度。

    正常情况下,介绍完项目,我们要开始掌握主动权,因为你才是了解项目的人,不要让面试官一点点的去挖你的优点,千万别高冷,主动一点。面试官的问题应该是针对项目中出现的技术点针对提问,但我们要更进一步,结合场景 ,技术永远是为业务服务的。你可以说,XXX 的原理是什么什么什么,后面接上,因为 XXX 特性,我们针对性做了什么什么,实现了什么什么。也可以是 XXX 的原理是什么什么,工作中,由于这个特性,出现了什么什么 bug,最后按照什么什么思路,发现并解决。
    因为项目是你的主场,你要尽可能的展示自己的优点

    第三种(抛开简历问事先准备好的题目) ,这种想要掌握主动权难度有所增加,因为是面试官再带着你走,如果真的问道你不会的知识怎么办呢?绝对不要说“不会”,你这不会那不会,要你来干什么。这个时候,要快速的思考,有没有什么相近的知识能说的,或者把自己思考的过程说出来,也许面试官会主动给你一些引导。举个例子:
    面试官:“手写一下归并排序”
    应聘者:“卧槽,昨天还背着呢,现在咋忘了”
    怎么办?你可能写不出归并排序,但他的核心思想你应该能知道,分治,哪些算法用到了分治,我说一个最最最简单的,二分法,稍微高级一点点,最大子序列,你成功把交点转移到了分治的思想上,并展示出你对核心思想的理解。
    那么如果面试提的问题你正好是会的,怎么办呢?
    个人建议,不要一次性全说完,留个尾巴,让面试官继续问下去,这样面试官会有一种层次感(前端为例:react 中的 setState 是同步还是异步,答:自定义事件和 setTimeout 是同步,生命周期中为异步,继续问:为什么会出现这样的现象?答:因为 react 有批量更新机制,关键点是 isBatchingUpdates 这个变量,在自定义事件及 setTimeout 等宏事件的上下文中,此变量为 false)
    其实这一条之前在跟同学的交流中是有争议的,请各位保持独立思考

    整体就差不多这样,再说几个经常问的问题

    1. 为什么选择这个方向,这个问题比较开放,比如上高中开始就一直希望做这个,或者就是对什么什么有兴趣。
    2. 有什么问题要问我,我建议你问,“我在您面试过的人中,算什么水平”
    3. 你还有什么别的优点要说嘛,这种一般就是,你还可以,但是呢,有另一个人跟你差不多,没有什么特别特别的亮点。

最后最后,很多人面试都紧张,适度的紧张是正常的,会促进你更加集中注意力,增加大脑的运转效率,但如果特别特别紧张怎么办呢,这种情况唯一的原因就是你不够自信,导致你害怕,你害怕问道自己不会的,害怕拿不到 offer。
我再说一遍,良性的循环是

面试---失败---总结提升---再面试---再失败---再总结提升---直到成功

不要怕失败。加油!

下周写三面和HR面

做人留一赞,日后好相见,有什么问题可以留言或私信