本人在之前的博客里写了很多面试技巧,这是有个前提:至少候选人被面试了,在这个前提下,候选人哪怕失败了,至少也能用实战来检验和校对面试准备的结果,用句比较时髦的话来说就是试错,多试几次之后总能找到正确的方式。
本人在技术面试的实践中,对简历会做初步的筛选,在这过程中,会发现有些简历是一定通不过的,也就是说不会有面试机会,甚至如果该候选人用这份简历,在其它公司也未必能得到面试机会,那么这类候选人就比较悲催了。
为什么这么说呢?第一,这些候选人往往甚至不会意识到这些,往往继续用这份简历投,这样大把时间就这样浪费了。第二,如果真的是瞎猫碰上死耗子,得到技术面试的机会,那么面试官在阅读这份简历时,对该候选人的印象不会很好,也就是说,这类候选人得在面试中表现非常出色才能应聘成功。
如果这类候选人能力差倒也算了,但如果能力尚可(或比较优秀),那么这就非常可惜了。
在这博客的主要内容有如下四点:
第一,哪类简历一定没面试机会。
第二,如何让简历为你争取更多的面试机会。
第三,如何在简历中高效地叙述项目经验。
第四,在项目经验比较少的情况下(比如毕业生或实习生或初级开发),如何挖掘项目经验。
其它内容,比如如何在面试中叙述项目经验,以及如何表现,本文不管。
好了,正文开始。
1、别用万能简历来投递不同的工作
用最简单的言辞说简历的筛选标准:不满足条件的简历会过滤掉。
虽然这看似废话,但我还真得说,因为在投简历时,不少候选人还真会往枪口上撞。此话怎讲?
一般在职位描述里,会写清楚本职位的具体要求,这里其实是非常仔细的,就相当于考纲,人事或技术面试官就按这个筛选简历,乃至做后面的面试。
比如在某个职位介绍上有如下四点要求。第一,计算机相关专业,本科以上学历,4年以上java项目开发经验。第二,熟练Spring mvc,Mybatis/Hibernate等常用java开发框架。第三,熟练使用Mysql、Oracle等数据库,具有查询优化的能力。第四,有银行相关的业务经验者优先。
其中第一点是关于学历和工作年限的硬指标,如果这方面没达标,基本不会给面试机会。第二和第三点是关于具体技能要求的,在筛选时会着重看简历中的项目描述,以“Spring MVC“和“调优“等的关键字来确认候选人之前的工作经验是否和本岗位相匹配,而最后一点是加分项。
哪怕是针对同一个项目,哪怕是在其中做相同的事情(比如Java后端开发), 不同的候选人写的简历,侧重点绝对不会相同。比如张同学会侧重Spring MVC框架,李同学会侧重SQL调优,虽然他们两者都做过。
但如果他们就拿这份只侧重一点的简历来投上述工作,也可能会被过滤掉。为什么?因为在职位介绍上写的明明白白,需要两个侧重点,但两位同学都只写了一个,虽然都做过。这谈不上可惜,谁让他们不仔细看职位描述?
我在帮别人做简历辅导时,这类问题普遍存在,针对性的建议是:别用万能简历投,仔细阅读各职位的介绍,然后投之前针对性地做微调。
2、别在简历中让面试官看到如下的情况
在筛选简历时,除了上述学历等硬指标和项目技能因素之外,如果在简历中看到如下的情况,一般会慎重考虑甚至不给面试机会。
2.1、简历上,最近的项目经验和本岗位的无关
比如本岗位要Spring cloud或spring boot,但候选人最近在做spring mvc,这或许还能给面试机会,但如果候选人最近做的是.NET,甚至做的不是开发而是测试等非相关的工作,那么可能就得不到面试机会了。
因为最近没在做,所以有可能该技能就被荒废掉了。毕竟需要拳不离手,曲不离口。
2.2、最近处于不在职状态,而且这持续时间长于3个月
对此,如果简历上没给出诸如换城市或复习考研等合理的解释,那么公司可能就认为该候选人能力不行导致一直无法面试成功,所以一般不会给面试机会。
2.3、最近频繁跳槽,而且每份工作持续时间都不长
出现这类情况,而且简历上没额外解释,公司会认为该候选人能力不行从而导致每份工作都做不长,或者稳定性不好,总之,出现这类情况,一般不会给面试机会。
2.4、虽然工作年限达标,但符合要求的项目年限不达标
比如某工作需要5年以上java后端经验,小王工作虽然也有5年了,但简历上写的工作经验,其中1年是做测试,1年是做销售,java后端才3年经验,这类简历一般也会过滤掉。
请注意,职位介绍里要求5年以上经验,指的是商业项目经验,再说通俗点就是能挣到钱的项目经验。
在排查简历时,人事或技术面试官会去掉毕业设计,学习经验和一些培训学校给出的实训经验。
不是说这些项目经验对候选人没帮助,这里的意思是,因为客户需要为商业项目经验付钱,所以这类项目要求高,相比之下,上文中描述的其它经验含金量就低了。
3、在简历中,如何吸引面试官的注意?
这个问题其实也很好回答:面试官只关心简历中和招聘要求相关的内容,包括技能描述和项目经验。
这个很好理解,比如某项目组需要招一个有5年经验的java后端开发,需要spring cloud,redis,oracle等技能,那么在挑选简历时,一定是根据这些关键字来看。
为了让面试官更高效地关注到你的简历,比较通用的做法是:
3.1、首先自然是写个人信息,比如手机号邮箱等
3.2、其次,在首页的靠前位置,罗列出你的技术特长
比如擅长spring cloud,有Redis经验等。一般来说,这部分的总结需要和职位介绍相匹配,比如职位介绍列了5点,而且你全都满足时,你至少写上这5点,然后再写些其它你的特长。
如果你自己感觉有点没达标,那么尽量写上能弥补的技术擅长点,比如要求是要会用大数据经验,你实在没这方面的经验,那么至少些些SQL调优。 但至少在罗列自己技术擅长点时,得切题。
3.3、通过项目经验证明你熟悉刚才罗列出的技能
比如你刚才写,熟悉spring cloud,那么你就可以在项目介绍时,大致说下你项目背景,以及在其中你用到过哪些Spring cloud的组件。
4、如何介绍项目经验
在简历中,其实最关键的是项目经验描述,在这部分里,你得让面试官感觉你有尽可能多的相关技术经验。
假设有如下的职位描述。1、计算机及相关专业毕业,3年以上Java Web项目开发经验;熟悉Linux平台。 2、精通JAVA 编程,熟悉Spring、Spring MVC、Mybatis/Hibernate等开源框架,熟悉常用cache机制,Jsp/Servlet等技术。 3、熟悉Tomcat、Nginx等应用服务器的配置和优化。4、熟悉数据结构和算法,熟悉Java多线程开发。熟悉MySQL、Redis,熟悉数据库索引。5、了解Web前端技术,包括HTML5/CSS/Javascript等。6、拥有良好的沟通能力和文档能力。7、勤奋而善于思考,愿意不断挑战和提升自己。
那么我们就可以根据职位需求,从如下几个方面来描述项目经验。
第一,简要描述项目的背景,比如时间范围,客户是谁,项目规模有多大。
从x年x月到现在(这个时间范围至少是最近半年),我参与某外汇交易系统,客户是xx银行,这个项目组的构成是,1位项目经理外加10位开发,总共的规模大概在80个人月左右。
第二,大致描述项目的需求和包含哪些模块,然后简要说下你做了哪些模块,同时说下在这个项目用到的开发工具和主要技术点,这部分的描述如下所述。
这个外汇交易系统包括挂盘撮合成交、实盘成交、反洗钱和数据批处理等模块,我主要负责了挂盘撮合成交模块,其中用到了Spring MVC架构,数据库是Oracle,用Mybatis实现的ORM,该系统是运行发布在Weblogic服务器上,我们还用了Nginx来实现负载均衡,用Redis来缓存数据。在这个项目里,我还用到了JS实现了一些前台页面。
这里请大家注意如下的要点:
招聘方在看简历时,更关注的是用的技术,所以这里无需过度展开该项目里的业务细节,比如无需用大篇幅来写挂盘撮合成交模块里干了什么事情。
如果在这个项目里用到了职位介绍里给出的技术,应尽量写在项目描述里,但也要不能不顾事实地一股脑全写上。
第三,这里可以在刚才的基础上展开写这些技术在项目里是如何用的,以此来进一步证明你和所应聘职务的匹配度。同样这里也应围绕技术,而别多写业务细节,大家可以参考如下的范例。
具体而言,在这项目的挂盘撮合成交模块里,我们用到Spring MVC框架,用到了其中的拦截器来拦截非法的挂盘订单请求,在数据库层面,我们还把一些常用数据放入Redis里,在Redis里我们用到了list和set这两种数据类型,而且还用到了master-slave模式。在使用Nginx时,我们是通过配置来避免出现Session粘滞的问题。
如果大家只写用到过Spring MVC和Nginx,那么筛选简历的人看一眼就过了,最多认为大家用过。但如果大家再写一些只有用过才能知道的细节点,比如Nginx的master-slave模式,那么就会给招聘方留下比较深刻的印象,大家给他们的感觉就会是“不仅用过,而且熟悉(或精通)”。
5、别让你的项目看上去像学习或培训项目
我们在平时学习中,一般会自己搭建一个项目,这可以叫学习项目,比如一般的毕业设计也能叫学习项目。
在培训学校里,一般会通过案例来讲述,这个案例一般是根据实际商业项目改编的,但这也只能叫培训项目。
这里无意贬低学习项目经验,更无意贬低培训项目经验,但之前也说过,商业项目的价值最大,另外两种虽然也能帮助大家提升,但在面试中(或者在筛选简历时) ,一般的面试官会排除非商业项目,这是个普遍的事实。
比如我之前见过一份简历,有5年相关经验,这足以满足高级开发的年限要求,但经过排查,有2年是培训或学习经验,那么有效的商业项目年限只能是3年了,这顶多只能算初级的高级开发了。
这里透露下甄别非商业项目经验的方法:
简历中,这部分项目的时间段正好和培训时间段重合。
明着写,这是毕业设计项目。
从名字上看比较简单,比如某某客户管理系统,或某图书管理系统,而且用的技术比较简单,比如存粹就spring mvc等,或者项目人月数明显和商业项目有差别。总之,这类项目比较简陋,简陋到一般的公司都不会(或没必要)用,那么这些就有可能是学习项目了。
培训学校里的学生一般是批量出来的,如果在某段时间内,看到不少简历中的项目描述很相似,而且时间点很重合,那么就有可能是培训项目了。
这里只讲如何甄别非商业项目经验,至于如何把非商业项目写成商业项目,这个明显属于造假,本文不提。
6、刚毕业的人(以及年限少的人)该如何挖掘项目经验
请注意这里的用词是挖掘,也就是说是基于事实,在叙述时有所侧重,但绝非造假。来看两个例子。
比如小张在大三时帮计算机系的王老师所在的ABC软件公司干了半年的活,如果小张在简历上写:“在校期间,从x年x月到x年x月完成了xx系统,用到了xx技术”,那么这多半会被当成类似于课程设计的学习经验,但如果再加上如下关键性的描述:“这个系统是属于xx公司的xx商业项目里的一部分,我和另外三位开发人员做了半年,最终这个系统成功上线并在客户xx公司的环境里投入运营”,那这样小张的商业项目总年限里就能加上这半年时间了。
又如小李在做毕业设计时,花了7个月的时间参与了导师的一个电商商业项目,他主要的工作是设计一个调度算法,但也参与了一些诸如订单管理模块的工作。如果他就平淡地写一句,毕业设计是xx,毕业论文是xx,那么招聘方看过就算了,也不会认为小李在做毕业设计时还有过商业项目经验,这样小李未免有些吃亏。
但如果这样写:“在x年x月到x年x月的7个月里,在毕业设计中,我参与了xx公司的xx电商项目,客户方是x,我参与了订单管理和xx模块,并设计了其中的调度算法,在我的毕业论文里,详细介绍了这种做法”。文字没修改太多,但足以让小李增加7个月的商业项目经验。
再列份我看到过一份印象比较深刻的简历,某候选人小丁在某三个月的时间内,一边参加培训,一边还在朋友的公司里兼职做着xx信息管理系统的项目(这不违背常理)。那么如果小丁能很好地在简历中很好地说明这个情况,而且还能在面试中很好地回答相应的问题,那么我们不得不相信小丁在这个三个月里确实做的是商业项目。
7、商业项目未必是全职项目,如果你在某项目中有多个角色,那么挑和职位描述匹配的写
不少人认为,商业项目一定是全职项目,而且一定得和我的职责相匹配,其实这是个思维误区,大多数情况下是这样,但也有例外。
我见过不少毕业生,明明在读书阶段的大三大四出去干了不少兼职,但在简历中就不体现这点,这种属于不写白不写的。
我也见过不少候选人,在某个时间段里又做java后端开发,又客串测试,又做了前端的事,又做运维。大家别以为这不可能,在小公司里,一般真是一个人顶几个人用。
如果他在应聘java后端开发的简历中,大写特写运维的工作经验,那么通过筛选的可能性很低,但如果侧重于写java后端开发的经验,比如写用了后端开发的相关技术,那么至少有可能得到技术面试的机会。
8、归纳本文的侧重点
本文的侧重点在于如何让你的简历帮你争取到更多的面试技术,从正反两方面围绕这个主题写了不少内幕和技巧。
欢迎工作一到五年的Java工程师朋友们加入Java架构开发:860113481
群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!