首页 > 数据库 > 数据库开发技术 > 新年伊始,换工作该如何准备项目
跳槽,找工作一直以来都是我们程序员群体永不过时的话题。
0.
很多同学 2023 年在老东家受了一整年的委屈,经过这个春节假期的情绪发酵之后,决定撂下一句「老子不干了」。
其实对于程序员群体来说,我一直都主张「趁年轻,多跳槽」,因为在我们当下的行业形势下,你的薪资、成长机会想要得到较大幅度提高,似乎只有跳槽这一条“捷径”可以走。
在当下这个时间节点,想要获得一份还算满意的新工作,难,其实也不难。
「难」在于现在用人的单位都很挑剔,一卡学历,二卡工作经验,学历不高,学校一般,容易被嫌弃;而工作经验呢,没有大厂光环,没有各种高大上、高逼格的项目历练,投出去的简历也很容易打水漂。
「不难」在于,一者,虽然现在很多公司表面上对候选人要求不低,但面试官的水平低啊,很多面试官可能专业水平跟你差不多,甚至都不如你,他们考察你的方式,一般主打一个「点到为止」。
二者,当下的很多公司越来越务实,相比那些只是徒有好看的标签,能够“搞定实际问题”的人,才是他们更加青睐的。
而找到一份满意的工作,第一步,也是最重要的一步,就是写简历,写简历这个事情,在之前的文章中已经写过很多次了,那么今天这篇文章,我想从简历中「项目经验」这个部分来谈谈我的看法。
至于为什么要把这部分单独拎出来说,原因很简单,现在的用人单位尤其注重你的项目实践能力,只有你这部分的表现足够硬核,才能唬住面试官,才有可能收获 offer,单纯的八股文早就不奏效了。
1. 项目主体必须是真实的
这里的真实,指的是你项目中的数据来源、业务需求,系统实现目标必须是真实存在的。
看了太多那种“一眼假”的简历,这种简历在一个稍稍有点经验的面试官手里,基本活不过5秒,里面提到的项目,基本上都有个特点,那就是,无论项目名称,项目描述,还是用的技术栈,在网上都能找到现成的。
很多同学虽然有相关的开发经历,但因为不是用的大数据技术栈,所以在写简历的时候,就会把这个项目给完全摒弃掉,换成一个自己杜撰出来,烂大街的所谓大数据项目名称,这在我看来是一个非常可惜,且错误的做法。
因为你要知道,真实跟杜撰之间的最大区别就在于,前者的业务细节是可以经得起推敲,能够让人信服的,你在向面试官表达的时候,也会有理有据,底气十足,而且最难得的是,每家公司的业务特点一定是不一样的,这会让你的经验有一定的「辨识度」,从而让面试官觉得你真诚。
我现在面试别人,都会刻意问一些跟业务强相关的问题,以此来甄别项目有没有造假,比如数据来源、数据量、集群规模、数据类型、业务种类、团队规模、人员分工、数据服务对象等等。
这些问题,只有你的项目是真实存在的,才有可能回答的滴水不漏,而杜撰的业务需求,即便你很用心去准备,也很难想周全所有的问题,特别是有些经验的面试官只要稍微「诈」你一下,多问两句「真的吗」「确定吗」,「我不信」这样的话,你大概率就会露馅。
2. 重点在于技术内容的包装
保留真实项目中,业务的需求部分,但是技术架构,技术栈实现,可以换成当下流行的,面试时被高频问到的内容。
比如,有的同学经历的实际项目虽然有大数据量,但是使用的技术栈单一,基本上一个 hive 就 cover 住了所有的业务需求,自己的工作内容除了按部就班的写 SQL ,基本没有任何拿得出手的亮点。
你要是在简历中老老实实这么描述,跟记流水账一样记录你的工作内容,是几乎不可能让面试官对你提起兴趣。
事实上,大部分的同学所经历的数据项目都很平庸,既没有所谓的高并发场景、也没有多么难的技术问题需要去攻克,这个是事实,但是你完全可以用一些技巧,把这个平庸的经验,结合自己以往在该领域的专业积累,通过一定的包装修饰,让它看起来不平庸。
之前就说过,面试对你的要求,大部分时候(当然,也有例外)是远高于实际工作内容对你的要求的,而且面试跟实际工作,考察的技能点也是不一样的。
面试更注重你的表达、话术、语言逻辑、以及整个人在面试过程中,呈现出的状态,它「虚」的成分更多,这也是大部分程序员并不擅长的,但可以通过比较短时间的刻意训练来提高。
而实际工作不一样,它更「实在」,强调你的实际动手能力,短暂的培训很难有好的效果,有的人可能解决问题的能力很强,交给他什么任务,都能很漂亮的完成,但就是不知道怎么用文字跟语言来包装自己,这在面试中会很吃亏。
再比如,有些同学可能压根就没有经历过真正的大数据项目,过往的经验只限于玩玩 mysql、Oracle 这种传统数据库,但也想上大数据的岸,怎么办?
其实也有办法,只不过,付出的成本要更高一些,你需要花一段时间来弥补大数据的基础,先把欠下的技术债给还了,然后再来包装你的项目。
你可以在项目中描述,说原来公司用的传统 RDBMS 架构,随着业务的不断发展,数据量不断攀升的同时,业务需求也变得越来越多且复杂,传统架构出现了各种弊端,然后不得掀起一场技术革命,引入大数据这套玩意。
在不修改大体业务需求的情况下,将技术架构进行了大刀阔虎的升级和改造,然后搬上那套你准备已久的技术栈,各种数据流转、接入、计算、存储先大概描述一遍。
然后,根据你当前的业务现状,“造”出几个业务痛点(注意这里的造,是根据事实进行改编,有理有据的),然后提出解决方案,再把解决之后的效果跟之前的做个对比,用数值进行说明(比如提高50%),你的项目贡献就有了。
作为面试官,尤其喜欢看你解决了什么问题,有什么价值贡献这样的内容,所以这一块,需要你好好对待。
3. 要学会隐藏项目中的bug
任何再平庸的项目,只要你愿意花心思去思考,就一定可以找到「闪光点」,同样,任何一个不管多么高大上的项目(即便是很多大厂项目),不论是组织管理上,还是技术实现上,也一定会存在不合理的地方。
比如,年前辅导过一个大厂的同学,他所在的项目组,在集群资源管理上就有很大的问题,所有开发人员,对于要提交的计算任务,在资源配额上,没有任何限制,也没有任何相关的指导规范。
也就说,你提交的任何一个计算任务,想给他分配多少计算资源都可以,完全随心所欲,怎么开心怎么来。
事实虽然如此,但你如果面试时被问到,可不能傻不拉几地这么回答,一定要让对方感受到你们项目的「正规、严谨、科学」,这就是面试时的语言艺术,翻车次数多了,你才能慢慢学乖。
类似的情况还有很多,这里就不一一列举,总之就是一句话,尽可能让你的每一次回答,都能「正中眉心」。
最后
跳槽找工作这个决策,也许是在一瞬间就做出来的,但是整个找工作的过程,一定是漫长、且艰难的,提前做好这个心理建设很有必要。
而且,简历的修改一定需要你胆大心细,「胆大」需要你敢于去写,哪怕稍微夸张一点点(别太过分就行),只有这样,你的简历才能具备辨识度。
「心细」则指的是,在描述简历时,要多想一步,你这样写,没有有可能给自己埋下什么雷,面试官会针对这个描述,会抛给你哪些问题,都需要提前准备好。
不打无准备的战,祝各位新年准备换工作的小伙伴们,旗开得胜。

原文作者:安瑞哥是码农;如有侵权,请联系管理员删除。