春招/秋招面试前必看一文

来自:编程剑谱,作者:wait0804

春节过完,不管是大三/研二、还是大四/研三,就要投入到最激烈的春招当中去了,各大公司将会正式招聘,由元旦期间拉开序幕(1 - 2 月),到彻底的进入白热化阶段(3 - 4 月),竞争是相当的激烈,谁做的准备越早,谁的胜算就越大。


现在是 2019 年 2 月 10 日,对于马上到来的春招,很多人不是很理解这个春招,到底是针对 19 届的还是 20 届毕业学生?我在这简单的说一下,春招的主体是 20 届,面向的是所有 20 届的毕业生,还有少部分 19 届没找到工作或者考研失败的同学,20 届以找暑期实习为主,19 届以找正式工作为主(是要签三方协议的)。


对于不占任何优势的你,如果想进 BAT 级别的大厂,春招实习 + 实习转正 + 秋招 offer,这个是进大厂最容易的一条路,即使没能转正,有了大厂的实习经历,秋招也能去一个不错的公司;千万别指望着秋招,等你完全准备好了,在去找工作,就错失了最佳的机会。


有读者给我说,他见过很多春招没咋找实习,秋招工作都找的不错,觉得找实习对于自己不是很重要?我想说的是:没找实习,直奔秋招,拿到不错 offer,这个是正常的,每年都有一大批这种人呢;但是你要看看他们大部分人所具有的优势,你就知道了,985/211、硕士,更别提在来一个科班出身,他们觉得学历不重要,技术能力是最重要的,因为在他们的圈子中,周围的同学都是 985、硕士这些学历,对他们而言,学历没起多大作用,对你而言,很多简历筛选都不一定过,你无形中错失很多面试机会,这就是现实。


学历对于互联网行业找工作是起一点作用的,没你想的那么大,基本上要求最低的都是本科学历了,主要还是看技术能力,技术水平,这个是真的,学历不太好的,没必要在这块纠结了,好好提升技术,能力提升起来问题就不大(根据我自己的经验,学历的影响,在春招找暑期实习的时候远小于秋招了),这就是为啥学校不好的,越要参与春招找实习了。


国内计算机强校,首推哈工大和华科,其次两电一邮,西电、电子科技、北邮,还有其他一些计算机强校:北航、中科院、国科大、武大、浙大、中山大学、中南大学、上交等,如果想考研的,上面的学校在互联网业内是非常知名的高校,可以作为首选;如果你有幸在计算机强校,一定要多找找自己实验室的师兄、师姐聊聊,他们会给你提供很多机会和渠道,在根据自己的规划走,找实习,战秋招,这样能更有把握的进入大厂。


一定要看清自己的处境,一个普通学校,本科、还是非科班的学生,没啥亮眼的地方,BAT 级别的大厂,凭啥放着 985/211 的本科、硕士不招,要你一个还不是学这个专业的学生,这些问题,你都思考过没有?到底你有啥优势,BAT 级别的大厂要招你?


面试现场


1、

进入 2019 年,陆陆续续的面试已经展开了,基本上以电话 + 视频 + 现场三种面试形式为主,面试时最好都录音下来,方便自己复盘与总结,简历 + 自我介绍提前准备好,一定要熟悉简历上面的技术点,以及把自己的优势在自我介绍的时候,充分展示出来,最好能吸引面试官,让他顺着这条线去问你。


大部分公司招暑期实习面试都是 3-4 轮,2-3 轮技术 + 1 轮 hr 面试,考察点围绕着:基础 + 算法 + 项目,正常情况下,一面的就是未来部门的导师,二面就是小组 leader,三面就是部门 leader 或者总监,总之,面试你的面试官有极大的可能,就是你未来工作岗位上的师兄;有些公司、有些部门、有些岗位,可能还有交叉面试,面上 7-8 轮技术面试的都有,可能是你的评级高,或者很犹豫要不要招你,又或者你在同一家公司换部门面试了(被一个部门淘汰,另一个部门在简历池把你又捞出来了),这些到时候都是有可能发生的,总之,春招/秋招面试的路上奇葩事特别的多。


第一轮面试,一般问的都是比较全的、细的,偏基础和算法(项目也会问的,不过问的不是很深),主要看看你的编程功底是怎么样的,并且第一轮面试的时间一般是超长的,我现在还记得,面试头条一面面了 3 个多小时,头条面试简单的问了一些基础问题,紧接着就是,拿笔在纸上不断的写算法,以及各类的情景设计题,面试官还会把电脑给你,让你现场通过百度解决一些技术问题,写完之后,还问的很细致,问你这块怎么优化,这块为啥这样写,真的是展示技术能力,算法功底的时候,这是一场超长时间的,保持思维高度活跃的过程;这你就知道,为啥面试一天或者做完笔试题后,累到瘫了,学不进去了,这个时刻,每一位春招/秋招路上的,都会经历的。


第二到第三轮的技术面试,由于面试官的 level 变了,一般情况下,以算法 + 项目 + 智力题为主,对于基础的考察更多的是在第一轮面试过程中,这轮面试会针对你的项目,对于功能模块、项目亮点、改进优化、遇到什么困难,怎么解决的,都会问到的,但不会拘泥于细节,而是更加宏观的考察你,以及喜欢在这轮问一些灵活性比较大的题目,(我记得好未来在 2017 年秋招的时候,一面二面,进去直接抽算法题写,二轮下来能写 7-8 道,手写代码的能力还是很重要的),时间比一面相对短点,但是二面更加注重了你的潜力以及解决问题的能力。


最后一面,一般都是 hr 面试,hr 问的问题,主要是考察你这个人的软技能,沟通能力、兴趣爱好、薪资福利等跟你谈,还有就是看看你有多大的可能性会来我们公司;一般情况下,提前了解准备一下,心态放好,认真回答问题都不大的,注意一点,有些公司 hr 面试的时候,会让你在讲讲自己做过的项目,用到哪些技术,hr 面试也不一定完全是非技术,有这个心里预期就好。


每一轮面试都会有不通过的,每轮面试完都会有面试评价在系统中保留,直到最后的 hr 面试结束,也不一定就能拿 offer,hr 面试淘汰的,有可能就是前面的一轮、二轮面试完,好几个人旗鼓相当,一时难以抉择,而面试官没有那么多的时间考虑,就先都通过,走入下一轮面试,自己能有更多的时间去考虑到底要招哪一个学生;面试通过,会进入下一轮的,一般会有邮件或者电话通知,没有音信的,就默认被淘汰了。


2、

不管是春招还是秋招的面试,基础 + 算法 + 项目,缺一不可,对于基础 + 项目,我觉得是比较容易学习与准备的,难就难在算法上面,而各大互联网公司必问算法,算法能力可以体现一个人的聪明程度,以及在一些复杂问题的设计上,需要对时间复杂度与空间复杂度进行权衡,这是在大型系统,高并发,实时性较高场景下必须考虑的,算法能力强的绝对是优秀人才!


我们又不是专业打 ACM 比赛的,没有进行过系统的算法能力的训练,针对互联网公司的招聘,算法方面的准备,就必须进行刷题,《剑指 offer》 + Leetcode,只要把这 2 处算法题都拿下,国内任何公司的手写算法,将没有太大的问题,先把《剑指 offer》上面的 60 多道题刷 2 遍,再把 Leetcode 上面的 easy 以及 medium 刷至少 2 遍,hard 确实难度比较大,看个人时间了;当年我春招找实习,也是这样过来的,算法方面,我就是做了这些准备,最后刷了几百道题,一步一步走了过来,我是深知做这些算法题是多么的难,很难坚持,为了一道题理解清楚,花费好几天时间,但是,这些都是要靠逼迫自己,都是要看自己的决心与勇气的。


马上就 3 月了,我是建议,你先把十大排序算法 + 《剑指 offer》至少过 2 遍(比 Leetcode 上面的容易,并且视频敲/现场手写频率比较高,先走内推面试),没问题了,在开始刷 Leetcode,要过笔试算法题,Leetcode 是必刷的,正式春招是需要笔试的,笔试通过才能进行现场面试的,这一关是必须要经历的。


想拿大厂 offer,算法能力是必备的,一定一定要重视!


3、

面试的时候,就是 30% 运气 + 70% 实力,真的是这样,还要看面试官对你是否认可,要是接连好几场面试,没有通过的话,心态要保持好,一定要坚信,肯定会有 offer 的,秋招玄学,一切都很难说。


简历上面,以及自我介绍的时候,一定是有把握的才讲出来。2017 年秋招的时候,我跟我的 2 个同学,一起去面试过一家互联网公司,当时我同学在自我介绍的时候,说自己英语过了 4 级,口语还不错,这句话一说完,面试官直接就说,拿英文把自己的项目介绍一下,当时都愣住了,对于常见的口语还可以,自己的 java 项目,里面很多的专业术语根本不清楚,自己也没准备过英文的简历,以及英文面试,当时硬着头皮就说了一下(很容易可以想到,说的不是很流利),然后简单问了一点其他的,20 分钟就面试结束出来了,最后就没了消息;在面试的时候,千万不要夸大自己,要有礼貌,要谦虚,想清楚了在说,不能着急啊!


面试的时候,熟悉的地方,可以拿纸边画边讲出来,进而把整个体系都引出来(说真的,面试要是问我 RBtree 或者 B+/B- 树,我能把这个数据结构中有关树的结构全部讲出来,问到网络编程,能把 7 大进程间通信,6 大高并发模型都讲出来,这些都是相互联系的,说出来比较自然),不会的技术千万不要乱扯,表明自己肯学习的心态就好。


面试的时候,自信很重要,对于自己掌握的知识点,说话声音不要太大但要斩钉截铁,如果面试官问到的问题,自己没有听清楚(电话/视频面试很容易出现这种情况),又或者自己没有理解到位,不要怕,要及时的跟面试官进行沟通,把问题搞清楚了,在思考;在面试的过程中,沟通与表达的能力至关重要,就是反复的交流,讨论,最好能引导面试官,找到面试官感兴趣的地方,深入交流。


笔试没过的,一定要去现场霸面试试,机会都是争取来的,不试一试怎么知道没有呢?


4、

春招/秋招面试,在面试时是有一定运气成分的,但是自己在准备面试的时候,一定一定要以提升自己的实力,解决问题的能力提升为主,不要舍本逐末了,你要知道,你最终是要来公司上班的,是要挣公司钱的;现在互联网大环境不是很好,大公司都是有试用期的,以前经济形势大好,十个里九个试用期都过了,现在呢,你自己去了解一下,去看看美团、京东、等互联网公司,脉脉上都可以查到的,试用期没过不一定是能力的问题,但是,咱最起码的保证自己是有技术实力的,基础扎实,学习能力强这些的有,不至于到时上手很慢,什么基础都不会,保证了自身的实力,就是到哪都会有碗饭吃的。


我之前推荐过,大家多去牛客网上面看看,主要是去上面看内推机会、渠道、以及一些人的面试历程,顺便在上面交流一些技术、资源等,至于面试具体问什么,具体是什么面试题,大概看几眼就行了,没必要把每个人的面试题,你都要弄会、弄懂,那样的话,真是没有太大的意义与价值!


还有很多人,特别喜欢看面经,看别人面试都问了什么,别人是怎么回答的,整天搞这些东西,面经这个东西,说作用很大,那是扯淡的,说没啥作用,也是不对的;理性看待就好,有时间了,可以看看一些面试的高频问题,做一些针对性的准备,千万不要说什么答案唯一,别人说什么都是对的,还死记硬背这些知识点,不要学死了,真正的理解了,没有什么要记的,在这块不用浪费过多的时间。


各个互联网公司,以及不同的部门,面试官喜欢问什么,都是不一样的,也没必要花那么大的精力去猜面试官喜欢问什么?我们要搞清楚,自己是给谁在学习,给面试官学习吗?为了应付面试拿 offer 吗?


5、

对于基础而言,不在于你掌握的多少,我 https 知道一点,我 tcp 也知道一点,多而不精,还不如自己真正的把 tcp 学好了,在学 https 相关知识,学一门的会一门,不要追求数量,要的是质量,这样你才能深入思考,时间久了,习惯养成了,理解能力就上来了。


学习是需要系统性,完整性的,知识之间是有相互联系的;是需要长时间的摸索与自学,才能找到编程的感觉,才能对知识的理解达到一个层次,坑是要踩的,只有坑踩的多了,经验丰富了,解决问题的能力提升了,才是真正的大牛,才能真正的沉淀下来一些东西。


在学习的过程中,有很多的经典技术书籍都是必看的,对于不太理解的地方,是需要 google 以及找博客和一些技术文章去理解的(不要颠倒了,博客或者一些系列技术文章是补充作用),自己要多多的归纳、总结,能力会慢慢的提升,学习就是一个循序渐进,水到渠成的一个过程。


6、

我当时春招备战的时候(第二遍巩固基础),我之前是看过计算机网络、操作系统、数据结构、Linux 这些基础,都是系统自学过的(看视频 + 看书很快的),我学习的时候,没有说看什么计算机网络哪块是重点,具体需要学那些知识点,这些都是没有的,我不希望在系统学习的时候,还给自己列一大堆条条框框,这块不用看,那块是重点,这样对于自己学习的视野会进行一定程度的压迫,第一遍系统学习的时候,全看,第二遍的时候,哪些重要、哪些不重要,自己心里没底吗?不要总听别人的,别人给你画个重点,你就不管其他地方了?


自己要对自己负责,系统学过一遍,很多看似无用的地方,实则还会对你有一点的启发作用,可能自己感受不到,一旦打通了自己的学习体系,很多知识就可以融会贯通;在面试的时候,很多场景有可能你之前没接触过,但是之前的学习经验与方法会帮到你,有了知识的沉淀,思考将会更具灵活性、随机应变的解决一些问题,如果想要编程的路走的更远,自学能力、靠自己解决问题的能力是必须具备的。


面试,把它当做一个学习的过程,一个可以跟各大互联网优秀人才接触的机会,一个真正的自我反思,自我成长的锲机!


珍惜每一场的面试,都拿出最好的状态,最大程度的表现自己,做到最好!


相信自己,将是你最大的源泉与动力!

推荐↓↓↓
程序员求职面试
上一篇:技术面试九忌 下一篇:2018年BATJ面试题精选