2024年最全java开发工程师—如何让你的简历脱颖而出?,Java基础72问

总结

大型分布式系统犹如一个生命,系统中各个服务犹如骨骼,其中的数据犹如血液,而Kafka犹如经络,串联整个系统。这份Kafka源码笔记通过大量的设计图展示、代码分析、示例分享,把Kafka的实现脉络展示在读者面前,帮助读者更好地研读Kafka代码。

麻烦帮忙转发一下这篇文章+关注我

就这一次!拼多多内部架构师培训Kafka源码笔记(现已绝版)

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

要知道,招聘方只能从简历开始了解到候选人的信息,所以简历不用面面俱到,简明扼要地列出应聘方关心的要点即可;也不用千方百计地在格式上费脑筋,能让招聘方感到一目了然即可。

1 简历中应包含的要素,一个都别落下

在筛选简历时,招聘方往往需要从大量的简历中找到值得面试的(这个比例起码是5比1),所以停留在每份简历上的时间不会很长。

所以大家在准备简历应当注意“直接”两字:能让筛选人能直接地看出本人的教育背景、工作经历和项目经理,并让他们“直接”感到这份简历能纳入考虑范围。
根据这个原则,大家可以按次序在简历中列出如下表所给出的要素。image.png

##2 该如何描述公司的工作情况

这部分一般是按时间倒叙描述,比如可以按如下的格式写:

2018年11月到2021年3月,在xx公司,职务是Java高级开发。离职理由是想进一步发展。

2015年2月到2018年11月,在xx公司,职务是Java初级开发。离职理由是想进一步发展。

按此格式写之前的公司情况

这部分的内容应当尽量靠前,在罗列公司情况时,请大家注意如下的四个要点。

第一,工作情况可以和项目经验分开写,一般会在后继的项目经验里写具体用到的技术框架以及所做过项目的细节,在这里的工作情况描述里,可以不用过于复杂,让招聘方看到你之前的公司情况即可。

第二,尽量别出现长时间的“空白期”,比如上份工作是2月份结束的,而下份工作是6月开始的。如果出现持续三个月以上的“不在职状态”,需要在简历中说明情况,比如这段时间你是换城市发展了,或辞职复习考研或复习考公务员,总之得找个能说得过去的理由。

第三,在简历上,尽量别让人感觉你每份工作都做不长,但不能以此作假。比如我见过有候选人会合并公司,比如2016年11月到2017年3月在A公司,2017年4月到10月在B公司,他为了不让招聘方感觉他换工作太频繁,在简历上就写2016年11月到2017年10月在B公司工作,而故意合并了A公司的经历。这样的话,如果遇到背景调查,会露馅,即使有些公司不做调查,在劳动手册等材料上也能反应出真实的工作情况,所以这种做法有一定的风险性。

这里推荐的做法是,不要合并公司,但可以写明理由,比如当时小王是被外派公司A以人力派遣的形式外派到B公司,但没过多久A公司因某种原因不再具备人力派遣的资质了,这时小王就不得不终止与A公司的合同转而和B公司签约,这样虽然看上去小王是换了公司,但实际上没有。通过类似的合理解释,招聘方就不再会质疑小王的工作能力和稳定性了。

第四,可以写上合适的离职理由,尤其当你短时间里换工作比较多,可能引起招聘方的质疑的情况里,更该考虑些合适的理由。

合理的离职理由可以是,想为自己提供一个更大的发展空间,或想通过升级来独当一面,以此进一步提升自己的能力,或公司因资金等方面的原因倒闭了。总之,这不是我主观上不稳定,而是由于客观原因导致我不得不换工作。

而可能会导致没面试机会的离职原因是,待遇问题(虽然大家心知肚明,但不能这样写),或无法承受大压力,或同事领导排挤。这类理由往往会暴露出候选人的缺点,所以不建议大家采用。从这意义上来讲,“合同期满”也不是一个好的离职原因,因为如果候选人能力强,那么为什么原公司不和你续约呢?

总之,在描述公司情况时,一旦出现会让招聘方感觉你能力不强或不稳定时,一定得醒目地写上足以信服的理由,这样你的简历才会有机会被继续被读下去,进而你才会有技术面试的机会。

##3 描述项目经验的技巧

之前已经提到过,招聘方非常注重候选人简历上相关技术项目经验,因为这至少能有效地证明候选人实践过相关技术,而不是只具有理论知识。

具体而言,招聘方首先会看候选人最近半年的项目里用的是否是和本岗位相关的技术或框架,如果是,那么说明候选人能在入职后能直接上手干活。其次,会看候选人所有项目经历中和本岗位所用技能(或框架)一致时间年限,一般招聘方会对这个年限有个最低的标砖,当然越长越好。

如果大家自己感觉项目经历明明很匹配但最终却连面试的机会都没,那么问题大多就出在这个环节,下面我们来具体分析下描述项目经验的技巧。

3.1尽量把学习培训项目和毕业设计项目往商业项目上靠

商业项目是指能挣钱的项目,和它对应的就是些不以挣钱为目的的学习项目或毕业设计项目。正因为客户付了钱,所以商业项目的要求要远远高于学习或毕业设计项目,这也是为什么招聘公司会看重商业项目而会主动过滤学习项目的原因。

职位描述上的相关技能年限一般只是指商业项目经验,而一般不会包括学习项目经验。所以对于一些介于商业项目和学习项目之间的项目,尽量当成商业项目来写。

比如小张在大三时帮计算机系的王老师所在的ABC软件公司干了半年的活,如果小张在简历上写:“在校期间,从x年x月到x年x月完成了xx系统,用到了xx技术”,那么这多半会被当成类似于课程设计的学习经验,但如果再加上如下关键性的描述:“这个系统是属于xx公司的xx商业项目里的一部分,我和另外三位开发人员做了半年,最终这个系统成功上线并在客户xx公司的环境里投入运营”,那这样小张的商业项目总年限里就能加上这半年时间了。

又如小李在做毕业设计时,花了7个月的时间参与了导师的一个电商商业项目,他主要的工作是设计一个调度算法,但也参与了一些诸如订单管理模块的工作。如果他就平淡地写一句,毕业设计是xx,毕业论文是xx,那么招聘方看过就算了,也不会认为小李在做毕业设计时还有过商业项目经验,这样小李未免有些吃亏。

但如果这样写:“在x年x月到x年x月的7个月里,在毕业设计中,我参与了xx公司的xx电商项目,客户方是x,我参与了订单管理和xx模块,并设计了其中的调度算法,在我的毕业论文里,详细介绍了这种做法”。文字没修改太多,但足以让小李增加7个月的商业项目经验。

在招聘过程中,我们经常会看到有些候选人参加了培训学校,在里面也做了一些实训项目。如果这些项目是用来让学生练手的,而没有产生商业价值,那么虽然这些项目可能来自真实项目,名字也叫xx实训项目,但非常可惜,我们没法把它当成商业项目。不过我们看到过一份印象比较深刻的简历,某候选人小丁在某三个月的时间内,一边参加培训,一边还在朋友的公司里兼职做着xx信息管理系统的项目。那么如果小丁能很好地在简历中很好地说明这个情况,而且还能在面试中很好地回答相应的问题,那么我们不得不相信小丁在这个三个月里确实做的是商业项目。

对于高级程序员而言,他们的项目年限一般会超过3年,所以多挖掘出来的商业项目年限就属于锦上添花了。不过不少公司在招聘时往往会设个最低年限标准(一般是1年半到两年),这对刚毕业的或工作经验小于2年的初级程序员而言无疑是道坎,所以如果大家处于这青黄不接的时间段里,就更得挖掘这些“严格意义上还算商业项目”的项目经历并写到简历中,这至少能帮大家争取到更多的技术面试机会。

不仅如此,我们发现大多数初级程序员的水平其实也差不多,这时就得看谁的商业项目经验丰富了。比如有次我们无法从两位候选人中权衡,因为他们的综合条件和面试情况都差不多,但其中有一位在大三阶段有段为期6个月的商业项目实习经验,另一位没有(也有可能他也有但没当成商业项目来写),这种情况下我们就录用了有实习经验的候选人了。

3.2通过具体案例来看项目经验该怎么描述

假设某公司需要招一个Java高级开发,如下是职位描述。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实现了一些前台页面。

这里请大家注意如下的要点。

1 招聘方在看简历时,更关注的是用的技术,所以这里无需过度展开该项目里的业务细节,比如无需用大篇幅来写挂盘撮合成交模块里干了什么事情。

2 如果在这个项目里用到了职位介绍里给出的技术,应尽量写在项目描述里,但也要不能不顾事实地一股脑全写上。

第三,这里可以在刚才的基础上展开写这些技术在项目里是如何用的,以此来进一步证明你和所应聘职务的匹配度。同样这里也应围绕技术,而别多写业务细节,大家可以参考如下的范例。

具体而言,在这项目的挂盘撮合成交模块里,我们用到Spring MVC框架,用到了其中的拦截器来拦截非法的挂盘订单请求,在数据库层面,我们还把一些常用数据放入Redis里,在Redis里我们用到了list和set这两种数据类型,而且还用到了master-slave模式。在使用Nginx时,我们是通过配置来避免出现Session粘滞的问题。

如果大家只写用到过Spring MVC和Nginx,那么筛选简历的人看一眼就过了,最多认为大家用过。但如果大家再写一些只有用过才能知道的细节点,比如Nginx的master-slave模式,那么就会给招聘方留下比较深刻的印象,大家给他们的感觉就会是“不仅用过,而且熟悉(或精通)”。

##3.3这些亮点你大多做过,不加在简历中有些可惜

我们见过不少简历,在描述项目时,也能像上文一样,能根据招聘职位的具体要求展示出自己的匹配点,这种简历属于“达标”,即可以纳入考虑范围。在这个基础上,如果大家在项目里有下表列出的亮点,一定请写上,这就是大家优于别人的地方。
image.png
上述的一些技能要求未必会出现在职位描述里,但确实都属于亮点,而且在大家的项目里,多少会用到些,所以不加有些可惜。当然,如果大家有其它的亮点,也可以加上,毕竟这能提升大家简历的价值

##3.4多写些和项目管理相关的技能
我们见过不少简历,在其中更偏重技术或诸如沟通和协作方面的能力,但事实上,项目管理方面的技能同样重要。这里可能会有个误区,不少人认为初级程序员的简历无需写项目经验,但事实上,项目管理技能也是靠积累的,哪怕刚工作1个月,也能积累这方面的能力。

在这方面,项目经理更偏重于如何根据项目需求合理地分配任务和协调进度,对于程序员而言,则可以在简历中写项目管理的方式以及如何使用常见的管理软件来提升项目管理的效率。

这里我们就以“敏捷开发”为例,向大家展示下如何介绍自己项目管理的方式。

我们这个项目采用了敏捷开发的模式,具体而言,我们会根据项目总体需求,设置若干个发布点,在时间上,每隔1个月就会设置一个。根据任务的优先级,我们先会大致定下每个发布时间范围内的大致任务,而在每个发布时间范围内,会根据当前情况适当微调。

最后

金三银四到了,送上一个小福利!

image.png

image.png

专题+大厂.jpg

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

s/4f45ff00ff254613a03fab5e56a57acb)收录**

需要这份系统化的资料的朋友,可以点击这里获取

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值