2019.2.11
大部分内容准备放回到自己的小网上写了,这里就不在维护更新啦:
========================================
简历的基本格式
Objective
通常我个人是只写申请的position title的,会根据不同公司的不同职位进行修改。不过大部分网申系统都会记录你申请的职位,所以如果简历篇幅不够可以去掉这个section。有看到过有些人会用一个通用的职位描述,大意就是any developer position都行,这样投不同公司不同职位就不修改了。个人不太喜欢,显得申请人比较懒没有诚意。也有人会加上日期说自己什么时候毕业希望什么时候开工。这种额外信息我也不太喜欢,因为这个应该是面谈的东西,不要在白纸黑字的地方给自己和别人加限制。
Education
Education好像没有什么太多好说的,无非就是学校专业gpa之类的。觉得自己gpa足够好或者rank够高就写上,反之就别写。如果你拿到面试比较多,你就会知道大概没什么人会对你的gpa或者rank提问。如果你拿到面试比较少,那通常也不是因为gpa。Education可以在格式上写紧凑一点给Project多留点空间。比如具体只写两行,一行硕士一行本科;每行行内写清楚学位学校时间等等。
Technical Skills
这个Section的作用是用来总结关键词的。我通常会把所有的关键词都列在这里。一般就是languages,frameworks,tools,knowledge这几个item。这里强调一点,什么是关键词。通常别人看你的简历,不会超过一分钟,尤其是简历初选的时候更是没人把你的简历当回事。这里的重点不是简历不重要,而是你的简历要怎么在一分钟之内抓住别人的眼球,留一个好印象。这一分钟之内的好印象决定了你的简历能否进入下一轮。这里最有效的办法就是少废话,多列关键词。哪些是关键词呢?编程语言数据库的名字当然是,但是各种framework的名字更重要。想象一下你的简历里写的是会Java,别人写的是会Hibernate和hadoop;你的简历里写会javascript,别人写的是会ReactJS和NodeJS;你的简历里写会SQL,别人写的是会PostgreSQL和MongoDB。你说你拼得过别人吗?另外在解释一下什么叫做“少废话”。有些人会写“good with XXX”, "familiar with XXX", "efficient with XXX",这些形容词就是废话,因为面试官不会根据你的形容词做量化判断,同时面试官会觉得你心虚。看到这里你可能会有两个问题:第一,framework不会怎么办?答:去学。第二:不熟的技术写上去,面试被问到怎么办?答:首先你得有面试。最后说明一下为什么要有个knowledge这个item:knowledge要根据Job position的描述进行修改,基本思想就是job要求啥你knowledge就写啥,用以表现你对这个职位很match。对,就是这么鸡贼。
Professional Experience
这个section一般是写实习的。实习一般分成两种,第一种是参与核心产品研发。有见过一个女生的简历,她参与了百度某个deep learning产品的开发,轻松去了facebook。如果你有这样的经历,简历随便写写就行了。其他实习都是第二种,统称为打杂。打杂的实习,关键要强调technical stack,而不是强调你开发的东西怎么用。这个点会在下面讲project怎么写的时候细说。另外一定要想办法强调你做的工作是system development。比如你的实习内容是做测试,那你一定要想办法说成你做的是开发测试系统,而不是简单的写test case。 还有人在Professional Experience写和development无关的经历,想要强调自己的leadership或者communication skill。但是说实话,如果你找的工作是入门级别的developer,没人在乎你的leadership。同样面试本身就会体现communication skill, 如果你连面试都进不去,也就说明别人不在乎你的communication skill。如果是实在没有project可以写,这些可以用来把简历填满,但是我个人不觉得这能起到多大的加分作用。相反,面试官有可能会留下这个人没有什么项目可写的负面印象。
Projects
Projects在简历中占据最大的篇幅,也是简历中最重要的部分。这个部分不只决定了你能否进入面试,也在相当程度上决定了面试中面试官会问什么样的问题。只要你清楚的知道你的简历里的卖点是哪些,那你就能把握面试问题的范围,回答上也就更得心应手。不过这是关于面试的技巧,这里先只讨论简历进面试这一步。描述Projects时候最常见的错误,第一个是去详细解释你的project是啥和怎么用,而忽略了tech stack。看到很多简历在写project的时候,都是在详细解释我做了个啥,这个东西是啥,这个东西怎么操作。比如我做了个电商网站,这个网站用户能登录,登录之后用户能买东西,买了东西后台还能看到。这是HR或者面试官希望看到的吗?难道你觉得HR或者面试官不知道电商网站应该有哪些功能?正确的写法是,你要强调是用了什么framework开发了那些feature。比如用Django搭建了MVC,用MongoDB做数据库,就用FB/TW的api实现了用户登录。通过tech stack别人才能判断你的开发经验。第二个常见错误是,以为tech stack只写个开发语言和IDE就行了。前面已经提到过了,开发语言仅仅是最基础的东西,是别人大二大三就会的东西。更重要的是那些framework。第三个常见错误,重复。你做了三个tech stack一样的Android app,写在简历上只能算是一个project,因为没有区别。第四个常见错误,啰嗦。你应该把简历写的像ppt,而不是写的像论文。之前也提到了,别人第一次看你的简历都不超过60秒,写的啰嗦别人就找不到重点(关键词),结果就扔掉了。说了一些Project里常见的坑,最后说一下怎么“合理夸大“自己的简历。一个办法是,把自己新学的framework”编“进之前并没有使用这个技术的project中。比如你去年做了web的project,但是最近才刚学了AngularJS,你就可以在简历里说去年的web project用AngularJS做了一些功能。当然前提是你确实是懂这个技术的。
Coursework
通常我会把coursework放在简历最后,并且根据不同的position要求调整课程。比如如果是data scientist的职位就要强调machine learning和data mining相关的课程,如果是system developer就强调下数据库或者操作系统。有人问过说学校没上的课是不是不应该放上去。我的回答一般是,简历就是怎么对自己有利怎么写,拿不到面试担心那么多有毛用。成绩单上没有,你就说你在网课上学过,又不是刑侦破案谁还有闲心让你开证明不成。
Publications
对phd来说publications相当重要,但是这里其实主要针对找工作的master。对硕士来说,可以锦上添花,但你要先确定你的“锦”足够好。除非你在国内,否则中文的publication就算了。英文的如果有就按照通常论文的reference格式写清楚。
其他:篇幅
如果简历一页写不满或者写的很稀松,那找工作会很困难,因为这说明你没什么经验没什么能写。如果简历一页写不下,并且已经足够简练,千万不要因为篇幅砍project。总能看到有人说简历不能超过一页,但是找工作这种事情需要大家有脑子有计划,到底格式和内容哪个重要,还是自己判断吧。
其他:关于framework和刷题
大部分学校课程只教基础原理,不教framework。如果你认为靠学校教的基础原理找工作就够了,那可能这就是你找不到工作的原因。也看到有人刷题无数但拿不到面试。原因也很简单,刷题没有办法写进简历,你见过谁的简历里写自己怎么刷题的?还是那句话,在最短的时间里,别人只能通过你用过的framework来判断你的编程能力。
其他:关于Summary
不少简历中可以看到一个Summary section,大意就是“I am a team player with strong coding experience and good communication skills”。楼主自己的简历不写summary,同时也不推荐在简历里这样写。理由其实在上中已经说明过了。首先你的experience是不是strong不是你自己说了算的,面试官会根据你的Project做出判断并和其他candidate做出比较。不然每个人都会说自己strong experience。其次,像leadership,communication,team player这种所谓soft skills,面试官判断的依据也不是来自于简历而是来自于面试。如果简历里的hard skills过不了关没有面试,所有soft skills就都是空谈。进入面试之后,只要是情商智商正常的candidate,即使拿不到offer通常也不会是因为soft skill。
其他:关于简历格式
最近看到了一些模板诡异的简历,阅读和修改起来都很头疼,尤其是那种三七开排版的。比如左边30%写Education,skills,和一些别的;右边70写project和experience。不仔细看的话排版挺美观的,但是实际上个人感觉这种排版需要上下来回阅读,很容易distraction非常难以抓住细节,尤其是当你写的紧凑的时候。还有人会在简历里加黑加粗一些关键词,初衷可以理解,但是个人也不推荐。原因是潜意识里我会只关注加黑加粗的部分,自动忽略其他。如果我看到你加黑加粗的是Bootstrap或者jQuery这种,印象就更差了。另外一个感觉是之所以要加黑加粗,往往是以为其他部分废话太多。
===
这里不能留言,如果有任何疑问,欢迎在我的个人网站(cvmentors.com)上讨论:)