我们专注技术与职场的原创文章创作,将持续在本号推出原创干货,如果您喜欢我们的文章,欢迎关注我们
接着之前的文章,我们已经讲明白了裁员浪潮是如何发生的,程序员群体在裁员浪潮下应该如何自救和破解这个不利于求职的局面,以及为什么很多人投几百份简历都没几个面试,拿offer变得很困难。
那么我们今天来接着聊一个相关的很重要的话题:对于一个程序员来说,35岁以后凭什么可以找到工作?
这个话题其实也是很多人都很关注的问题,因为现在客观存在的一个事实就是很多程序员到了30多岁的时候,都不用35岁,一旦过了30岁就会发现自己出去投简历找工作,面试邀约就变少了,工作就难找了,更有甚者,还有人在年龄超过35岁,到40岁左右的时候,发现找一份工作非常困难,可能要空窗好几个月甚至半年一年才能找到一份工作。
那么这到底是为什么呢?以及到底如何给自己进行职业规划才能破解这种问题呢?下面我们就来一步一步深度分析一下。
要搞明白为什么很多程序员在到了30多岁以后很难找工作,就得先讲明白一个现状,就是大部分的程序员其实一直都是在跟着公司里的工作在走,然后自己平时不研究技术,或者偶尔研究一下技术,没有清晰的职业定位和职业规划,所以导致大部分程序员晃晃悠悠的到了30多岁以后,其实综合能力还是一个一线开发的角色,即使你技术不错但是干的还是一线开发,说白了就是还是普通开发。
这里着重说一下什么叫做普通的高级/资深一线开发,就是你是具体执行开发任务的,你可能技术不错,也可能技术一般,可能项目经验不错,也可能项目经验都很平庸,但是都有一个共同的问题,就是不是某个领域的专家。
其实即使你是P6到P6+这个级别,也就是高级/资深级别,也是可以通过在细分领域深度积累达到一个领域专家或者是一个细分领域有极为丰富经验的状态的,比如说如果你在物流行业干2年技术,在财务行业干半年技术,在saas行业干2年技术,在电商行业干2年技术,最后在大数据行业又干了2年,看起来经验很多,其实这些经验用处都不大,因为其实你是没有一个细分领域5年~10年的一个深度积累的。
试想一下,一个企业如果做的是财税领域的专业数字化系统,有saas的也有定制化的,此时招聘P6/P6+级别的高级/资深开发,虽然招的是一线开发,但是对他们来说如果你是在财税领域有5年+专注经验的高级开发,那就是行业对口/精通业务/财税领域经验丰富的高级开发,你不是一个普通开发。
但是如果你之前干过物流、新零售、电商,每个都持续2年左右,这个你对于这家公司来说,其实就是一个普通的高级开发,你对他们这个岗位来说,并没有核心竞争力,你去了还得从头学业务,你只是掌握了一些通用的技术能力而已。
这就是所谓的普通一线开发和专业/专家型一线开发的区别,大家一定要搞明白这个问题,事实上,大部分的程序员到30多岁,甚至40岁都是普通的 一线开发,或者有的人虽然干到了管理岗,但是又荒废了自己的技术能力,导致变成了一个技术不行、管理有点经验的角色,而且即使是管理岗,但是也是几个行业都干过,并不是某个领域的细分专家。
上面的话请大家看一遍,可以对号入座看看自己是不是这样,或者是不是在30多岁以后即将变成上述那种情况。
好,那么明确了这个前提以后,我们就可以知道,大部分的程序员进入30岁后其实都没什么核心竞争力,基本都停留在普通的高级/资深一线开发,或者是技术一般但是有点管理经验的这么一个定位。
如果换做行业好的时候自然问题也不大,毕竟企业招聘需求真的是大,其实也不会在意你30多岁什么的,只要会技术就可以来干活了,毕竟缺程序员。但是现在的问题是,行业现在处于快速挤干净泡沫的状态,招聘岗位大幅度减少,还有一波一波的裁员,现在是狼多肉少的时代。
所以在现在这个时代里,一旦你30多岁了,然后干的还是普通的一线开发,或者是普通技术管理岗,那其实你在很多企业那里是没有竞争力的,因为对于企业来说,在狼多肉少的时期,其实是可以有大量的程序员候选人以供选择的,那企业是不是宁可要专业/专家型的一线开发,甚至是技术专家,而不是要普通的一线开发/专家?
举几个实际的例子,我们来分析几个大厂的招聘JD。
比如说上面那份大厂目前在招的JD岗,我们是直接截图核心部分过来的,一起来拆解一下这个JD的需求,这个JD招聘的是高级工程师,也就是P6到P6+级别的,那么负责的是什么的呢,是境外海外的配送调度系统,需要结合实际的业务情况去设计架构和算法,而且明确的就是具备配送/打车调度系统开发经验是优先,有过大型复杂互联网架构经验优先,有国际化经验优先。
那么这里我们就可以看到,刨除别的不说,其实这个岗位虽然是招聘5年+经验的P6工程师,但是更多的是希望招聘的是有配送调度相关经验的人,最好是专门做过类似的业务系统,而且不能是里面某个细分小模块,最好是里面核心系统完整做过的人,而且互联网相关的技术架构、技术能力 也要具备。
这样的话这个候选人招聘进来就可以直接适配业务,直接上手负责配送调度里某个核心子系统,或者某几个核心子系统的开发,而且因为他有经验和实践,所以知道在这个业务场景下,哪些技术架构更加适合,如何设计架构去解决高并发、高性能的问题,这些都是实际经验总结出来的,不需要额外培养。
所以大家可以去想一下,甚至去看一下各个大厂的招聘JD,仔细研究一下,是不是会发现其实现在因为程序员太多,岗位不多,所以企业招聘需求是越来越专业化,细分化,精细化,并不是大家想的那样,我只要干过N多年技术,有各种经验就可以随便找工作,这种想法已经过时了,甚至于说跨行的专家他的价值都会锐减,同样是java技术领域的专辑,如果你深耕物流行业多年,但是去干财税系统或者保险系统,你觉得你是不是竞争力就不高了?
实际现在无论大公司还是小公司,因为程序员多,岗位少,招聘要求都在提高,比如对学历卡统招本科、对履历希望有中大型知名公司经历、对技术要求很高(各种架构设计、大规模项目经验),最后一个就是对专业型/专家型的人才更加倾向,要的是一个适配,挖过来上手就可以精准干活,而不是熟悉业务慢慢培养,以前程序员供不应求,来就行了,我用半年一年来培养,现在已经是不行了。
大家只要去关注各个大厂的JD就会发现这个趋势,比如说专门的营销算法岗就会要求你设计过营销领域的各种算法和系统,专门的搜索推荐领域的工程师/专家,有物联网IoT经验的Java后端工程师,在预测、定价、广告、营销领域有算法经验的工程师,有大型互联网类系统开发经验的工程师,等等。
其实在B端数字科技领域的公司也会是类似的,比如懂元宇宙相关技术的java工程师,懂区块链技术的后端工程师,有丰富财税经验的java技术专家,类似这样的岗位比比皆是,即使是B端公司的岗位也会越来越专业化、细分化。
所以明确了这个点以后,大家就明白35岁后为什么工作那么难找了,三个原因:
1、大部分程序员没有清晰的职业规划,导致一直频繁更换细分领域和行业,最后30多岁的时候就会沦为可替代性很强的普通开发/技术管理。
2、行情不好,僧多粥少,狼多肉少,企业可供选择范围大了,就会精挑细选,看到30多岁年龄不占优势,技术一般/还行,但是业务没深度积累,非专家的普通开发,学历可能又比较一般,那肯定就是不倾向招聘了。
3、企业对30多岁的年龄,更多的是希望招聘资深开发或者是专家岗,技术能力强,深度积累了细分领域经验,有丰富相关经验,工作履历也都是相关细分领域的企业,学历还可以/尽量高一些的候选人。
4、大量的30多岁的程序员出去求职的时候自身的积累和定位,与企业的期望和要求不匹配,所以导致很多人觉得自己也干了很多年技术,甚至10多年技术经验,为什么找不到工作,其实核心点在于你没有细分领域的深度积累,而是散乱不堪的职业经历、平庸/还不错的技术能力,技术能力也达不到专家级,行业积累也达不到专家级,简历投递出去自然就是人家不认可。
搞明白了这个问题,就应该知道,在现在这个大环境下,程序员如果想要有好的职业发展,其实难度会越来越高,因为任何一个公司招聘,都希望30岁以下的候选人技术很强,有一定相关经验,来了就上手;对30岁以上的 候选人,都希望技术达到专家级,行业积累也达到专家级,来了就可以hold住一大块事情。
所以对于程序员来说,尽早给自己明确一个清晰的定位,然后制定一个职业规划,自己希望在哪个细分领域有深度积累,技术上如何持续提升,行业经验、业务经验上如何持续扩大和提升,履历如何经营,如何每次都跳槽到细分行业内的知名公司,学历如何通过在职学习来提升,如何一步一步成为细分领域的专业性开发或者是行业专家,慢慢的让自己补好短板,学历、履历、技术、行业经验、业务经验、专业型/专家型定位,一个都不能少,成为一个优秀的程序员。
这样才可以在裁员后精准的去找自己对口的工作,而不是盲目的乱投简历,然后焦虑自己35岁会失业什么的,不去做定位、规划和持续提升,不明白自己人生的每一年应该如何渡过,盲目的焦虑和迷茫,那35岁才会真的失业。