分享一些面试中的小技巧和雷区

2,049 阅读14分钟

很多已经参加了工作的朋友们会有所体会,当你已经进入一家公司后,薪资想涨个两三千,还是很困难的,要么提职级,要么熬工龄,但是这几千块涨幅如果放在面试环节,只要表现好,可能也就是10分钟的事情,因此,为自己的面试做好准备,是一件性价比很高的事情。面试前准备的三件事:

  • 简历
  • 面经
  • 知己知彼

一. 简历

简历是一个行业性时代性很强的东西,不同的时代和行业简历的最优形态都不同,但一份好的简历总会有一些共同的特质。当然,简历只是“形”,真正重要的还是你个人的综合素质、业务能力以及技术水平。如果个人不具备很强的竞争力,那么简历再优秀,也仅仅只是成为了你封面照。

整体风格

首先,简历的第一要素是必须简洁而不简单。这是整体风格。我们来看看整体风格上要注意哪些。

  • 正文不要有任何的加粗,只加粗标题就好,目的是为了让结构清晰
  • 简历的页数最好不超过3页,我推荐的页数是2页,1页太少,3页太多,2页正好
  • 对于研发岗位,不要做彩色的简历,白纸黑字即可,切忌花里胡哨
  • 对于研发岗位,不要附加照片,长的美不美、帅不帅,都没有太多的好处。人性是很复杂的,你永远想不到hr会不会因为嫉妒你的长得好看拒掉你的简历,或者因为嫌弃你的长得丑而拒掉你的简历。
  • 简历的格式最好是PDFPDFPDF,重要的事情说3遍。很多人喜欢Word,不是不行,但绝对没有一份PDF的看的舒服。
  • 不要在简历中写自己的微信号、QQ号。联系方式只留下一个邮箱手机即可。
  • 简历的文件命名最好采用以下格式:职位-姓名-电话

内容

一份简历的结构非常的重要,基本上如果面试官至上到下扫一遍,觉得结构非常混乱,是不会继续往下看的,直接打回到HR那里。要知道,每个人的时间都很宝贵,hr或者面试官没有义务为你的不认真买单。

好的简历结构遵循以下的层次结构(并不是唯一结构,只是我推荐的一种)

  1. 标题
  2. 个人简介
  3. 相关技能
  4. 工作经历
  5. 项目经历

具体需要注意的事情有以下几点:

1. 标题

  • 标题只需要写XXX的个人简历即可。
  • 居中、加粗、突出标题的位置

2. 个人简介

  • 个人简介包括姓名、毕业学校、专业、年龄、出生年份、学历、籍贯、联系方式。
  • 出生日期写年份就好了,没必要写月日,看简历的人不会想在你生日的时候给你一份惊喜。
  • 要注意,上面这些内容通常都非常简单,不要每个属性单独一行,那样太占空间,一行写2-3个即可。
  • 求职意向可写,也可不写,如果要写的话,需要注意的是,如果你是个已经工作两三年的同学的话,千万不要写期望薪资,因为很多公司存在薪资倒挂的现象,老员工薪资不如新员工高,人性是很复杂的,如果面试官在你的简历上看到你的期望薪资比他还高,难免嫉妒,从而影响面试结果的公平性。

3. 相关技能

  • 不要罗列简单的技术名词,这样会降低整个简历的档次,这点太重要了,比如有的同学面试前端岗位,技术名词从html到html5,从css到css3,几乎所有的技术名字他都写上去了。这样的简历,直接是被Pass的
  • 也不要罗列太难的技术名词,不要把那些只是听过的高大上的名词全部写进去,对于一个正常智商水平的人来说,一两年是不可能精通或者了解这么多技术栈和语言的。换句话说,如果你天赋异禀,你早就是BAT、谷歌、微软的抢手货了,也不会读到这篇文章了。
  • 推荐技能以技术栈的形式出现,形成一个系统,而不要东一个西一个,前端就是前端、后端就是后端,清清楚楚明明白白。
  • 即使你认为你是一个全栈工程师,也请偏重一端,而不是两端齐头并进,所以,如果你要以全栈的姿态出现在面试官面前,请三思。
  • 慎重填写技术名词,最好每个技术名词附加一个更加详细的使用点,比如写了熟悉XX框架,那么框架周边的生态可以一起提及,这样写,远比你把同类框架全部罗列一遍要好很多。
  • 同类技术最好只写一个,很少有人能精通两个以上,比如你写了精通React,就不要写精通Vue,可以写熟悉或者了解,面试官一般要求的是深度而非广度,而且,一个资深的面试官都知道:你精通一个框架再熟悉其他的框架并不是一个难事儿。
  • 对于你不熟悉的只是知道是干什么的技术,千万不要写,很多面试者很喜欢找你只是简单提了一下的技术来发问,当然他并没有指望你能回答的多么准确,可如果你一脸懵逼,完全不知道他说的是什么,应付几句的话都说不出来,那真的是得不偿失。如果你万一被问的懵逼了,请直接了当的说抱歉,这个我不会,切忌东拉西扯,欲盖弥彰。换位思考一下,如果你是面试官,对方连简历上的东西都答不出来,那可能不光是技术不行,可能信用方面也差点意思。
  • 对于前端同学来说,不要过多的描述CSS和HTML相关的能力。因为CSS和HTML是属于非常基础的能力,重要的是JavaScript。如果你用JavaScript写过或者开发过任何框架性的东西,这是相当加分的。总结来说,CSS和HTML提一下即可,可以描述自己能够熟练使用LESS或者SASS。
  • 很多同学喜欢在简历里面附上自己的个人博客,我的建议是,如果你的个人博客里没有什么有深度的技术文章,我并不建议附带。原因在于,你既然附上了作品,那么你肯定认为这是你最好的或者是最满意的。当然,如果你不是为了应付面试写博客,而是平时就有写博客的习惯,并且认真的对待了每一篇文章,那么无论文章水平高低,都建议附加上。还有,不要附带自己的微信公众号在简历里,你是来求职的,不是来做媒体的。

4. 工作经历

  • 这是很多同学完全忽略的地方,没有分清楚工作经历项目经历,工作经历必须单独成为一块儿
  • 每段经历不需要些太多,只需要以年份 + 公司名称 + 职位即可,具体的工作内容是在项目经验里描述的,不要写在工作经历里面
  • 注意,时间一定要按照顺序排列,不要倒叙排列,这里是为了让阅读者看到你的履历,时间最好能够接上,如果时间有中断,那么就要想好怎么回答hr或者面试官的提问。
  • 如果你是其它行业转行开发的,那么和应聘岗位无关的工作经历不要写,比如你应聘研发岗,但是你的工作经历上出现了保安、客服、洗碗工,这些经历只会给简历减分

5. 项目经历

  • 项目切忌多而杂,很多同学写十几个项目进去,不管大项目、小项目统统都罗列出来,这非常的不好,你需要挑选有代表性的项目,每个公司1-2个项目为佳。
  • 项目经验、描述把握一个原则,求质不求量。深度描述你在每个项目里的职责。
  • 推荐大家重点描述项目遇到了什么问题,你是如何解决的,或者是从业务、设计上巧妙规避或者是用什么技术来解决这个问题的。也可以写你认为在项目里做过什么比较自豪或者得意的事情。
  • 不要在项目里机械的写出自己的职位,很多同学罗列十几个项目,每个项目都机械的写上项目经理、产品经理、程序员、小组长、负责人。没有必要。
  • 如果你还有其它的比较有名气的开源项目可以附加上。比如你在Github上参与一些高Star的开源项目,一定要写上去,绝对是加分项。

总结

上面这五点,是简历的几个比较重要的要素,简历部分就讲到这里,最后还是要提醒各位同学,简历固然重要,但不是最重要的,努力提升自己才是最重要的,如果你的技术功底深厚,那么不需要太多技巧,简历也不会太差。

二. 面经

1. 准备环节

如果你要面试的是一个中大型企业,那么你很有可能可以再一些app或者网站上刷到这个职位别人的面试经验,看看别人过是如果过的,挂是如何挂的,临时抱抱佛脚,另外如果你的运气足够好,你正好遇到了面经里面提到的这位面试官,那你的成功会就会大大增加,至少客观题你会很容易遇到原题。

刷完面试题后,建议再花10-20分钟去了解一下对方公司,了解对方的主要业务、主打产品、发展历程、准备1-2个跟对方公司产品业务相关的问题,然后就可以在面试过程中比如自我介绍环节或者最后的反问环节向对方传达一个信息,让对方知道,我不是海投的,而是做过功课的,这会大大增加好感,拉近距离。

最后,在面试的前一刻,你可以打开自己的录音设备,对面试过程进行全程录音,主要有两个作用:

  1. 把当天没有回答上来的问题记录下来,方便回家复盘
  2. 通过回放录音,可以发现很多自己平时不易察觉的问题,比如表达方式、用词习惯、语速、音量等问题

总之,沟通能力和表达能力是非常重要的,沟通能力和表达能力在日常工作中和职级提升中的重要性甚至会高于你的技术的重要性,因此真的值得大家去下大功夫修正和锻炼自己的沟通和表达能力,特别是如果你的普通话不够标准,那么你会下意识的说的声音又小、语速又快,你为了一次面试,为了找一份工作,已经学习了那么久,藏了一肚子的知识,所以一定要通过声音和语速让对方清清楚楚的知道你想说什么、你会什么、你值多少钱

2. 自我介绍环节

对于第一次找工作的同学来说,技术越差,这个环节越重要,这是你主导这次面试风向的唯一机会,尽量不要让面试过早的进入一问一答环节,首先既然是自我介绍嘛,讲的是自己的过往,语气应该是平和而真诚的,最好不要像背诵课文或者演讲一样,自我介绍的三要求:秀优势套近乎摆技术

  • 秀优势:所谓秀优势,就是把你自认为比较优秀的东西提前给对方摆出来,从而暗示并且引导对方去提问,这样就能增加在之后的一问一答环节中被问到相关优势方面的概率了

  • 套近乎:秀优势结束之后,就是套近乎了,这时候就可以把你之前花了几十分钟对这家公司的信息收集用起来,可以用简单的几句话组织一下,然后表明自己对贵司感兴趣,并且打算往这方面发展。这样一来就在无形之间拉进了你和对方之间的距离。

  • 摆技术:套完近乎之后,就可以开始摆技术了,这里说的摆技术,并不是说你知道哪些技术,而是擅长哪些技术,一方面可以尽量引导面试官去给他框定一个提问范围,另一方面在后面的面试过程中,如果有哪些东西没回答上来,是否存在与之类似的技术,或者可替代的技术,也可以拿出来聊一聊

总的来说,如果在自我介绍环节,你能让面试官跟你搭上话,甚至聊起来,那么你的成功率会提高10%-20%

3. 面试官提问环节

关于基础知识,这方面没有什么技巧,只能靠日积月累,有实力靠实力,没实力靠运气,笔者在这里祝大家运气都很好!

如果问到一些框架或者库方面的东西,如果你不会,不要着急的说不会,先考虑一下跟这个东西差不多的其它玩意儿有没有你会的,比如人家问redux,你没用过,但是你正好用过Mobx、Dva,就可以先把问题接过来,然后引到自己熟悉的技术上面

再比如对方问了一些源码相关的东西时,你答不上来,也可以往自己会的方面去转移,总之就是以退为进,先退一步,再从侧面进入到另一个问题中,前提就是你去面试的时候,脑子里至少有一两点东西掌握的比较好,可供你去转移话题的,不要什么都不会,对方多次降低难度之后,你还是一问三不知。

问完技术之后,对方可能会问你的项目经验,因为面试官对你的项目不是很了解,所以细节方面应该不会问的太细,但是,不管你是做了整个项目,还是只是参与过,你都必须能够阐明整个项目的业务逻辑。另外还可能会问你项目有没有什么亮点、遇到最难的问题是什么?如何解决的?从中获得了哪些经验?总结了哪些方法?这些都是需要提前想好怎么回答的

另外,如果面试官怀疑你之前的工作经验是假的,也就是说,对方怀疑你没有实际的项目经验,这时他可能还会问一些工作中的实际操作的细节,比如,你们是如何进行项目管理的?你们commit代码有没有规范?规范是如何制定的?代码merge之后产生了冲突是如何解决的?线上日志是如何查看的?部署流程是什么?等等一系列问题……如果你的工作经验是假的,对方有心想揭穿你的话,还是很容易能问出来的

4. hr提问环节

最后说一下hr提问环节,一般情况下,除了某些大厂的hr拥有一票否决权,大部分情况下,如果能走到这一轮面试,那么基本上已经稳了,你需要的只是放平心态,正常交流即可。

三. 总结

面试说到底还是两个人的事情,既然是人和人发生的事情,那么就说明一来这是个主观占比比较大的事情,二来其实面试也挺看运气的,因此最重要的还是保持良好的心态,不要被一两次失败打击到自己!

最后,希望这篇文章对大家有所帮助,加油!