如何进BAT,有了这个篇面试秘籍,成功率高达80%!!(附资料)
作者:互联网
多年前自己刚来北京找工作的时候,面了一个星期 面了七八家公司才拿到一个offer。而上次跳槽面了不到10家公司基本全过而且都给到了期望的薪资,本来自己在面试前没想到能够这么顺利,回想起来还是自己准备的方法比较得当!
先说前提
此方法适用于培训机构,专科,普通本科毕业的同学,工作经验在1到5年之间。(985,211大学的同学或者研究生,技术大拿可以不用往下看了,因为他们本身的面试通过率就很高。。)
(另外,此方法不改假简历,不改工资条,没有虚假的东西!)
再说效果
毛主席说过:
实践是检验真理的唯一标准!
我和我媳妇都是普通本科毕业,使用这个方法现在已经分别入职了BAT。
从本质看面试
之前在某浪做过一段时间的一面面试官,面了很多同学,大部分都没见到我领导。遇到其中有很多同学就连最基础的问题都答不上来,比如: HashMap,多线程,jvm,Shuffle这些。还有一个印象特别深刻的同学(叫他同学A吧),他本身薪资就不低,而且之前也是一个小团队的leader,面试过程相当流畅,我提完问题之后他总能很快的流利的长篇大论的回答出来,在hr看来这个人真的很不错,但是其实他的回答却我的问题关系都不大。。。当我特别说明,要他直接回答我的问题(java基础)的时候,他却答不出来,这真的很尴尬。。
还有一部分同学,在回答一些问题的时候很不完善,如果你不去引导一下,他的回答可能就结束了,但是如果你提示一下,他还能想起来,接着沿着正确的方向完善他的答案。
毛主席还说过:
我们看事情必须要看它的实质,而把它的现象看作入门的向导,一进了门就要抓住它的实质,这才是可靠的科学的分析方法。
那么面试的实质是什么?
我认为是: 储备
和 展示
!
面试的过程就是把你的知识(技术)储备展示出来的过程,徒有一身本领却展示不出来和没有有什么区别? 光有一张嘴侃侃而谈,谈的都是错误的理论或者虚无缥缈的东西,面试结果自然可想而知!
下面我分享一下我在这两个方面是如何做的!
储备
储备的内容
储备的内容很简单,用的什么语言,做的哪个方向的开发,以java大数据为例:
- java基础:jvm,gc,map,多线程等等
- 算法: 8大排序和几个查找算法等基础算法必会 + leetcode上一些初级的算法(一般做业务的岗位不会问特别难得算法)
- 数据结构: 我这里有一本大话数据结构的pdf书,看着一本就够了。
- 各种框架原理: 比如,spring必问的aop,ioc。zookeeper必问的:选举机制,使用场景(分布式锁)。hadoop必问的hdfs如何实现高可用。mapreduce必问的shuffle过程。spark必问的为什么比mapreduce快。等等等等
以上几点应该是问的最多的了,当然像 设计模式,操作系统,网络问的相对少一些了。(操作系统一般问线程和进程区别,网络一般就是tcp3次握手4次挥手了)
这些基本上就是面试时技术上需要问到的东西了,(我整理了一份我之前面试准备的比较全的面试题,见末尾分享)。问什么我们知道了,那如何准备呢?
当然是把这些问题全都一一搞清楚,记下来啊。
对啊,记下来,关键是怎么记?! 比如mapreduce的Shuffle过程中的每一个细节是什么? 很多同学都不写mapreduce,公司都已经开始使用spark,flink了,而且不会的话也不太会影响工作(遇到性能瓶颈的时候如何调优可能就会有影响了)。
针对知识储备的秘籍是: 把一个或者一类重要的知识点搞懂之后,整理出来 然后背诵! 像背课文一样背诵!
背诵方式1:
以jvm为例:我整理了这么一张纸打印出来:

这是我有道云的截图,把jvm的知识点全部打印到A4纸的一页上(类似这样的一页纸我还有 gc,hashmap,多线程等),早晨早到公司找个没人的地方可以开始背诵了。
背诵方式2:
A4纸太大了,不方便携带,我还弄了一个手掌大小的小本子(随身带身上,还有一杆笔),记录了一些常用算法(比如树的非递归遍历) 和 一些原理的图(比如 jvm的新生代,老年代,永久代的图)。有时间就(比如坐地铁的时候)复习复习。(多记几次就很熟了)
展示
说完了储备来说展示,我认为展示有两种方式
1、纸上作答(有可能是算法题,有可能是原理题)
2、口述回答
纸上作答就不多说了,储备的知识准备好了,写出来很容易。原理题就直接画图,一张图基本上就解释清楚了。
重点来说说第二点口述回答
口述的回答一般分为三类:
1、技术类,原理类,算法类的题目
2、根据工作经验提问题
3、hr常规问题(为啥离职。。等等)
第三类问题不说了,提前准备好就行,一般情况下不会决定面试的情况。
针对展示的秘籍,也是最重要的秘籍是:模拟演练!动嘴去说! 把问题的答案说出来,直到说的流畅,说的调理清楚,说到让面试官任务你对这些东西理解很深,很自然的就说出来了。(说多了之后,真的就理解很深了)
这里我用了一种方法: 因为我媳妇也是开发,我就练习给我媳妇说,说完之后她来点评: 比如 漏了几个点,哪个地方有点结巴,语速有点快,发音不准。。。(她不告诉我我真不知道) 直到改掉这些不足。
当然聆听的同学也不一定是开发,因为这里重点评估的是说上的不足,而不是说的内容里的知识点的对错(对错你自己知道)。
你就算把自己的回答录下来再听一遍(自己给自己当面试官),你能都发现自己回答过程中的很多不足。多录几次,多听几次 一定获益匪浅!
除了上面两个秘籍,我还有4个面试tips送给你:
一: 有可能的话去引导面试官
比如你的工作经历上写了2个项目,但是其实你对项目2比项目1熟悉的多,如果面试官总问你关于项目1的问题,你可以适当的把他的问题引导项目2中(这就要看你回答的时候如何衔接了)。但是一定要注意千万别像前面的A同学那样,引导的太过了。 这就好比在高速上开车,目的地是通过面试,你可以变道,但绝不能掉头!
二: 回答问题注意下语气,让面试官听语气就感觉你很懂。可别真成背课文了。。
大家都懂。
三: 不会的题目也要仔细思考,说说你的思考过程,思考的思路
不会的问题千万别直接说不会,这样面试官对你的印象最起码是: 某方面薄弱。
所以要思考,找不到答案,也要说出来你是如何思考的,思考的过程,和遇到的问题给面试官说出来,这样面试官可能对你的印象是: 这题不会,但是还有些思路,还可以。
实在不会而且没有任何思路的,你也要"演一演",显得你好像知道这个问题,但是忘记了的样子,演完之后再说想不起来了。。。
四: 打铁还需自身硬
技术类,原理类的问题是必要条件,是必须要过的,不一定要全部回答出面试官的问题,最起码七成要回答上来。
关于业务类问题一定要说明以下几点:
1、why,为什么有这个项目,产生的背景是什么
2、how,这个项目上怎么做的
3、what,这个项目解决了什么问题(优点)
4、get,这个项目得到的收益是什么(比如减少xx%人力资源)
5、这个项目中你遇到了什么困难?如何解决的?
最后祝大家面试顺利,加油!
公众号: 程序员灯塔 (code12306)
回复 '大话数据结构',获取<大话数据结构pdf>书。
回复 'java大数据面经',获取拿到了百度,网易,美团,头条offer的同学的面经+面试题
回复 'java基础题' , 获取java基础面试题(非常详细)
回复 'java后台面经' ,获取一个java后台妹子在携程、美团、58、中兴、滴滴、华为的面经和复习心得
标签:同学,成功率高,java,回答,面试官,BAT,问题,面试,80% 来源: https://www.cnblogs.com/wangtcc/p/ru-he-jinBAT-you-le-zhe-ge-pian-mian-shi-mi-ji-che.html