I've been helping my friend's company recruit people recently, The first step in recruiting is to screen resumes, In the process, I found that although I can receive many resumes, But there are not many resumes that can enter the technical interview process through screening, estimate10 Not more than4 Share can pass the screening.

   
If you can't pass the technical interview, So candidates can collect interview questions, Go home and get ready, After all, he talked to the interviewer, It's not nothing, But for those resumes that can't be screened, The owner of a resume is often unknown( The company will not take the initiative to notify), So they're still confused, Envisioned, In the near future, They still can't get an interview.



    From the perspective of senior interviewers, Share with you the experience of writing and sending resumes. The content of this paper is based onjava web Lightweight development interview tutorial
<http://www.broadview.com.cn/book/4843> Adapted, Here is the text.

   Know no one but your friend, One win and one lose, This sentence can well reflect the current situation that most programmers submit resumes to find jobs.

    

   
At present, a lot of junior candidates simply send out resumes in order to get the chance of interview and job hopping, However, this approach of not knowing the key points of the interview and not analyzing the specific recruitment needs of the company will not only reduce the efficiency of finding a good job, It will make you miss some favorite companies, Thus only“ Improvise” To enter a general company that can meet its own wage requirements.

   
The role of a resume is to show the recruiter how well you match the position, To get an interview, That's it. But I've seen a lot of candidates with very fancy resumes, It's also quite long, But it's hard to see that he's up to the job.

   
Need to know, Recruiters can only learn about candidates from their resumes, So resumes don't have to be comprehensive, Simply and concisely list the main points that the applicant cares about; You don't have to worry about the format, It can make the recruiter feel clear at a glance.

1 Elements to be included in the resume, Don't leave one

    When filtering resumes, Recruiters often need to find a lot of resumes worth interviewing( This ratio is at least5 than1), So it won't take long to stay on every resume.

    So you should pay attention to it when preparing your resume“ direct” Two characters: Can let the screening person directly see their education background, Work experience and project manager, And let them“ direct” Feel that this resume can be taken into consideration.

    According to this principle, You can list the elements in the following table in order.


Elements to be included in the resume

objective


Essential information, For example, name. Gender, Age, Current city, Is it in service? Mobile phone, email, etc.

1 Let the recruiter know the basic information of the candidate.

2 So that recruiters can contact candidates through mobile phones and other ways.


Flashback education background by time, Generally, it only needs to include high school or above, No need to write, But need to include professional and academic degree information.

Use information such as major and academic degree to prove your technical background to the recruiter.


Summarize your skills. such as:

1 Yes3 yearJava experience, Yes2 yearSpring MVC experience.

2 Yes3 yearOracle experience, Yes2 yearOracle Tuning experience.

Wait

Generally, these summary points are consistent with job requirements, In this way, the recruiter can directly feel the matching degree of the candidate.

On this basis, Make a list of summary points that can help you succeed.


Companies worked by flashback, List the project experience in these companies, The skills in this section are described in detail below.

In the project experience description, Can pass the technical experience used in the project, etc, Give yourself specific“ matching” Certification of the position.


You can list the training experience and rewards related to the position you are applying for

These are bonus items, Can be employed preferentially under the same circumstances


List your interests and self summary in a small amount of space

Let recruitment companies know more about candidates

2 How to describe the work of the company

    This part is generally described in reverse chronology, For example, it can be written in the following format:

    2015 year11 Month to2017 year10 month, stayxx company, Duty isJava Advanced development. The reason for leaving is to further develop.

   2012 year2 Month to2015 year11 month, stayxx company, Duty isJava Primary development. The reason for leaving is to further develop.

    Write previous company information in this format

    The content of this part should be as far ahead as possible, When listing the company, Please pay attention to the following four points.

   
first, Work situation can be written separately from project experience, Generally, the technical framework used and the details of the projects done will be written in the subsequent project experience, In the job description here, You don't have to be too complicated, Let the recruiter see your previous company.

   
Second, Try not to show up for a long time“ Blank period”, For example, the last job was2 At the end of the month, And the next job is6 Month begins. If the occurrence of“ Inactive status”, Need to state in resume, For example, in this period of time, you have changed your city to develop, Or resign to review the postgraduate entrance examination or review the examination of civil servants, In a word, we need to find a reasonable reason.

   
Third, On resume, Try not to make people feel like you can't do every job long, But you can't fake it. For example, I've seen candidates merge companies, such as2016 year11 Month to2017 year3 Month inA company,2017 year4 Month to10 Month inB company, He's trying to keep recruiters from feeling that he's changing jobs too often, Write it on your resume2016 year11 Month to2017 year10 Month inB Company work, And intentionally mergedA Company experience. Such words, If a background check is encountered, Will show up, Even if some companies don't investigate, It can also reflect the real working conditions in labor manual and other materials, So there is a certain risk in this way.

    The recommended practice here is, Don't merge companies, But the reasons can be stated, For example, Xiao Wang was sent to another companyA In the form of manpower dispatchB company, But it didn't take longA
The company is no longer qualified for human dispatch for some reason, At this time, Xiao Wang had to stopA The company's contract turns to andB Company sign, It seems that Xiao Wang has changed his company, But not really.
By a similar reasonable explanation, Recruiters will no longer question Xiao Wang's ability and stability.

    Fourth, You can write down the right reasons for leaving, Especially when you change jobs in a short time, In the case that the employer may question, More appropriate reasons.

   
A reasonable reason for leaving can be, Want to provide a bigger development space for themselves, Or want to be on your own by upgrading, In order to further improve their ability, Or the company went out of business due to capital and other reasons. in short, This is not my subjective instability, I had to change my job for objective reasons.

   
The reason for leaving without an interview is, Treatment problem( Although we all know that, But it can't be written like this), Or can't bear the pressure, Or colleagues and leaders. Such reasons often expose the shortcomings of candidates, So it's not recommended. In this sense,“ Expiration of contract” It's not a good reason to leave, Because if the candidates are strong, So why didn't the original company renew the contract with you?

   
in short, When describing the company, Once it appears, it will make the recruiter feel that you are not strong or stable, You have to write compelling reasons in a bold way, So that your resume can be read on, And then you'll have a technical interview.

3 Tips for describing project experience

    As mentioned before, The recruiter attaches great importance to the relevant technical project experience on the candidate's resume, Because it can effectively prove that the candidate has practiced the relevant technology, Not only theoretical knowledge.

   
Specifically speaking, The recruiter will first see if the candidate's technology or framework related to his / her position is used in his / her projects in the last six months, If it is, It means that the candidate can work directly after entering the position. Secondly, Skills used in all project experiences and positions of candidates( Or frame) Consistent time period, Generally, the employer will have the lowest standard brick for this period of time, Of course, the longer the better.

    If you feel that the project experience clearly matches, but in the end, you don't even have an interview, So most of the problems are in this link, Let's analyze the skills to describe the project experience.

3.1 Try to put learning and training programs and graduation projects on business projects

   
A business project is one that makes money, Corresponding to it are some study projects or graduation projects that do not aim to earn money. Because the customer paid, So the requirement of business project is much higher than that of study or graduation project, That's why recruitment companies value business projects and actively filter learning projects.

    The relevant skill years in job description generally only refer to business project experience, Learning project experience is not generally included. So for some projects between business projects and learning projects, Try to write it as a business project.

    For example, Xiao Zhang helped Teacher Wang of the computer department in his junior yearABC The software company has worked for half a year, If Xiao Zhang writes on his resume:“ During school days, fromx yearx Month tox yearx The month is finished.xx system, Used.xx
technology”, Most of them will be regarded as learning experience similar to curriculum design, But add the following key description:“ This system belongs toxx Companyxx
Part of a business project, I worked with three other developers for half a year, In the end, the system was successfully launched to the customerxx Put into operation in the company's environment”, Then in the total period of Xiaozhang's business project, we can add this half year.

   
Another example is Xiaoli's graduation project, Spent7 Participated in a tutor's e-commerce business project within months, His main job is to design a scheduling algorithm, But also participated in some work such as order management module. If he writes a simple sentence,
Graduation project isxx, The graduation thesis isxx, Then the recruiter should have seen it, I don't think Xiao Li has any business project experience in his graduation project, It's a bit of a loss for Xiao Li.

    But if you write like this:“ stayx yearx Month tox yearx Lunar7 Within a month, In graduation project, I was involved.xx Companyxx Electricity supplier project, The client isx, I am involved in order management andxx
Modular, And the scheduling algorithm is designed, In my graduation thesis, This method is introduced in detail”. The text hasn't been modified too much, But it's enough to add Xiao Li7 Months of business project experience.

   
In the recruitment process, We often see candidates attend training schools, I also did some practical training projects in it. If these projects are for students to practice, Without commercial value, So even though these projects may come from real projects, The name is also called.xx Training project, But it's a pity, We can't think of it as a business project. But we've seen an impressive resume, A candidate Xiaoding is in a certain period of three months, While taking part in the training, While still working part-time in a friend's companyxx Project of information management system. So if Xiaoding can explain this situation well in her resume, And can answer the corresponding questions well in the interview, Then we have to believe that Xiaoding did a business project in the past three months.

   
For advanced programmers, Their project duration is one般会超过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这些亮点你大多做过,不加在简历中有些可惜

   
我们见过不少简历,在描述项目时,也能像上文一样,能根据招聘职位的具体要求展示出自己的匹配点,这种简历属于“达标”,即可以纳入考虑范围.在这个基础上,如果大家在项目里有下表列出的亮点,一定请写上,这就是大家优于别人的地方.


可以加入的亮点

怎么加


JVM调优方面

请参考第九章,里面有专门的描述


设计模式方面

请参考第八章,里面有专门的描述


数据库调优方面

1可以说在项目里用过批处理预处理事务等高级知识点.

2 能通过监控查看哪些SQL语句需要调优

3 能通过索引执行计划等方式对SQL语句进行优化

4 进一步的话,能通过数据库集群等方式分散对单个数据库的压力

5 如果做过,也可以写一些关于NoSQL和大数据方面的经验


Spring MVC等架构方面

1 用过其中诸如拦截器,AOP和事务等高级技能点.

2 在搭建框架时,能一起参与并熟悉如何通过框架来提升代码的可维护性.


学习和解决问题的能力特别强

比如可以写,在项目里,自己被分担一块大家都不大熟悉的技能,但你在短时间里就完成了技术调研并把它用到项目里.


能承担大的工作压力

1 由于客户方催进度的原因,这个项目需要加班(总之加班原因不是你造成的)

2 在这种情况下,你能和你的团队一起连续奋斗,最终成功地完成进度.

   
上述的一些技能要求未必会出现在职位描述里,但确实都属于亮点,而且在大家的项目里,多少会用到些,所以不加有些可惜.当然,如果大家有其它的亮点,也可以加上,毕竟这能提升大家简历的价值.

3.4多写些和项目管理相关的技能

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

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

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

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

    而且,我们项目组还引入了“每天站立会议(Stand up Meeting)“的形式,每天我们项目组会用大致20
分钟的时间一起讨论下每人已经完成的任务,要做的任务和遇到的问题,这样即使遇到阻碍性的问题,也不会耽搁整个项目很久的时间.

   
相关的内容无需多,大家只需列些“敏捷开发的必做点”,以此来证明自己实践过这种开发方式即可.如果招聘公司也是采用类似的项目管理方式,那么这点一定是个很好的加分项,即使招聘公司采用其它方式,比如瀑布模型,那么你写上这话,招聘方的评价就不会仅仅是“熟悉项目开发的技术”,而且还是“了解并实践过XX项目管理方式,对项目管理有一定的了解”,这样这份简历获得面试机会的可能性就大大增加了.如果大家在项目里用到的不是敏捷管理模式,而是其它的管理方式,也可以照着这个思路写.

   
此外,正规的项目多少或用些项目管理的工具,大家也可以在简历中列一些自己用过的,以此来进一步证明项目管理方面的经验.在下表里,我们总结了一些常见的开发人员能用得上的项目管理工具.


工具或软件

项目管理方向

能起到什么样的作用


JUnit

单元测试

开发人员在开发完成后,可以用Junit来编写自己代码的单元测试代码,运行单元测试代码后,能测试自己开发的模块.


Maven

构建项目

通过Maven,我们能给项目引入必备的jar文件,也能方便地编译(build)和发布项目代码.


Jenkins(一般会和Ant一起用)

持续集成工具


我们一般会用重复的工作来发布不同版本的项目,比如运行ant脚本,把生成的jar放入指定的Linux目录并设置一些script文件的可运行权限.我们可以通过设置Jenkins脚本来配置这些重复的工作.


Jira

缺陷或任务管理

每当遇到一个Bug或一个新任务,我们可以建一个jira,此时该Jira状态是Open,程序员开始开发时,会设置成In
Progress,完成开发后能设置成In QA,这样测试人员就能介入测试,测试完成后,测试人员能把它设置成In
UAT,一旦把该任务部署到生产环境,就能Close这个Jira.也就是说,通过Jira,我们能在项目里很好地跟踪和监控具体问题和任务的当前状态.


Git

版本管理


通过Git或SVN等版本管理工具,在项目里我们能方便地建立提交或回退各人的修改,还能分支版本.Git还有个好处:可以设置成“评审后才能提交”的模式,这样某人要往主版本提交的代码必须要经过一人或多人的评审,这样就能很好地控制代码的质量.


Autosys或Crontab

用于定时跑脚本任务


比如我们要定时跑一个脚本,我们就能通过Autosys或Crontab来设置,通过Autosys,我们更能方便地设置任务间的依赖关系,比如A任务跑好后B任务才能跑,而且还能查看任务运行的状态是成功还是失败.


Sonar

代码质量管理


通过Sonar,我们不仅能检查代码是否还有bug,还能查看代码的质量,比如代码的注释率是多少,单元测试覆盖率是多少.Sonar还能给出一些代码方面的建议.总之,通过Sonar,我们能提升代码质量.

    具体而言,大家可以在简历加上如下的内容:在这个银行(或其它)项目里,我们用Maven来管理项目,用Git做版本管理,用Junit
来做单元测试,用Jira来做bug管理,在代码上线前,我们还会用Sonar来扫描代码,如果发现一些可改进点,比如Junit覆盖率不高,我们会及时改正.

    大家在简历中写这部分的内容时请注意如下的两个要点:

    1 在项目管理方面一般都会用到些工具,也就是说,大家可以写上在自己项目里用到的工具以及这些工具应用在哪些方面,但别什么都不写.

    2
面试官在看到相关描述后,一般会在面试中询问些细节,比如Jenkin的配置方式等,也就是说,大家不仅要写,还得适当地了解下这些工具的使用细节,以备面试时的提问.

4投送简历时的注意要点

    简历准备得再好,如果用不恰当的方式投递出去,同样无法得到面试机会,所以大家在发送简历时,应当注意如下的要点.

4.1不要发送“万能“简历,根据具体的职位要求进行微调

    这可能是不少求职者的“通病”,他们往往就准备一份简历,然后看到一个合适的工作机会就发一份,也不关注这个公司的行业背景,也不看这个职位的具体要求.

   
其实大家的简历是“闭门造车”的形式写出来的,只能“尽可能”地描述自己掌握的技能(无法完全描述出你项目里用到的所有技能要点),而每个公司的职务要求一定不会完全相同,所以大家在发送简历前一定得根据具体的职位需求改写相关的项目经验描述,以求达到“匹配度”最高的效果.

   
相反,如果大家针对不同的公司发的是同一份简历,那么就得撞大运了,这样一定会失去不少“匹配度不高“的面试机会,其实修改简历所用的时间不会太多,但效果一定是大相庭径.

4.2在招聘会上,尽量要口头说出你和这个职位的匹配点

   
在招聘会上,大家只能是发送同一份简历,在这种情况下,大家一定得尽可能地和招聘方交流几句,同坦诚的措辞,口头说下你和这个职位的匹配度,同时让招聘方感受到你热切想得到这份工作,这样比“递交简历无其它互动“的效果要好很多,至少能给招聘方留下些许印象.

4.3简历以正文形式发送,别让招聘方觉出敷衍

   
在很多场合下,大家是通过邮件的方式发送简历,在这种方式下,由于只是通过文字,无法面对面直接交流,所以大家应当尽量让招聘方感受到自己求职的诚意,至少别让他们感觉出“敷衍”.

    这里来举些可能会让招聘方感受到“敷衍”的例子.

    例子1,从邮件的标题和称谓上,看不出这份邮件是给本公司专门定制的.比如我们经常会收到这样的简历,标题是“应聘xx岗位”,开头是,尊敬的先生/女士,
在其中第一没有公司的称谓,第二我们已经在招聘要求里写了负责收简历的是人事王先生,但这里没有具体的称谓,这就会让我们感觉这份邮件是通用的,而不是专门发给我们公司的.

    恰当的做法是,在邮件标题里写上具体的公司名,比如应聘xx公司的xx岗位,在开头上写,xx公司,尊敬的人事王先生,这里如果没有留收简历人的称谓就写
尊敬的人事,这样就会让人感到候选人在这份邮件至少是下过功夫的.

   
例子2:从邮件列表里,我们能看出候选人是群发邮件,把同一份简历发给不同的公司.这种情况不多,但有,恰当的做法是,在一封邮件里,只给一个公司发送求职信息.

    例子3:有些候选人在邮件里,直接用附件的形式发简历,而没有任何正文的内容.这就无法让招聘方感觉到候选人的诚意了.

    比较恰当的做法是,候选人还应当在邮件里写上如下样式的求职信.

xx公司,尊敬的人事张先生:

我在xx招聘网站上看到您这边的招聘Java高级开发的信息,特来应聘.

我叫xxx,今年xx岁,xx大学xx系毕业,本科学历,手机是xx.

我有x年java经验,用过Spring MVC等技术(根据职位描述列出用到过的其它Java技术),数据库方面,我用过xx
,也有过调优经验(数据库方面的经验也请和职位描述一致).再根据职位描述写一些自己和这个岗位相匹配的技术.

我非常愿意加入贵公司从事Java高级开发的工作,我的详细情况请看我的简历,如果可以,我非常愿意向您这边提供更多的个人信息.

最后列上署名

    因为有些公司的邮箱出于安全因素,会过滤附件,所以还是建议大家以附件形式发简历的同时,在正文里也加上简历的内容.

 

结语:

     如果我的这篇文章反响不错,我将继续发表文章向大家介绍如何进一步地描述项目信息.