针对CS简历书写,我们以学员真实呈现在简历上的项目为例,主要讲解以下两点:

  1. 项目书写原则与框架

  2. 项目顺序如何体现

每个项目都有自己的闪光点,由于我们要讲解很多例子,所以只分析缺点,不说优点,这不代表没有优点。

案例一

 

 

首先看Title,叫做Java Project for Car Selling System,但是第一行就写设计了UI。有基础的同学一定知道,UI一定不是用Java写的。那么,你的重点就一定在后面的部分。这会让面试官认为应聘者搞不清楚主次。而且第一句话没有什么细节,应该展示出技术上都做了什么,带来了什么挑战。

第二点,写代码这个词用“Wrote”比较少。后面写了“Searching special prices for specific cars”这一句用的词非常不明确:什么叫“special prices”?是因为车子在做Promotion所以才叫“special prices”吗?还是说这实际上有一个机器学习的算法,能帮你搜索到一个特别好的Deal的车?那这实现的就是完全不同的两种功能。如果你不说清楚,就会让面试官有第二种的期待,觉得你是一个Machine Learning的大牛,结果发现只是每辆车上有一个属性,比如说叫“Unsale”,我能实现的只是查找,那这个Hiring Manager就可能会感到小小的失望。你不如就描述得很明确,让Hiring Manager有一个正确的预估。

接下来也是一样的,“showing similar cars by using JAVA”,往特别难了想,就是你用机器学习算法把车的图片进行比对,找出最相似的车?还是其实只是车的名字一样就叫做similar car?这些细节一定要说清楚,否则你的面试里会花费大量的时间跟面试官纠结你到底干了什么,没有时间去体现你是如何面临一个问题、解决一个问题,是如何好学、学习能力特别强。所以,一定不要用这么模糊的词汇。

第三点,用词不正确。“Checked all the functions”在我的理解里就是Functionality Test,那么你就应该用Test这个词,因为所有的程序员都用Test而不是Check。“Added more useful functions”这句话的问题很大。你在这里说“more useful”是在暗示你上面亮点里的工作内容不够Useful吗?所以这句话肯定是减分的,你不如说我具体Add了什么样的功能。

通篇来说,问题就是太多Marketing词汇。假设你自己做了一个系统, 你可以展示给顾客看:我可以展示不同种类的车, 能search special prices,能显示similar car,这么多有用的功能,赶紧Sign up来用我们的系统吧。这样措辞是可以吸引到你的用户的,但是吸引不到Hiring Manager。因为在Description里根本没能看到你做了什么,解决了什么技术问题。希望同学们在写的时候一定要说清楚自己实现了哪些Feature,甚至说明当时解决了哪些困难。

总结一下这个例子的问题:第一行描述与Title 不符;动词、技术词汇用词不专业、模糊定义;多Marketing词汇。

案例二

 

 

这两个例子都是来自于同一个同学的简历,在一份简历上,你的风格应该consistent。上一个的Title是一个名词,但是一个例子的Title是个动词/动宾短语:“Design Database for Microsoft”。你可以改成“Design of the database for Microsoft”,就编程名词了。下一个问题,“for Microsoft”,这就缺失了很多的信息。第一个问题:你为什么要选Microsoft?第二:Microsoft的谁?你是给Microsoft的员工Design了一个数据库,还是给客户Design?Microsoft的客户到底是Windows的User?还是Microsoft Excel/Word的User?还是云平台的User?你完全没有说到底给Microsoft干了什么,这个数据库是用来干什么的?另外,“Graduation Project”就别说了,说了以后肯定不加分。

“Analyzed the concept of project”这件事情难道不是应该在每一个项目都做吗?如果是的话,你为什么专门在这里说呢?那你就应该在每个项目里都说这句话。如果不说,那是不是意味着你之前的项目都没有Analyze呢?所以,这句话不是很有用。

第二点,“Populated it by using MySQL”。第一,不要用“it”,这是一个独立的点,推荐改为“Populated the data…”。第二,这句话明明就是连着第一点的,那你为什么要把它放在第二点?

第三点,“Checked the system by querying many specific demands”。Check的问题我就不说了,之前讲过。这件事情应该是你每写几行代码就要试一试的,既不是Unit test,又不是System test,这只是写了几行代码以后验证一下work不work。所以这一点可写可不写。如果内容实在太少了,可以写。但是后面“made the modifications to the database”,这个问题跟之前的差不多,你没有讲清楚做了什么Modification。

总结一下,这里有三个问题:Title 模糊,公司定义不清楚;出现学校字眼,降低水平;技术不达标,未出现关键词。

案例三

 

 

实际上,这个案例跟刚才的非常类似,第一个是叫做Java Project for Car Selling System,这个叫做Website Design and Development for Guitar Sales。我的理解是:你写了两个网站,一个卖车、一个卖吉他,那么又出现了Consistency的问题,这就侧面说明了你不Organized,程序员是要非常Organized的。

第一个点:“Analyzed the demand of website and wrote the protetypes”,这是所有项目都要做的事情,这就不用写了。另外,不要提“Prototype”,这不是给自己减分吗?所有的项目都要先写Prototype然后再Product,这是学校的项目,明显就没有Push to Production,那你提这个Prototype干什么?

第二个点,“Designed all the pages”里的pages都能干什么完全没有说。

最后一点,“Used JAVA to analyze”,第一,到底用JAVA是怎么写的Back-end server?要更明确一点。第二,这句话其实是非常有歧义的,如果我不知道JAVA是什么的话,可能会觉得JAVA是一个Analyze Tool,意识不到其实是编程语言。另外,没有任何功能性的描述,我不知道你做了哪些事,解决了什么问题。我唯一知道的,就是你用了HTML和JAVA。

案例四

 

 

第一,用“Devised”这个词很奇怪,此外,这句的语法是有问题的。

第二,有些同学用了所谓的Agile Development,这个东西一点都不加分。因为这是一饿非常虚的,跟Engineer无关的东西。看你简历的不是Project Manager,只会是Hiring Manager,他关注的只会是技术。第一点要写项目基本情况,第二点就应该说该项目最露脸的技术,你在这里提Agile的话,我会感觉很失望。

第三,“Reviewed similar systems to brainstorm the ideas”这再一次是一个每一个项目都应该做的事。

第四,“Devised”又出现了一次。“Through debugged system”这就很奇怪了,首先你应该说你测试了这个系统,“Debug”这件事并不会测试你的系统。Bug是发生在你的测试之后,有Bug你才回去debug。如果你这么写,我就会认为你根本就没有debug过,否则你就不会认为debug是一个功能。

案例五

 

 

最后这就是一个好很多的简历。这份简历Highlight重要的技术名词,但是你解决的技术难点是缺失的,建议加上。

 

 

上图里标红的词语建议大家不要在简历里用,这都是一些非常Higher-Level或者太General的。

总结:书写简历的要点和注意事项

项目书写原则与框架

  • 项目名字突出项目内容,显而易见,容易阅读

  • 3-4个Bullet Points足以,描述重点而不是长篇大论

  • 从一个Developer的角度出发书写而非用户角度

简历动词措辞

以下是简历中常见的低级词汇和高级词汇:

动词低级词汇:

  • Learn/Participate/Assist/Observe/Work/Edit

动词高级词汇:

  • Address/Lead/Conduct/Improve/Increase/Reduce/Develop/Analyze/Design/Initiate

一旦HR发现你在简历中用到的低级词汇较多,那他就会知道你在项目/工作经验里没有做什么了。比如说,“Assist”就说明你自己作为一个Developer在实际过程中就没有做开发。如果你说你通过做Research Learn了什么东西,这也侧面说明了你只是学习了,而没有实际做开发。你要尽量使用高级词汇,避免低级词汇。

项目书写框架

那么,在每个Bullet Point里,应该写成什么样?框架是什么呢?

第一个Bullet point:你要表达清楚你做了什么项目,但是你一定体现出在技术上Handle了哪些问题和哪些Feature,最好能有Performance,解释你达到了什么效果(比如:Handle了几万的用户);

第二个Bullet point:着重表述你的技术栈,要体现出你解决了哪些问题。你可以总括性地展示你做了哪些东西,实现了哪些重要功能;

第三个Bullet point:单点问题,你最厉害的东西。绝大多数情况下,都是优化,并且有数据支撑。比方说提高了/降低了/减少了多少东西。如果你在项目中有很多亮眼的的东西,可以有第四点。

项目顺序如何把控

项目的顺序是非常重要的,可能HR没有在简历里看到重要的项目,在8秒之内你就会被Pass。

第一,看JD的时候,你能发现里面有重要的技术内容,如果这些技术内容存在在你的某个技术中,这个项目一定要放在最显眼的位置。

第二点,投的项目的职能方向要吻合,如果你投了一个Web Developer或者Full Stack Developer,那么Web Application的项目一定是要往前排的。

第三,其他细节。比如项目时间是按照最近的时间排列的,但是如果你不写时间的话,就可以按照项目重要性或者技术栈的新旧来排。