1、简历准备
1、为什么有人是“面渣”,有人是“面霸”
1、“面霸”&“面渣”
有的人,面试 30 家都没有 offer,有的人,面试 3 家能拿到 3 个 offer。为什么会有如此大的区别呢?
上述都是根据简历部分来看哈,防止
面试是一个系统工程 – 需要你精心的准备

基本上由以下三个部分组成:
- 程序员(码农)- 技术是你最粗的那条腿; 占比 51%
- 程序员(码农)- 非技术方面,占比 48%,亦不可忽略
- 颜值???
2、最佳简历十要素
简历就是一眼能看到你完整风景的那幅画;还有的人说简历就是一种个人的广告,是自我推销的工具
其实都正确哈,的确,一份好的简历能给人干净清爽的感觉,一目了然的找到想要的东西,而不是找半天也没看出来什么名堂
因此简历最重要的几点,一定要突出出来
- 你是谁?
- 你会什么?
- 你能干什么?
如果你的简历花俏,毫无重点,HR 根本不知道你想干啥,能干啥,那活该你就只能被抛弃…
十要素
- 基本信息
- 求职意向
- 专业技能 ***
- 教育背景
- 工作(实习)经历
- 项目经验 ****
- 语言技能
- 特殊成绩(获奖)
- 自我评价
- 其他
3、个人基本要素
个人信息的合理写法 – 姓名和联系方式,参考名片的设计
谢建国 1399-999-9999
(8610) 1234-5678
xiejl0282@xxxx.com.cn个人信息主要的目的是让 HR 拿到简历时,知道这份简历属于谁;怎样可以联系到该求职者。因此个人信息最重要的内容上是:
姓名
联系方式
手机固话电子邮箱
性别
出生年月(年龄)
籍贯
政治面貌
假如应聘的是非国有企业,那么建议政治面貌,可免则免
合理写法
求职意向
教育背景
工作经验
获得奖项
学历和专业(强调优势)
项目经验年限(可突出)
语言能力和其他
4、基本技能(你会什么?)
所谓专业技能,就是指你在你的专业领域所具 备的能力,是个人简历中最重要的一项。有人会说 专业技能还不好填吗,学的什么就填什么呗,话虽 如此,但是填写的时候也有需要注意的地方,用人 单位是否会给你发面试邀请,就看你的专业技能能 够吸引他。那么简历的专业技能到底怎么写才会受到用人单位的亲睐呢?
这块就很重要,主要是一眼能看出你会什么,是不是公司招人刚好的点,会一眼看到你写在上面的关键词,对于你自己学习多的技术,也都可写在上面, 俗话说:“你不能没有,但我可以不用”,对吧,技能在多在于精通。
注意事项:
- 注意用词,不要写“会 xx 技术”、“会用 xx 技术框架”等词
- 千万别把不懂的、含糊的写上去,被问上却答不出,很可能就是让你回去等通知了
- 实事求是,但可以适当包装自己
案例一
- 具有扎实的 Java 语言编程基础 , 能够利用 Java 进行面向对象设计和开发
- 熟悉掌握 Spring、 Spring MVC、 Mybatis、 MyBatis-plus、 Spring Boot、 Spring Cloud 等主流框架
- 熟练使用 SpringCloud 微服务开发的各种组件 (Nacos、 Ribbon、 Feign、 Sentinel、 Gateway)
- 熟练使用 Redis 缓存数据库 , 熟练掌握其常用数据结构 , Redis 持久化 ,Redis 分布式锁 , 缓存穿透, 缓存击穿 , 缓存雪崩等熟悉使用 MySQL 数据库 , 具备一定的编写能力 ,熟悉 MySQL 数据库优化
- 了解消息中间件 RabbitMQ 的使用 ,了解使用 Elasticsearch 进行数据搜索
- 熟悉 Linux 常用命令的使用 , 并且能在 Linux 操作系统部署项目
- 熟练使用 Docker 进行容器运行部署项目 , 项目运行 , 了解 Docker,Jenkins 和 Git lab 的 CICD 过程
- 熟练应用 Eclipse, Idea 等开发工具 , 熟悉使用 Maven 等项目管理工具 , 熟练 GIT、 SVN 版本控制工具
- 熟练使用 Vue、 ElementUI 前端框架 , 了解 vuex、 vue - router 等组件进行状态和路由管理
咱先不说关键词汇啥的,先看内容,有些技术点大小写都有,很明显能看出一些问题,第一眼的观感就不是很好哈,至于其他的,都是用的熟练等这些词,还挺好咯
案例二
- 熟练使用 linux 操作系统的常用命令
- 熟练使用分布式服务框架 dubbo
- 熟练 J2EE 相关技术,Spring,SpringMVC,Mybastic 等开源技术框架
- 熟练使用 Html, CSS, JavaScript 等语言,能使用 JQuery 框架进行页面开发工作
- 熟悉 ZooKeeper 分布式应用协调服务的原理和使用
- 熟练使用非关系型数据库 redis
- 熟练使用分布式数据库中间件 mycat
- 了解前端框架 easyUI
- 熟练使用版本控制工具 svn
- 熟悉 RBAC 权限访问控制
- 熟悉 vsftpd 服务端软件,以及反向代理服务器 Nginx
- 了解 codis 集群的安装及使用
这篇大问题没有,也是一些的小的问题,比如没有细化的描述技术点、大小写等
以上两个案例只是针对个别做一个参考,并不是一定要按照这个来写,每个人的技术点不一样,写法也不一样,适合自己的最好
- 其实,这里你会的技能,跟你投递的职位如果匹配度很高,那么你是 HR 怎么决定? Bingo,就是他了,约来看看!!反之,当然是杯具的被忽略了!!
- 你会的,恰是岗位所需要的;比如:Java 的 Web 后台岗位;精通 SSM,精通 Oracle,Mysql 是合适的;你精通 C#,精通 C,C++,就不那么合适了
- 你会的,也是这个职位需求最基础且最通用的(或者涉猎更广的技术也是可以的):如果一个银行项目的职位,需要精通 SSH 框架,金融业务;你不写你会这些项目需要的,而强调 SSH 已经过时,我了解最新的 Spring Cloud 和 Spring Boot;那我也只能替你无语了…
- 跟职位无关,非专业技能,不如不写:公司一码农的开发岗;某求职者简历,我性格外向,善于跟人沟通,会唱歌,会跳舞,有驾照;可胜任开发岗位,销售总监,客户经理,前台亦可…
2、最佳简历--JAVA 程序员的基本技能和项目经验如何写
首先你要明确,你能干什么,包括你自己编写的专业技能,到底会不会,怎么运用到技术上的?
1、你能干什么?
你能干什么,其实就展现你的能力,这是简历中最重要的部分,你需要证明前面说的你会的东东;
这就有点像前面的专业技能(你会什么)是论点,这里你要提供论据;需要你证明你的能力可以胜任公司的这个岗位
2、面试官主要看的几个方面

作为面试者我们能掌握的:
- 基本技术
- 项目经验
- 个人潜力(值不值得培养)
非主观因素:
- 比如上一个面试者没答出来,我来问问你
- 刚好碰到了一个业务场景,抛出来丢给你
…
3、项目准备
项目经验的准备 = 完整的项目 + 写在简历上的(摘要) + 面试说的
1、完整的项目
主要体现在以下三个方面:
- 完整性:项目到底有没有全程做完
- 难度:项目开发的难度
- 工作量:
2、写在简历上的项目
下面三个点基本上要是标配哈,我看过一些同学写的, 就是描述了这个项目是干哈的,其他的就没了,那这个有跟没有是一样,面试官了解不到这个项目的任何技术相关的,你参与的东西
- 开发用到的技术
- 项目描述
- 负责模块
3、面试中应该如何组织语言
首先作为自己亲身参与的项目,一定要知道整个项目的业务逻辑,一些难点上是运用什么技术怎么处理的,就算不是自己设计参与的,也要去弄懂,很可能就是一个加分项,一个亮点技术,而不是害怕自己不会,怕自己答不出来就不写,作为开发人员,都知道,哪有那么多技术难点去处理,真的处理的点也就那么多,平时基本上都是业务上的 CRUD 处理。
4、项目中要准备的要点
- 明确你参与做过的项目到底是做什么的? 有哪些功能
- 明确你的项目的整体架构,模块间的关联和耦合
- 明确你参与的模块在项目中的位置及作用
- 明确你做的模块用到了哪些技术,延伸到项目中还是用了哪些技术
- 你在完成模块的过程中,遇到过什么技术难点,或者比较复杂的问题
- 其他项目组相关的东东,比如:人员配备,开发流程,代码审核,版本控制,进度控制,测试,上线;版本升级和迭代…
5、案例说明(简历上的)
案例一(一般)
悦百客酒店管理系统:
**开发技术:**Spring+SpringMVC+MyBatis 框架、Ajax+Jquery、echarts、redis、css+div 等 软件环境:windows7、 eclipse、tomcat7.0、mysql
**项目描述: **
1、客房预定模块:调用艺龙、携程的接口实现网络订房,以及处理电话预定等。
2、前台接待模块:添加或查询客人信息,实现入住、结账等功能。
3、会员信息模块:往数据库中存储各种会员信息,以及查询和修改等操作。
4、客房管理模块:对房间进行管理,设置和修改房间状态等。
5、会计模块:用于会计审核相应的账目和资金处理。
6、库房管理模块:用于酒店日用品的损耗和消费品销售做相应地管理。
**负责模块:**负责前台接待系统模块及统计分析,实现客人的入住、结帐等功能。
案例二(较好的)
项目名称:喜乐旺购电商平台
**开发环境:**IDEA,maven 插件、Tomcat、JDK 1.7、Mysql、Nginx 1.6.0 等
**项目描述:**为了服务博兴当地电子商务公共平台,建立更加完善的电商服务体系,开发喜乐旺购电商平台。其最鲜明的特点为销售当地特产,网上超市购物送货上门,方便用户的购买。主要模块有:后台管理系统,门户系统,单点登录系统。
责任描述:
1.系统登录功能的设计与实现,密码校验通过 md5 加盐算法来实现,使用 shiro 完成登录验证。
2.商品规格参数的设计与实现,通过 vsftpd 服务器来存储商品的图片信息。
3.商品分类展示,将商品信息存储到 redis 中,页面加载时,直接从 redis 中读取速度,提高了页面的加载速度。
4.商品的添加,通过 mycat 来解决 mysql 数据库的瓶颈问题,完成对大量数据的存储。
5.商品搜索功能的设计实现,为了提高查询的效率,使用 solr 集群来实现查询。
技术描述:
1.图片上传并保存在 vsftpd 服务中。
2.数据的存储通过 mycat 进行。
3.数据展示时,通过 redis 进行缓存,提高读取的速度。
4.搜索功能是通过 solr 来实现的,这样做是为了提高查询的效率。
面试如何说?
本系统是 X 委托 Y 开发的用于 Z 的系统,系统包括 A、B、C、D 等模块。系统使用了 Java 企业级开发的开源框架 E 以及前端技术 F。表示层运用了 G 架构,使用 H 作为视图 I 作为控制器并实现了 REST 风格的请求;业务逻辑层运用了 J 模式,并通过 K 实现事务、日志和安全性等功能,通过 L 实现缓存服务;持久层使用了 M 封装 CRUD 操作,底层使用 N 实现数据存取。整个项目采用了 P 开发模型。
完美的项目介绍是你在面试中的终极必杀技
好看的简历需要好看的简历模板去编写,这是我保存的程序员简模板:
3、Java 程序员面试时的注意事项
1、礼仪五要素
面试时的穿着代表一个人的精神气质,一定要合理穿搭,不能穿的花里胡哨,五花八门
尊重他人,也是尊重自己
- 最重要的是态度
- 举止
- 着装
- 言行
- 习惯
2、表现自己的核心优势
- 技术技能扎实(智商)
- 机灵好学,善于思考,沟通能力强(情商)
- 为人踏实,稳定;抗压能力强(个人潜力)
3、碰到不会的技术问题
面试官提出的某个技术,你不会:
- 第一,绝对不能就说两个字:“不会”。太傻,太二,无法继续交流了。
- 第二,态度上正视差距,如实回答。“这个技术我确实不会,但我可以学习它。我喜欢做程序员这个职业,就是因为能不断的学习新东西,永远学不够。”
- 第三,把问题丢回去,为了显示你喜欢学习,可以问:“我们公司内部团队是怎么学习新技术的?有统一培训还是自己学习?”。这样,面试官就会 balabala 解释一堆,你频频用赞赏的目光,点点头,看着面试官即可。
面试官提出的某个技术,你会一点,不熟悉:
状态:你对这个技术有一定的认知,但没有把握。
对策:可以告诉面试官去年项目不太忙的时候,我学习过几天,后来项目忙了就没继续看。然后,简单说说对这个技术的理解。最后,问一下,我们公司是否在使用这个技术? 我也正想捡起来再学习一下。
面试官提出尖锐的问题,质疑你的简历或者技术能力:
面试官:“我在你的简历中没有看到对我们有用的项目经验,你的技术能力也不符合我们的要求。
”求职者:“可能是我的经历还是太浅。对咱们公司这块业务确实没涉及过。您这块还有什么技术要求,我可以推荐我的朋友过来试试,有两个朋友对您这块业务比较熟悉”当碰到直接质疑的情况,面试成功的概率就非常低了。但也不能紧张,天下公司这么多,此处不留爷,自有留爷处。尽量多的跟面试官交流,获得更多的行业知识,为下一次面试做准备。
4、如何扬长避短的表达自己
面试官问及项目经验,为大约 1 年半之前的项目:
制造的错觉:那个项目是时间比较久的项目了,版本低,技术框架旧…
引导回你准备充分的项目上来:可以引导面试官,那个项目里面有很多的技术框架和技术不适应最新的需求,在新的项目里都做了相应的升级和技术的换代,最新的 xxx 技术取代了当时的 xxx,修正了 xxx 存在的问题,效率更高,速度更快 balabalabala…(引导到最近的项目,你为面试准备最充分的这个项目上来…嘿嘿; 没毛病吧);
面试官提出某一个技术问题,比如问及 HashMap:
制造的错觉:如果你对某个链条上的知识准备的特别充分,那么只要被问及到了这个链条上的所有知识点,你都可以进行延伸;以发挥出你最大的优势。
延展技术点,由点-线-面进行扩展:
比如:数组 – 链表 – hash(散列表算法) - HashMap – 系统效率,性能 – 缓存(清除策略) - redis – 业务应用(权限模块中,用户的权限信息,使用缓存来保存)对于这样的一个链条上的知识,你都准备的相当充分,那么面试官任何这个链条上的问题,都可以让你结合前后的知识,进行展示…
面试官问及你毕业的学校不是什么名牌大学:
制造的错觉:嗯,当年贪玩了;所以现在醒悟过来….
引导到自己的技术能力,学习能力上来:可以不卑不亢的回答,是否是名牌大学毕业的并不是最重要的,重要的是我的能力和目前掌握的技能是完全可以胜任这个工作,并且自己的动手能力更强,更适合这个职位。
5、如何将对公司的了解表达出来
对公司的了解,意味着你更用心
面试官:你对公司有什么了解和问题么?
那还记得前面我们说过,你需要对面试的公司调查了解一下的这三个问题么?
- 公司发展的历程
- 公司的产品或者项目
- 公司下一步的发展规划
面试官: 需要了解一下公司么?
求职者:据我了解,咱公司前身是电子工业部的一个研究所,公司成立到现在以来已经超过 30 年了,一直是 IT 软件和系统集名列前茅的公司,此前 12306 好像也是咱太极集团的搭建的吧。公司现在在多个行业和政府领域承接项目和平台建设,已经成为政务、金融、能源、制造、公共事业等行业信息化建设的领先企业。 我了解到,近期咱太极公司是不是也在大数据,AI,智慧城市和国家信息安全等方面有所投入和发展? 我对公司的了解也仅限这些比较皮毛的方面,不知道 xx 经理,您能否给我再介绍一下呢?
面试官:balabalabala……
求职者:太极这样的公司,如此完善和前沿的技术投入,我认为对我个人的学习和发展都很有帮助,我也希望自己能够成为公司的一份子,为公司的前行添加自己的一片瓦….(一定要表达出来,自己的意愿…)
6、如何谈薪水
首先了解一下 Java 开发的行业薪资水平..
一般来说:java 程序员的薪酬大致在如下的范围区间(当然不是绝对的)(一线城市为例,北京、上海和深圳为参考)
初级程序员:5-10k
中级程序员:10-15k
高级程序员:20-30k
架构师:30k-50k
合伙人:6-50k+不等
对自己的合理评价,非常重要..合理的估量自己的能力,定一个跟自己能力匹配度合适的薪酬区间会比较合适..
当面试通过了技术面试,HR 问及你的薪资要求的时候:
- 面试的好的,顺利的:勇敢的要你心里期望值的上限,上限(或者再多一点点)
- 面试的一般的:也尽量靠近上限
- 面试的不好的:就降低自己的预期或者接着面
7、面试要问五险一金和加班问题么?
首先,技术面试的时候不要问?其次,HR 沟通的时候不要直接问;你可以委婉的说:您可以介绍一下公司的制度和福利有哪些么?然后,有了 HR 的福利介绍,你可以适当的问问社保和公积金的基数;毕竟有些公司会综合来处理这些问题;
那要不要问加班或者加班费呢?..
(网上流传的一个段子)
-“你才工作两年,哪来的三年工作经验?”
-“加班!”
这个段子相信各位 IT 行业的已经看过无数次了,加班在 IT 行业已经被默认接受了。
不仅仅 Java,整个国内的互联网(IT)行业都是被赶着往前走,所以适度加班已经成为行业内的常态。
因此,一个应聘者问出加班和有没有加班费的问题,表明他比较在意报酬,不愿吃亏较为计较,可能是给多少钱干多少活的人,对于临时工作安排的配合度存疑。
8、如何合理结束本次面试
你还有什么问题要问我吗?
这是通常面试要结束的时候的问题。
切忌:无论今儿你面试的顺利不顺利,一定不要说“我没有问题”
也不要急功近利:“我今儿能面上么?”“能给我多少钱?”
通常,你可以考虑问 1-2 个问题(不要多了)
1、面试不错的,可以问一些技术和工作相关的问题
- 今天我们聊到的某个技术、我想回去好好研究一下、您这里有什么资料吗?
- XX 新技术,您怎么看他的发展?我想趁这几天时间宽裕,学习一下。
- XXX 技术,我感觉您好像有比较深的研究。我也想学学,您能推荐些资料吗?
2、面试不理想的,可以问一个技术相关的问题
- 您可以介绍下咱公司的项目里 xxx 的技术应用么?
- 我对 xxx 技术的理解还有偏差,你可以点拨我一下么?(比如面试中某个你完全没回答上来的问题)
结束面试注意的两个要点
- 第一要点:结束时,一定要对面试官表示感谢。
- 第二要点:将座位放回原位,帮助收拾一下桌面卫生。然后有礼貌的离开
"做事先做人,做事要专业"
