简历编写指南
简历模板下载
以下提供不同工作年限的简历模板,按需下载参考。
Agent 开发方向(应届生)
适合大模型应用开发方向的应届生参考。
Java 后端方向
| 工作年限 | 模板说明 |
|---|---|
| 应届生 | Java 八股简历模板 |
| 应届生 | 数藏项目简历模板 |
| 1 年 | 数藏项目简历模板 |
| 3 年 | Java 八股简历模板 |
| 3 年 | 数藏项目简历模板 |
| 5 年 | 通用简历模板(3套) |
| 8 年 | 架构方向简历模板 |
简历编写核心原则
简历不是项目总结、不是工作总结、更不是你的生平介绍,它的目的是体现出你的价值,体现出你和别人不一样。
关键信息务必真实
简历上的关键信息一定要实事求是,背调环节会验证,尤其是面试大厂:
- 学历:写清楚具体学历,自考的话要标注清楚
- 工作经历:时间段、公司名要正确填写
- 离职原因:如果是裁员,流水上会有补偿款记录
专业技能参考写法
以下是一份较好的专业技能描述参考:
- 熟练使用 Java 语言,理解 Java 语言特性,阅读过部分 JDK 源码
- 掌握 JVM 相关知识,如运行时区域、GC 算法、类加载机制,具备 JVM 调优经验
- 掌握并发编程相关知识,对 JMM、线程池、AQS 等有一定理解,具备并发编程经验
- 深入理解 MySQL 底层原理,包括锁机制、索引、事务、隔离级别等,具有 SQL 调优经验
- 熟练使用 Spring、Spring MVC、MyBatis、Spring Boot、Spring Cloud 等主流框架,熟悉相关原理
- 深入掌握 Redis,了解线程模型、数据结构、持久化机制、过期时间等,具有热 key、大 key、缓存穿透/击穿问题的解决经验
- 具有大型分布式开发经验,熟悉分布式事务、分布式锁等落地方案
- 熟悉分布式技术栈,如 Kafka、Nacos、ES、Zookeeper 等
- 熟悉常用设计模式,项目中使用过单例、工厂、代理、策略及模板方法等
- 熟悉 JDK 新版本特性、SpringBoot 3.0 及 Spring Framework 6.0 等新特性
专业技能注意事项
- 不要写"精通",没必要拉仇恨
- 不要写基础工具,如 IDEA、Maven、Git 等,人人都会
- 描述要准确,不要犯低级错误,比如写成"JVM 内存模型"
- 后端岗位少写前端技术栈,以及运维、容器等技术栈
- 不要只写框架名称,要展开写具体了解的内容,如 Redis 要写了解数据结构、持久化机制、淘汰策略、缓存穿透/击穿/雪崩等
- MySQL 也要展开,写事务、锁、隔离级别、优化等,否则让人觉得不用心
项目职责描述参考
好的职责描述示例:
- 负责注册模块、登录模块的整体设计,包括技术选型、模型设计、核心功能落地
- 权限功能重构,使用 SpringSecurity 实现权限认证,解决原有权限系统混乱易错、不易维护的问题
- 基于 Redis 实现分布式锁,解决短信验证码重复发放、用户重复注册等问题
- 通过热点数据预热、多级缓存、异步化编程等方式解决大促期间接口耗时长的问题,整体性能提升 30% 以上
- 采用本地消息表、可靠消息最终一致性等方案,解决不同场景下的数据一致性问题
- 慢 SQL 优化,通过索引重建、适当反范式、批量执行等方式提升 SQL 执行效率,将接口平均耗时从 1500ms 降至 70ms
- 线上问题排查,多次排查并解决了 OOM、频繁 GC、死锁等问题
项目描述原则:STAR
- Situation(情境):背景来龙去脉
- Target(目标):目标如何拆解
- Action(行动):采取了哪些行动
- Result(结果):结果与反思
简历自查清单
以下是审阅大量简历后总结的常见问题,请逐条对照自查。
基本信息
专业技能
项目描述
真实简历点评案例
以下是审阅过的简历中提出的典型问题,按年限分类整理。
应届生简历
案例 A:
- 六级 466 不算高,不要写分数
- 荣誉奖项和论文、专利可以往前提,校招生这些有用
- 设计模式最好了解一下写上去,各种工具 IDEA、Maven、Git 可以写上(应届生可以写)
- 项目描述太简单了,一两句话看不出什么。Redis 缓存要写清楚为啥用、实现了什么、优化了什么
案例 B(数藏项目):
- 学历不要写"待补充",要么写清楚学校,要么 HR 看到就直接 pass
- "引入分布式锁解决订单关闭的并发问题" -- 订单关闭不是高并发场景,乐观锁就够了,这块建议重新考虑
- 设计模式、线上问题排查等内容建议加入第一个项目
- 专业技能写了很多但项目中没体现(分布式事务、分布式锁、分布式 ID),会显得偏理论派
- 数藏项目定位做交易、订单模块的话,多看代码和文档把细节弄清楚
3-5年经验简历
案例 C:
- 工作经历倒序写
- 第一个项目职责描述太少,可以把 MQ 削峰、Redis、分库分表放进去
- 技术实现和职责描述可以合并,整体写更清晰
- 项目时间段要写,让人知道项目规模
- 岗位(初级开发、高级开发等)和项目角色(核心开发、项目负责人等)要写清楚
- 分布式锁部分可以重点准备 setnx、Redisson、watchdog、RedLock 等
案例 D:
- 22 年 6 月以后的项目经历缺失
- 项目时间都太短(三四个月),看看能不能把同一家公司的类似项目合并
- 前两个项目描述内容重合度太高,要差异化
5-8年经验简历
案例 E:
- 6 年经验技术栈有点单薄,和 3 年差不多。Redis 要单独展开写,MQ 展开写,分布式写一写
- 工作经历和项目经历建议分开写:工作经历给 HR 看(公司、时间段、岗位),项目经历给技术面试官看
- 项目技术栈太少(只有 SpringBoot + MyBatis + Redis),各种框架如 MyBatis-Plus、Guava,中间件如 Dubbo,数据库如 MySQL 都要写上
- 职责描述没有亮点:"负责项目的前期设计"、"负责 Java 部分的编码"、"负责项目的进度把控" -- 所有开发都要做的事
- 每个项目描述都这么写,看不出项目之间的区别和你的价值
案例 F(7 年经验):
- 高并发经验或架构设计经验要体现出来
- 技术栈补充限流降级熔断、设计模式、DDD 等
- 工作经历中岗位要有区分度,随着时间推移职责应更重要。title 可以适当提升
- 项目没写时间段,看不出重点和难度
- 职责、业绩、架构、亮点分了四个部分太细,反而抓不住重点。内容都不错但太分散,建议合并
- 第一个项目写得挺好,其他的参考这个改改
8年以上经验简历
案例 G(8 年经验):
- 专业技能只写了技术名词没展开,如 MQ 应该提顺序消息、消息可靠性、事务消息
- 很多工具类技术可以合并到一行简单写
- 简历 6 页太长了,很多短项目没技术含量,同一公司的同类型项目合并
- 项目描述没体现亮点,很难约面
案例 H(10 年经验):
- 字体颜色不统一,不是重点突出的意思,看着很乱
- 10 年 4 家公司每家都是"Java 工程师",title 得变一变
- 只干 1 个月的项目,要么合并要么删掉
- 很多项目都是 2-3 个月的短项目,影响简历质量,想办法合并
- 个人技能太敷衍,缺少分布式、架构设计的体现
高频改进建议汇总
职责描述没有亮点
差:"负责项目的前期设计(数据库设计、接口设计)"-- 所有开发都要做的。
差:"负责 Java 部分的编码" -- 等于没写。
好:"采用 PF4J 框架实现插件化架构,实现外部数据源的动态加载、卸载及更新,提升了系统的灵活性。"
技术描述不够具体
差:"使用 Redis 实现了 XXX,并设置有效期" -- 一句话没讲完,没说目的和解决的问题。
差:"熟悉 Redis 中间件" -- 太笼统。
好:"深入掌握 Redis,了解常见数据结构、持久化机制、淘汰策略,能解决缓存穿透、击穿、雪崩等问题。"
项目描述重合度太高
如果前两个项目的描述基本一样,面试官看了会觉得你没有成长。每个项目要突出不同的技术亮点。
简历过长
6 页简历中很多短项目没有技术含量,建议合并同一公司的同类型项目,控制在 2-3 页。
缓存/MQ 只写了"用了"
差:"使用 RocketMQ 做异步处理" -- 所有人用 MQ 都有异步处理功能,但没说解决了什么问题。
好:"引入 RocketMQ 异步处理下单后的库存扣减和积分发放,降低主链路耗时 60%,同时通过事务消息保证数据最终一致性。"
差:"使用 Redis 作为高性能缓存" -- 效果是什么?解决了什么问题?有什么特殊设计?
好:"采用缓存预热 + 二级缓存方案解决 XXX 模块热点数据查询性能问题,P99 耗时从 200ms 降至 15ms。"
空窗期处理
如果有空窗期,可以适当编一下,比如找了个海外远程的工作。如果最近一份工作时间很短(1 个月),直接把前一个项目时间拉长,内容合并。
不同年限简历侧重点
| 工作年限 | 重点突出 |
|---|---|
| 应届生 | 项目经历(可以是课程项目)、专业基础、学习能力、竞赛/论文/开源贡献 |
| 1-3 年 | 核心项目的职责和亮点、技术成长、问题解决能力 |
| 3-5 年 | 项目中的架构设计、性能优化、技术选型、线上问题排查经验 |
| 5-8 年 | 架构设计能力、团队技术管理、系统重构经验、高并发/高可用方案 |
| 8 年以上 | 技术架构视野、业务理解深度、团队管理、跨团队协作、技术规划 |
更多简历点评实录
以下是更多真实简历审阅中发现的问题和建议,涵盖不同层次的候选人。
案例 I(3年经验)
- 工作经历倒序写
- 第一个项目,职责描述可以再加一点,MQ 削峰、Redis、分库分表可以放进来
- 技术实现和职责描述没必要分开,合并在一起整体写更好
- 项目时间段可以写一下,让人知道项目规模,如果太短就算了
- 你在公司的岗位(初级开发→高级开发→技术专家→leader)和项目中的角色(核心开发、项目负责人、架构师等)写一下
- 第二个项目的分布式锁那里可以重点准备下,关于 setnx、Redisson、watchdog、RedLock 等
- 个人技能里面 paxos 谨慎写,除非真的搞得很清楚,否则没必要
案例 J(5年经验·改进建议)
- "使用 Redis 实现了 XXX,并设置有效期" -- 感觉一句话没讲完,要说清楚目的是什么,最终解决了什么问题
- "XXX 优惠券,XXX 销核" -- 没有动词,不成句子
- "XXX 功能;接口对接、XX 平台 XX 发送" -- 可以提炼成一句话,说明白负责了哪些模块,然后逐条写用了什么技术、做了什么功能、解决了什么问题
- 最近一份工作的岗位"开发工程师"改成:高级开发工程师
- 第一个项目写的挺好,后面几个明显没有第一个用心
案例 K(5年经验·结构问题)
- 三段工作经验都是"Java 开发工程师",得有进步,怎么也得变成高级开发了
- 熟练使用 Maven、Git 别写了,工作 5 年了这是必须的
- Java 8 新特性也没必要了,要写就写新版本的
- 项目描述中"开发环境"和"技术栈"合并到一起就行了
- 项目概述太长,职责描述没有亮点,只能看出做了"开发+支持+运维+升级",但凡是个开发都这么干
- 项目时间段最好体现一下
- 参考简历模板改改
案例 L(项目内容优化)
教育经历如果不是科班,专业先别写了,别人问再说。
如果最近在找工作,只做了 1 个月的项目就不要写了,直接把前一个项目时间拉长,两个项目的技术内容揉到一起。
项目亮点还是不太够。比如:"XXX 模块热点数据预热,采用 Redis 缓存提供高性能的 C 端接口",完全可以改成"采用缓存预热、二级缓存等方案解决 XXX 模块的热点数据问题"。
定时任务类的功能(XXX 定时发放、XX 定时关闭),要写具体方案 -- 到底是扫表、延迟消息、还是其他方案。
"使用 RocketMQ 做异步处理" -- 所有人用 MQ 都有异步处理功能,你要解决什么问题?提升性能?保证最终一致?解耦?要展开写。
"使用 Redis 作为高性能缓存,在 XXX 页,查询 XXX 内容" -- 效果是什么?解决了什么问题?缓存做了什么特殊设计?用了什么特别的数据结构?
医疗项目太长了,项目简介精简一下,核心技术和相关解决方案、主要贡献融合在一起改成责任描述。"项目运营与部署环境"不要写了,删掉。
案例 M(8年经验·严重问题)
- "目前状况:已离职" -- 不用写,写了让人拿捏
- "熟练掌握 Eclipse、IntelliJ IDEA、Tomcat、Maven、SVN、Git 等工具,以及 PowerDesigner 建模工具" -- 工作 8 年了属于基本能力,就算写也不要放第二条
- "熟练掌握关系型数据库 MySQL 和非关系型数据库 Redis 以及 MongoDB" -- 8 年不仅是熟练掌握,得了解原理。展开说具体了解哪些,如 MySQL 的索引、锁、事务等
- 专业技能缺少分布式经验,不仅是会用工具,还要有分布式事务、分布式锁、分库分表、限流降级等问题解决手段
- 自我评价放到最后,不要放前面
- 项目的职责描述太简单,只写了负责什么模块,没有亮点
案例 N(空窗期处理)
- 空窗期能不能编一下,比如说找了个海外远程的工作
- 简历上没写毕业时间,要么最前面把工作年限写一下,让 HR 直观能看到
- 项目写一下时间段
- xxx 是个什么项目,贴了个开源地址但不清楚是你做的还是参与了还是什么。如果是有开源贡献是加分项,写清楚一点
- 项目描述内容少没有亮点,需要再挖掘。不行就把学会的八股文往里面套,内容略显单薄
专业技能写法对照表
不同技术方向的展开写法参考,不要只写一个框架名称:
Java 基础
| 差 | 好 |
|---|---|
| 熟悉 Java | 熟练使用 Java 语言,理解集合框架底层原理,阅读过 HashMap、ConcurrentHashMap 等源码 |
| 了解多线程 | 掌握并发编程,熟悉 JMM、线程池、AQS、CAS 等原理,有并发场景下的问题排查经验 |
| 了解 JVM | 掌握 JVM 运行时区域、GC 算法、类加载机制,有 JVM 调优经验(内存溢出排查、GC 参数调优等) |
数据库
| 差 | 好 |
|---|---|
| 熟悉 MySQL | 深入理解 MySQL 底层原理,熟悉 B+ 树索引结构、事务隔离级别、MVCC、锁机制,有慢 SQL 优化经验 |
| 了解 Redis | 深入掌握 Redis,了解五种数据结构、持久化机制(RDB/AOF)、淘汰策略,有热 key、大 key、缓存穿透/击穿/雪崩问题的解决经验 |
中间件
| 差 | 好 |
|---|---|
| 了解 MQ | 熟悉 RocketMQ/Kafka,了解消息可靠性保证、顺序消息、事务消息等机制,有消息积压排查经验 |
| 了解分布式 | 具有大型分布式开发经验,熟悉分布式事务(本地消息表/Seata)、分布式锁(Redisson)、分库分表等落地方案 |
框架
| 差 | 好 |
|---|---|
| 熟悉 Spring | 熟练使用 Spring Boot/Spring Cloud 微服务技术栈,理解 IOC、AOP 核心原理,阅读过 Bean 生命周期、事务管理相关源码 |
| 了解设计模式 | 熟悉常用设计模式,项目中使用过策略模式解耦业务分支、模板方法统一流程、观察者模式实现事件驱动 |
简历排版注意事项
- 格式用 PDF:WORD 在不同电脑上可能格式错乱
- 页数控制:应届生 1 页,1-5 年 1-2 页,5 年以上 2-3 页
- 字体统一:不要出现多种字体、多种颜色
- 排版整洁:使用一致的缩进、行间距、项目符号
- 关键信息突出:公司名、项目名、岗位可以加粗
- 不要留空:如果某项信息不写就删掉标题,不要留"待补充"
- 照片可选:如果放照片要用正式的证件照或职业照
常见误区总结
| 误区 | 正确做法 |
|---|---|
| 写"精通 XXX" | 用"熟练掌握"或"深入理解" |
| 把所有项目都列出来 | 只保留最有代表性的 2-3 个项目 |
| 职责只写"负责 XX 模块" | 用 STAR 原则展开写技术方案和成果 |
| 技术栈只写名称不展开 | 每个核心技术写 2-3 个知识点 |
| 每家公司岗位名称一样 | 随着经验增长 title 要提升 |
| 自我评价写"踏实认真" | 用具体事例证明而不是空洞的形容词 |
| 简历过长(5-6 页) | 合并短项目,精简内容,控制页数 |