程序员如何写一份更好的简历

本文章由 ResumeJob 撰写,ResumeJob 能帮助你审视简历,模拟面试,重新规划你的职业生涯。 我们团队在国内外公司面试过数百名的工程师,浏览过千份简历,志在帮助程序员找到合适自己的工作,如果你想知道简历哪里出现问题或者想在面试前进行模拟面试的话,欢迎联系我们,了解…

本文章由 ResumeJob 撰写,ResumeJob 能帮助你审视简历,模拟面试,重新规划你的职业生涯。 我们团队在国内外公司面试过数百名的工程师,浏览过千份简历,志在帮助程序员找到合适自己的工作,如果你想知道简历哪里出现问题或者想在面试前进行模拟面试的话,欢迎联系我们,了解更多细节欢迎浏览 resumejob.github.io 。

求职系列文章:

  • 程序员如何写一份更好的简历
  • 程序员如何准备技术面试
  • 程序员国外求职指南
  • 系统设计面试 101
  • 程序员面试推荐书籍

概述

面试前要准备的第一件事就是写简历,从零开始写简历是一件痛苦的事,因为它既重要又耗时。现在就有求职者在电脑前急躁不安地搜索简历模版和参考例句,却不知道如何下笔。写得太短的话觉得没诚意,写得太长的话又无从下手。关键的是大多数求职者没有做面试官的经验,也没有阅读过其他求职者的简历,所以无法从他人身上学习到如何改进自己的简历。有的求职者写完简历后连自己都不忍心看,错别字连篇,排版混乱就投出去,导致没有面试的机会。加上程序员工资中位数较高,有大量人才从其他专业转来,竞争非常激烈,所以如何从众多简历中脱颖而出,赢得面试的机会就非常重要了。 这篇文章会分享我们的经验,解答简历的两个常见问题。

  • 简历中的常见错误
  • 简历应该怎么写

简历中的常见错误

1. 信息过多,缺乏重点

常见表现是十几行的技能列表, 我举一个血淋淋的例子:

程序员如何写一份更好的简历

没错,这就是我收到的一份简历的开头,20行 的熟悉掌握。这位求职者开始就把自己接触过的所有工具都列出来,希望通过长长的技能列表突显自己的经验和学习能力,但是却适得其反,因为大部分人遇到大段文字都会选择跳读,**不信你回头看看,第3行 和 14行 其实是一样的。(我稍微修改了原本的简历),**HR 只有从简介或者基本介绍中觉得求职者初步符合资格了,才会认真把简历看下去,其余情况都是快速搜索关键字。**例如要招前端工程师,HR会先搜索 Vue,React,jQuery 等前端框架的关键字,如果看了 10秒 都没找到的话,就会看下一份。所以越简洁清晰的简历,HR 反而越有可能认真看。**这里有个小技巧,投简历不要扎堆在周末或者周一投,而应该在平日投。周一是最多简历需要处理的时候,HR 花费在每份简历上的时间会相应变少,同时,HR 会倾向于把同一天的求职者当成竞争对手,从中挑选合适的再进行通知。

长清单的另外一个问题是,当 HR 扫到里面有几行是一些非常基础的技能时,可能会开始质疑求职者的技术能力。想象下,终于到周末休息了,你想找部轻松的电影看看,上网搜索到一个 20大 最佳喜剧电影榜单。当你快速浏览的时候,如果发现好几项都看过,而且一点都不好笑,这个情况下,你就会开始怀疑这个喜剧电影排行榜有问题,不会继续看下去,HR 看技能列表也是一样的,清单越长,疑虑以及问题可能也越多。 **那么技能列表应该这么写呢?因为 HR 可能是工程师,也可能是非技术员工,所以技能列表也应该简短而排版清晰,让外行人也能快速定位技能。**我建议参考这种方式(按熟练度降序,但不要强调熟练度):

后端框架:Django, Flask, Scrapy

前端框架:Vue, React, jQuery

数据库:Redis, MySQL

其他:Docker, Jenkins, Git

外语:大学英语六级,能流畅阅读英文文档

就是如此简短,让 HR 能快速定位到求职者的技能,做出是否看下去的判断。另外这个技能列表应该放在简介之后,我们之后会介绍。

2. 无意义描述

第二个常见错误就是叙述项目经验的时候进行无意义的描述:

XXX平台

根据项目任务要求完成爬虫模块,前端展示模块,完成数据整理与入库功能。

HR无法从这样的描述中得到有效的信息,也无法判断求职者的技术能力。需要根据

  • 什么事情: 构建 IP 代理池,优化爬虫策略和防屏蔽规则
  • 使用什么工具: 使用 Scrapy 开发异步爬虫系统
  • 结果怎么样: 提升 200% 网页抓取速度

三个点来修改,最好加上数据来证明。

XXX平台

构建IP代理池,使用 Scrapy 开发异步爬虫系统,优化爬虫策略和防屏蔽规则,提升 200% 网页抓取速度。

使用 Vue 框架完成后台管理系统,实现自定义分页,第三方登录等 6个 主要功能。

负责数据的清洗与存储到 MySQL 数据库,使用数据库索引减少 50% 数据查询时间。

我理解大部分求职者并没有面试官的经验,没看过多少人的简历,连回忆项目就已经很难了,更不用说详细地写出来。所以我们准备了一些简历上能用到的,关于简介/工作经历/项目经验的例句在这里,大家可以根据自己的实际情况来修改。

  1. 有良好的代码风格,通过添加注释提高代码可读性,注重代码质量,研读多个开源项目,学习改善代码的健壮性与扩展性。
  2. 有良好的代码编写习惯,具有良好的沟通、协作能力能力,有良好的职业道德和较强的工作责任感。
  3. 理解操作系统中进程、线程、死锁、虚拟化、文件系统等原理和简单实现。
  4. 大型互联网分布式系统的架构设计和开发经验,拥抱新技术,有很强的学习能力。
  5. 有扎实的计算机理论基础,良好的算法与数据结构基础,了解计算机基本原理与常见机制。 …

如果你写完不知道写得如何,也可以请求我们帮忙 Review 简历或模拟面试。重要的是,从现在开始统计,养成先测量再优化的开发习惯。而且尝试去发掘性能瓶颈,就算没有统计过查询时间,也可以展示 CPU 或者内存负载数据,最起码也要像第二条一样阐述完成了哪些主要功能。

3. 排版杂乱,错别字多

简历三的错别字绝对是零容忍,连自己的简历都不重视,HR 更不会重视。这里放上两个喜闻乐见的例子:

熟悉iOS发布上架流程,真机调戏

熟悉 mysql 数据库,了解 MySQL 基本原理(术语前后不符)

还有的简历字体极小(因为内容太多,又要塞在两页中),行距小,难以阅读。中英文之间空格混用,模块之间没有明显的分隔,让 HR 找不到想要的信息。而且有些招聘网站并不能完全正确渲染 PDF 文件。(例如拉勾网,遇到 PDF 文件翻页就会有大片空白出现。),我找了两个真实的例子放在下面,有的求职者很奇怪为什么海投那么多公司都没有回应,你说这样的简历怎么看。

wrong2

**写完简历之后一定要自己仔细检查,再请一位朋友看一遍,请求中肯的建议。**在排版上我建议大家用 HTML 写然后转成 PDF,HTML 比 Markdown 和 Word 更好进行样式与版本控制。有兴趣的读者可以使用我们的免费 HTML 模版和付费 HTML 模版(均通过热门招聘网站测试),确保自己的求职简历能更好呈现在 HR 面前。

all_tem

如何写一份更好的简历

**一份简历总体可以分为 6个 模块:顺序依次是基本信息,个人简介,技能列表,工作经历,项目经验,教育情况,其他。**这个顺序能让HR从浅到深快速了解求职者的优势与技能。学校信息如果是重点学校或者是参加校招的萌新工程师,可以放在基本信息之后。

基本信息 工作经历 项目经验 教育情况 其他
姓名 公司名称 项目名称 学校名称 兴趣爱好
邮箱 岗位 项目介绍 专业 志愿者工作
电话 主要职责 主要职责 就读年份
Github/博客 在职时间 项目时间 获奖情况
个人简介 项目经验
技能列表

基本信息

姓名/电话

如实填写即可,要注意的是,投简历之前,可以先在这里查询该公司是否合法注册。有些猎头或者培训公司会随便起一个公司名字,专门接受简历然后再联系求职者推销,不小心投递了就出卖隐私了。

邮箱

写常用邮箱即可,论坛上,偶尔会讨论使用什么尾缀的邮箱看起来比较厉害,有的建议用 gmail,觉得能突显英语能力。有的建议使用 Outlook 或者 163,在国内能比较稳定地接受邮件。也有鄙视 qq 邮箱的,觉得太私人而显得不专业。我无法代表所有 HR 给出意见,某些 HR 确实会因为邮箱尾缀而对求职者的初步印象产生影响。不过,**只有在求职者的简历没有亮眼点,结构混乱的前提下,HR 才会因为这些小细节而筛掉他们。**只要求职者在简历中展现出自己的优点,什么邮箱尾缀都不重要。

Github/博客

放上 Github 或者博客链接的前提是它能突显求职者的编程能力,如果 Github 既没贡献过开源项目,一年就 commit 了几次的话就不要放进去了。技术博客写得多的话可以放上去,有些职位要求里面也会提到这些加分项。

求职意向

这个细节很多求职者会忽略,一名 HR 可能会接受不同职位的简历,如果简历上没有注明应聘的职位,HR 也就不知道怎么去判断求职者合不合适了,最简单的方法,直接看下一份简历。所以求职意向必须说清楚自己的目标职位,例如前端工程师,爬虫工程师

其他信息

其他信息包括政治面貌,性别,年龄,照片等。如果要投国企或者事业单位,党员的政治面貌可能有帮助,至于其他加不加没什么太大关系。合起来,基本信息部分可以像这样写:

杨勇

邮箱: contact@osjobs.net / 电话: 133-5555-6666

Github: github.com/abc / 求职意向: 爬虫工程师

简介

简介非常重要,也是HR开始了解求职者的第一步。一开始不知道从何下笔的时候,可以根据目标职位的职位要求来参考,而且当看到几个目标职位都要求熟悉多线程编程而自己不太了解的时候,就是非常好的补习机会了,这个面试绝对考啊。这里我们假设求职者喜欢的一家公司的岗位描述与要求如下:

Python爬虫工程师

岗位描述:

  1. 负责爬虫系统架构设计和开发;
  2. 参与设计系统技术方案,核心代码开发和系统调优;
  3. 参与各专项技术调研,新技术引入等;

岗位要求:

  1. 2年 或以上 Python 开发经验,本科及以上学历,计算机相关专业;
  2. 热爱计算机科学和互联网技术,精通 Python 语言,熟悉正则表达式,熟悉 MySQL 数据库;
  3. 熟悉 Python 网络编程,能够设计和维护基于 TCP/IP 协议的高性能事件驱动框架程序;
  4. 有强烈的求知欲,优秀的学习和沟通能力;

先分析下这个岗位的要求,需要开发爬虫系统,有Python开发能力,对网络协议有了解。抓住这几点之后,我们就可以针对这个岗位写简介:

两年 Python 后端开发经验,熟悉 Scrapy 框架,作为主力工程师参与设计与开发过多个项目,负责系统核心模块的开发,自动化测试与部署。熟悉 HTTP 协议、TCP/IP 协议,了解正则表达式,XPATH的用法,了解 Redis,MySQL 数据库与 Linux 系统的常见机制与原理。有优秀的学习能力和团队沟通能力,经常与团队进行技术分享,能与团队共同成长。

**简介/工作经历/项目经验中的关键字应该加粗。**这里的第一条首先突出个人的开发经验,简单介绍之前主要工作职责(有爬虫开发,自动化测试与部署经验)。第二条展现自己的符合岗位要求的专业知识与技能列表,第三条列出软技能,以与团队进行技术分享为例子,突显出团队合作的能力。

如果是非科班或者萌新工程师的话可以尽量从个人项目,学习能力以及软技能突显自己的能力。

两年独立开发 Web 项目经验,了解项目开发流程及自动化部署,设计以及开发了 Todo-list,博客等项目,实现了浏览,评论,点赞等功能。熟悉 HTTP 协议、TCP/IP 协议,了解 Redis,MySQL 数据库与 Linux 系统的常见机制与原理。热衷学习计算机技术,自学了计算机系统,数据结构等多个计算机课程。

**非科班工程师要与科班工程师竞争,最好自己有做过岗位类似的项目。**优质的个人项目也是加分项。博客,爬虫,Todo-list 这些实在太常见了,我不是说它缺少技术含量(可以看看 Python 作者 Guido van Rossum 写的爬虫),只是太多求职者都只完成非常简单的功能,没有深究原理。如果能完成一些与众不同的项目的话,那么就能吸引到HR的眼球了,500lines 里面就有很多有趣的项目。如果觉得跟不上,可以跟着几个 MOOC 课程学习,里面也有实现一些有趣的项目,例如浏览器,搜索引擎和社交网络,看起来难,但是它都会有一步步的说明与示例代码。我相信大部分开发者都能从中学习到很多。试想下,如果上面的简介改为:

两年 Python 后端开发经验,了解 Scrapy 爬虫框架,设计开发了简单的浏览器,实现语法解析,编译功能。开发了一个搜索引擎和社交网络,实现了搜索,关注功能。熟悉 HTTP 协议、TCP/IP 协议,正则表达式,XPATH 的用法,了解 MySQL 数据库 与 Linux 系统的常见机制与原理。热衷学习计算机技术,自学了计算机系统,数据结构等多个计算机课程。

是不是非常不一样了,HR也会愿意给机会这样特别的求职者。写简历的过程其实也是自我反省的过程,从中你能知道自己哪里不足,及时地弥补与学习,才能得到好的 offer。

有些工程师会有一些误区,他们觉得如果循规蹈矩地写简历,只会吸引到传统的,无聊的公司。我遇过不少简介写热爱自由,热爱生活,我想大多数人都喜欢自由,单纯写热爱自由并不能展现出真正的热爱,在计算机领域最好证明的方法就是使用自由软件与贡献开源项目。

恭喜你,第一步的简介完成了。你抓住了 HR 的眼球,接下来的话就是要展现自己的能力。

happy

技能列表

像我在常见错误所指出,HR会直接在简历中搜索关键字,如果没有的话就会直接筛掉。所以技能列表可以按照类型把自己最擅长的工具列上去,熟悉度因为见仁见智,所以不用写,或者用进度条表示就好:

后端框架:Django, Flask, Scrapy

前端框架:Vue, React, jQuery

数据库:Redis, MySQL

其他:Docker, Jenkins, Git

外语:大学英语六级,能流畅阅读英文文档

工作经历

如果这份简历就是用来找实习的话,这个模块可以跳过。一个要注意的点是工作经历的完整性,我有一次去腾讯面试的时候(我常常去面试,参考如何准备技术面试),他们问我为什么没有把完整的工作经历写上去,因为他们要求从毕业到现在的时间不能出现空白期。我回答说一方面是保持简历的简短,另外一方面是最近的工作经历与这个岗位比较有关。不过这也是我仅有的一次被要求填写完整的工作经历,所以我的建议是简历上最好写上最近 2-3 间公司的工作经历,而且面试问到之前的工作的话要能正确地回答,并且连接所有时间点,不要让面试官觉得你在隐瞒什么。工作经历应按照最近的工作倒序列出,可以分为四点:

公司名称

写上公司全称即可,如果产品比较出名的话,可以把产品名写上:

独角科技有限公司(旗下产品 EngineGo, Thankyou-opensource)

岗位/在职时间

岗位 title 要注意,如果投的岗位是数据分析工程师,那么爬虫工程师与数据挖掘工程师对 HR 来说就不一样了,高级工程师的话也要加上去。另外在职时间要根据社保缴纳的时间写,有些厂会做背景调查的。

独角科技有限公司(旗下产品 EngineGo, Thankyou-opensource)

2014年6月-2016年6月 | 高级 Python 开发工程师

主要职责

主要职责突显的是在职的职责以及给公司带来什么效益,与接下来的项目经验不同,不需要详细写技术栈和项目细节,只需要大致阐述即可,这里举一个我们例句中的一个例子:

  1. 作为组长负责设计和开发分布式网络爬虫系统,优化爬虫策略和防屏蔽规则,提升网页抓取的效率和质量。
  2. 根据行业需求分析设计方案可行性,对项目代码进行测试优化,协助持续集成与自动化部署,提高系统可用性。
  3. 负责公司技术文档的编写以及维护,定期 review 团队的代码,与团队共同学习以及成长。

项目经验

项目经验可以放在对应的工作经历里,每间公司选 1-2个 项目重点介绍即可。**需要详细描述主要开发或者维护的模块,使用了什么工具,以及达成的效果如何,这里以 EngineGo 爬虫系统为例,注意简洁和突出数据,不要进行无意义描述,**同时关键字应该加粗。

  1. 与产品经理保持沟通,使用 Scrapy 框架对爬虫模块进行重构,提高 200% 爬虫速度并减少服务器 20% CPU负载。改进爬虫策略,降低 40% 被屏蔽的请求数。
  2. 作为主要工程师设计以及开发物业模块,活动模块,实现报名,即时通知等 10个 功能。
  3. 使用Redis数据库实现分布式爬虫与数据缓存,减少 50% 数据查询时间。
  4. 与其他工程师合作,使用 Docker 对项目进行拆分重新架构, 减少业务模块之间的资源耦合, 实现持续集成与自动化部署。

大部分情况下,不建议简历中出现项目的图片,更好的做法是附上项目链接。

教育情况

学校大家都会写,要注意的有几点,如果就读 211 / 985 等学校可以把学校放在前面,简介之后。另外,我碰到不少转专业的求职者直接不写原本的专业了,我觉得这毫无必要。HR 也不是傻的,看没写专业就知道是非科班的,还不如老老实实写下来。我认识腾讯的开发本科读的还是心理学。高绩点 / 专业课分数高 / 奖学金 / 比赛获奖可以选重要的加上:

XXX大学 | 计算机科学

2013年- 2017年

计算机系统(85分/专业排名18/100),数据结构(90分/专业排名10/100)

绩点:3.7 | 获得一次国家励志奖学金

2015-2016学年获得美国大学生数学建模竞赛一等奖

2013-2014学年获得广东省“砺剑杯”科技创新大赛二等奖

好吧,如果我的学校非常一般,专业也不对口怎么办。我们参考这篇文章的统计,HR看重求职者简历的哪些部分,来自好学校,好公司这不用说,完成 Udacity / Coursera 等课程也有加分。求职者可以像这样展示自己的教育情况。

XXX大学 | 土木工程

2013年- 2017年

Udacity | 机器学习工程师 / Coursera | 计算机导论/操作系统

2016年- 2017年

我不敢说在国内的环境,这一定能加很多分,毕竟大多数公司看重的还是大学的学历。不过,一些比较开放的公司还是喜欢这样不断学习的员工。加上去,起码不会扣分。

其他(可选)

可选项,也有可能成为加分项,国内比较少看重这点,不过我个人还是比较注重的:

志愿者工作

协助组织翻译 Flask,Requests 第一版本文档,翻译十多篇技术文章(侧面突出了外语能力比较好)。

教导初中生从零开始学习 Python,并设计并编写自己的游戏。

Github 上的开源项目 Cherry 获得 200个Star。

兴趣爱好

计算机相关或突显动手能力的兴趣可以列上去,如果是唱歌,旅游这些的话就不用放上去了。

综合起来

综合上面的几点,一份好的简历看起来应该是这样的,模版来自这里:

third

总结

只要认真去修改简历,HR 是能感受到的,也能从众多求职者中脱颖而出,得到更多机会。有时候机会往往就在于用不用心争取上面。我希望各位看了这篇文章后能写出更好的简历,获取更多的机会。(这篇文章讲述的简历技巧面向的是国内的公司,如果投向外企的话,不是直接翻译那么简单,有兴趣了解的读者可以参考 Programmer Resume,里面提供了不少有用的资讯。)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/8864.html

(0)
上一篇 2023年 4月 21日 下午10:21
下一篇 2023年 4月 21日 下午10:21

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信