再论面试前准备简历上的项目描述和面试时介绍项目的要点(1)

由于项目介绍是面试中的重头戏,一些技术问题会围绕你介绍的项目展开,你也可以在介绍项目时亮出你的优势。所以,在准备面试的时候,你可以刷题,但首先得准备好你的项目介绍,因为这关系到你面试的成败,文本就将围绕这点展开。

如果在简历中的项目经验是真实的,那么本文给出的技巧一定能提升面试官对你的评价,毕竟你不仅要能力强,更要让面试官感觉出这点。如果你的项目经历是虚构的,那么我也不能阻止你阅读本文。如果你用虚构的项目经验外加你的(忽悠)本事外加本文给出的技巧进了某个公司,我想这个公司的面试官也怨不到我头上,毕竟面试技术是中立的,就看被谁用。

开场白结束,正文开始。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1 面试前,回顾下你最近的项目经验,在对比下职位介绍,在简历中多列些契合点

比如某个职位介绍里,要求候选人有Spring Boot相关经验,数据库要会Oracle,而且需要有分布式组件,比如nginx,dubbo等的相关经验,那么你就得回顾下你上个或之前的项目,是否用到过同样的或类似的技术,如果有,那么就得加到简历上,这些技术无需在简历上展开,但得结合项目具体需求写。

一般的写法,在项目里,我用到了dubbo,redis等的技术。

比较好的写法,在项目里的订单管理模块里,我们是用dubbo的方式调用了客户管理系统里的方法,调用的时候我们还考虑到了超时等的异常情况。在页面展示部分,我们用redis缓存了商品信息,redis是用主从热备。

对比上述两种写法,很明显,第二种写法明显更有说服力,因为其中列出了只有用过才知道的点,这样就能向面试官证明你确实用过相关技术。

类似的,在职位介绍里提到的技术,最好都用同样的方法写到简历中。不过这里请注意,过犹不及,比如职位介绍里提到了5个技术,你用到了其中的3个,那么你本来也可以通过面试。但如果你自己在项目里拼接了一个实际没用到的技术,那么你就得自己承担后果了。

2 能帮到你的其实是和职位相关的商业项目经验(含简历疑点和如何避免)

在本文开头提到的这篇文章里,我已经分享过甄别商业项目的方法。这里我通过些假装商业项目的案例来作为反面教材,以此来说明商业项目经验该怎么描述。

1 小A,3本学校毕业,计算机系,2年相关经验,之前的公司是一个名不见经传的公司,也就叫xx科技公司,但描述的项目却很高大上,是xx ERP项目。疑点分析:如果某大型公司,或国企,要做ERP或之类的大型项目,或者自己开发,或者让别的大公司开发(因为能出得起这个钱),如果是小公司要用,估计也就拿别人的现成的代码来改,一般不会出这个钱,所以遇到人经历少,公司规模小但项目很有名头的简历,我不能说是一律排除,但我会问很细。

2 小B,2本计算机系,3年经验,但最近有3个月工作断档的记录。之前的公司是个软件公司,但并非是一个互联网公司,但简历上写的技术非常新潮,比如分布式缓存,dubbo之类的,而且用到了集群。还是这句话,技术是为成本服务,你上个项目规模不大,也不可能有高并发的流量,那么为什么要用这些技术?

遇到这类简历,我就找些用过就一定能知道的问题来问,比如Redis的基本数据结构,redis如何部署,如何看redis日志,在上述案例中,我就通过这个方法发现该项目其实是个学习项目,而且这个项目是在培训学校里学的。

3 小C,最近简历上写的是个xx系统(大家可以理解成金融物流保险等),但时间跨度比较可疑,一般来说,做个系统至少10个人左右,而且得大半年,但他简历上写的参与时间是3个月,这和培训学校里的学习时间非常相近。而且,在简历中写的是自己开发了xx系统里的xx模块,用到了redis,logstash等技术。这类简历的疑点是,第一,用了3个月完成了一个项目,而且该项目里有高新技术,且做好了以后马上离职了,这个和实际情况不符,很像培训项目。

其实简历的疑点不止上述三个,大家也可以换位思考下,如果你是面试官,看到这份简历,会相信吗?很多疑点其实很明显。

下面我说下真实项目里会出现的情况,写这些内容的目的不是让有些同学把学习项目和培训项目往商业项目上靠,而是让大家的简历更具备说服力。

1 工作年限比较少的同学,未必会开发完成一个模块或参与一个项目的开发,更多场景下是参与一个维护项目,比如公司一个项目已经上线了,这个项目是历史项目,所以用的技术未必最新,但在维护项目里,其实也会开发一些功能点,该用的技术一个不会少,针对每个模块维护的时间周期也不会太长,比如每个月,针对某个模块上线3个功能点,这样也是合情合理的。

2 还是这句话,如果有用到比较新的技术,结合业务场景写,比如用到了redis,你是缓存了哪类业务数据,这类业务数据的特点如果真的是符合缓存条件的,那么就加深了你熟悉这个技术的可信度。

3 你站在项目经理的角度想一下,某个功能如果工期很紧,而且数据量和并发量真的不大,那么为什么要用分布式组件?换句话说,如果你在简历里写的项目背景里,有高并发请求,那么引入分布式组件的可信度就高了。而且,项目经理会让一个工作经验不足的人独立使用技术含量高的组件吗?如果候选人工作经验不多,那么比较可信的描述是,由架构师搭建好组件框架,本人用到其中一些API,但用的时候,对该组件的流程和技术坑非常了解,那么以此证明自己对该组件比较熟悉,这样可信度就非常高了。

换句话说,你写好简历里的项目描述后,自己先读一遍,如果有夸张的成分,更得多推敲,除了个别虚假简历之外,很多情况下,其实简历是真实的,但没写好,有很多漏洞,被面试官一质疑就慌了,导致面试官认为简历不真实。

3 沉浸入项目角色,多列些项目管理工具和技术使用细节(就是坑)

其实证明相关项目经验是商业项目,这仅仅是第一步,更多的时候,你得通过简历中的项目描述,证明你的技能和职位描述相匹配,再进一步,你也可以证明你确实用过一些比较值钱的技术。

对于项目开发而言,只要项目是真实的,你就一定会经历过一些场景,对于技术而言,只要你用到了,那么一定能说出些“海底针”。所以在写简历时,建议大家列些如下的关键点,以证实真实性。

1 项目的背景,多少人做?做了多久?用什么工具打包部署发布(比如ant加jenkins)?用到哪些测试工具?用什么来进行版本管理(比如Maven+JIra)?如何打印日志(比如logger)?部署环境时,用到哪个web服务器和数据库(比如spring boot+oracle)。

这些话在简历中一笔带过也用不了多少文字,但这样不仅能提升项目的真实性,更能展示你的实际技能。

2 项目的开发模式和开发周期,比如用敏捷开发,那么每一个月作为一个周期,每次发布个若干功能,在每个周期发布前几天,会冻结开发,在开发过程中,会有每天的站会,代码开发完成后,会有code review。

3  在写技术(尤其是值钱技术)描述时,最好写些细节,比如用到了dubbo,那么可以写需要设置dubbo超时时间和重试次数是1,否则可能会出现调用,如果用到了线程池,那么如何避免线程池中的OOM问题,或者用到了nginx,你就把配置文件里的关键要素写些出来。

也就是说,你写技术时,不仅得结合项目需求写(即xx技术实现了xx功能),最好再些一些(不用太多)这个技术的用法细节(也未必太深)。面试官其实就看你用到的技术是否和职位匹配,如果职位介绍里的技术点你有都招这点要求写了,至少在筛选简历的时候,你过关的可能性就很大了。

4 最好写些你解决的实际问题,大而言之,实际问题可以包括配置集群时的要点(比如一定要设置某个配置),小而言之,你可以写如何实现一个功能(比如出统计报表时,你用到了数据库里的行转列的功能)。哪怕是学习项目和培训项目,你运行通现有代码的时候,也会遇到各类的坑,这就更不用说商业项目了。在简历里项目描述部分,你就写上一两个,这样证明真实性的力度绝对会非常高。

5 加上单元测试和分析问题和排查问题的描述。

比如,在这个系统里,我是用SoapUI作为自测的工具(或者用JUnit),在测试环境上,如果出现问题,我会到linux里,用less等命令查看日志,再用JMeter等工具查看JVM的调用情况,以此来排查问题。

这种话在简历中写下大概的描述,给出关键字(比如Jmeter,SOAPUI或职位介绍里出现的关键字)即可,不用展开,但在面试前要准备说辞。

我知道有些候选人会对项目描述做些改动,比如在最近的项目描述里,加上些之前项目里用到的技术,或者加上职位描述里提到的技术。在这种做法是否恰当,大家自己评估,但如果你在这类技术描述里,加上本部分提到的一些要点,面试官就很难甄别了。

4 事先得排练介绍项目的说辞,讲解时,一定得围绕职位需求要点

这里说句题外话,我面试过的候选人,从他们的表现来看,很多人是不准备项目描述的,是想到哪说到哪,这样的话,如果你准备了,和你的竞争者相比,你就大占优势了。

在本文的第3部分里,我给出了5个方面,在简历里,你未必要写全,但在准备面试说辞时,你一定得都准备。

1 你在项目描述里列到的所有技术点,尤其是热门的以及在职位介绍里提到的技术点,你一定得准备说辞。也是按“技术如何服务需求”以及“技术实现细节”来说,更进一步,你最好全面了解下这个技术的用法。比如nginx如何实现反向代理,该如何设置配置以及lua脚本,如果分布式系统里某个结点失效了,我想在反向代理时去掉,那该怎么在nginx配置里设。针对这个技术的常用问题点,你最好都准备下。

2 介绍项目时,可以介绍用到哪些技术,但别展开,等面试官来问,所谓放长线钓大鱼。这个效果要比你直接说出来要好很多。

3 有些基础的技能需求,在职位描述里未必会列,但你一定得掌握。比如通过设计模式优化代码架构,熟悉多线程并发,熟悉数据库调优等。关于这些,你可以准备些说辞,比如在这个项目里,遇到sql过长的情况,我会通过执行计划来调优,如果通过日志发现JVM性能不高,我也能排查问题,然后坐等面试官来问。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

Java核心架构进阶知识点

面试成功其实都是必然发生的事情,因为在此之前我做足了充分的准备工作,不单单是纯粹的刷题,更多的还会去刷一些Java核心架构进阶知识点,比如:JVM、高并发、多线程、缓存、Spring相关、分布式、微服务、RPC、网络、设计模式、MQ、Redis、MySQL、设计模式、负载均衡、算法、数据结构、kafka、ZK、集群等。而这些也全被整理浓缩到了一份pdf——《Java核心架构进阶知识点整理》,全部都是精华中的精华,本着共赢的心态,好东西自然也是要分享的

image

image

image

内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
存中…(img-pvQAnJ7b-1713534292083)]

内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值