BAT前辈分享程序员一次面试最正确的流程
面试必知
下面几点概括起来就是:了解自己的能力、要应聘的公司、自己要应聘的岗位,提前做好自己我介绍以及项目介绍等等方面的功课,确保你能在面试过程中简短清晰的回答出来(可以用Star法则来组织自己的语言)。
1) 准备自己的自我介绍
从HR面、技术面到高管面/部门主管面,面试官一般会让你先自我介绍一下,所以好好准备自己的自我介绍真的非常重要。网上一般建议的是准备好两份自我介绍:
一份对hr说的,主要讲能突出自己的经历,会的编程技术一语带过;
另一份对技术面试官说的,主要讲自己会的技术细节,项目经验,经历那些就一语带过。
我这里简单分享一下我自己的自我介绍的一个简单的模板吧:
面试官,您好!我叫某某。大学时间我主要利用课外时间学习某某。在校期间参与过一个某某系统的开发,另外,自己学习过程中也写过很多系统比如某某系统。在学习之余,我比较喜欢通过博客整理分享自己所学知识。我现在是某某社区的认证作者,写过某某很不错的文章。另外,我获得过某某奖,我的Github上开源的某个项目已经有多少Star了。
2) 关于着装
穿西装、打领带、小皮鞋?NO!NO!NO!这是互联网公司面试又不是去走红毯,所以你只需要穿的简单大方就好,不需要太正式。
3) 随身带上自己的成绩单和简历
有的公司在面试前都会让你交一份成绩单和简历当做面试中的参考。
4) 如果需要笔试就提前刷一些笔试题
平时空闲时间多的可以刷一下笔试题目(牛客网上有很多)。但是不要只刷面试题,不动手code,程序员不是为了考试而存在的。
5) 花时间一些逻辑题
面试中发现有些公司都有逻辑题测试环节,并且都把逻辑笔试成绩作为很重要的一个参考。
6) 准备好自己的项目介绍
如果有项目的话,技术面试第一步,面试官一般都是让你自己介绍一下你的项目。你可以从下面几个方向来考虑:
1. 对项目整体设计的一个感受(面试官可能会让你画系统的架构图)
2. 在这个项目中你负责了什么、做了什么、担任了什么角色
3. 从这个项目中你学会了那些东西,使用到了那些技术,学会了那些新技术的使用
4. 另外项目描述中,最好可以体现自己的综合素质,比如你是如何协调项目组成员协同开发的或者在遇到某一个棘手的问题的时候你是如何解决的又或者说你在这个项目用了什么技术实现了什么功能比如:用redis做缓存提高访问速度和并发量、使用消息队列削峰和降流等等。
7) 提前了解公司以及要应聘的岗位
面试之前一定要提前对要应聘的公司以及岗位有所了解,这一点对于喜欢海投的同学来说要格外注意。如果你去一个公司面试连公司的主要业务或者主要产品都不了解的话,那么面试官打心里肯定会觉得你并没有很重视他们公司,所以他们为什么要重视你呢?你也要提前了解你所要应聘岗位对你的专业能力或者其他能力的要求,比如有的岗位就是需要英语水平比较高,需要你通过六级或者托福雅思,假如你不满足的话,那就没必要再去投递简历面试了。
提前准备技术面试
搞清楚自己面试中可能涉及哪些知识点、那些知识点是重点。面试中哪些问题会被经常问到、自己改如何回答。(强烈不推荐背题,第一:通过背这种方式你能记住多少?能记住多久?第二:背题的方式的学习很难坚持下去!)
面试之前做好定向复习
所谓定向复习就是专门针对你要面试的公司来复习。比如你在面试之前可以在网上找找有没有你要面试的公司的面经。
举个栗子:在我面试 ThoughtWorks 的前几天我就在网上找了一些关于 ThoughtWorks 的技术面的一些文章。然后知道了 ThoughtWorks 的技术面会让我们在之前做的作业的基础上增加一个或两个功能,所以我提前一天就把我之前做的程序重新重构了一下。然后在技术面的时候,简单的改了几行代码之后写个测试就完事了。如果没有提前准备,我觉得 20 分钟我很大几率会完不成这项任务。
面试之后复盘
如果失败,不要灰心;如果通过,切勿狂喜。面试和工作实际上是两回事,可能很多面试未通过的人,工作能力比你强的多,反之亦然。我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!
后记
以上的内容只是程序员面试中的冰山一角,我作为一名Java老鸟已经将大厂机会、面试流程、简历书写以及最重要的技术知识整理成了一个118页的PDF文档。这里分享给需要的后辈们。
获取方式:加群514683544即可免费领取
获取方式:加群514683544即可免费领取
曾经的我们就是现在的你们,现在的我们就是未来的你们,未来的我们依然愿意分享更多帮助现在的你们。