转一篇文章,看3-5年的程序员职业规划是怎样的

转一个干货吧,关于程序员3-5年后程序员的职业规划,希望能读完这篇文章的你有点帮助~

本文转载自公众号 大飞码字
作者|大飞


大部分这个时期的程序员,工作上已经游刃有余,可以独挡一面,对所涉及的技术基本了然于胸,能够独立完成上级布置的所有任务,如果项目有需要,还可以带上三两个新人,一起进行项目的攻坚,已经是团队的主力成员。业余时间相对刚入职场的时候,也多了起来。 另一方面,发现自己的成长较前三年,要缓慢甚至停止了。

为什么要在这个时期再重新做职业规划呢?

最核心的问题,就是你的成长速度变慢甚至停止了。如果不调整,继续下去,最后只会不断落后,直到被整个行业抛弃。

这个时期对于很多人就是个岔路口,有的人意识到了问题,看到了这个岔口,开始思考要选那条路走下去。有的人没有意识到这个问题,浑然不觉,可能几年后还在原地踏步。

所以这里第一个关键,就是要意识到需要再次进行技术职业规划了。

对于程序员来说,出路的选择可以是很多的。 全部例举一遍也不现实,我下面例举了一些常见的选择。分别来说说,对大部分的人比较有参考价值。

1.继续做开发

在相同的技术方向内,可以有 业务开发基础开发 的选择。

业务开发的劣势:

大部分业务开发岗的技术含量不高,平常做的工作更多是增删查改,if else, switch等。做久了之后,感觉技术没有提升,也没有技术成就感。有很强烈的在打杂的感觉。

业务开发的优势:

跟业务产品结合最紧密,离客户用户最近,在业务和产品上,比起基础开发岗的同学有更多的接触,综合能力的成长会更好,最终能力会更加全面。职业发展空间更加广阔。

个人建议:

很多做业务开发的同学,做到后期,在技术上已经没有什么提升空间后,就开始有很强烈的在打杂的感觉。 这种感觉很正常。

事实上,业务型开发,当已经跨过技术能力门槛后,就应该要开始关注业务和产品了。如果每天只是关注代码上的增删查改,if else,那无论是技术还是业务产品能力都不会有提升,反而是在空耗时间。


基础开发优势:

做的事情技术含量高,因为跟业务相关性很低,技能复用性很高。比如做熟了rpc框架或存储系统,跳到其公司做基础开发,依然可以做的很出色。

基础开发劣势:

整个职业生涯层面,接触的事情太窄,基本就是技术。有时会产生一定的孤独感。需要从业人员真的很喜欢钻研技术,能够忍受比较长期的寂寞。职业发展上几乎只能走专家路线。后期可发展路径比较窄。

个人建议:

做基础架构的同学一般不会觉得没有技术含量,但做久了之后,有人会开始觉得闷或者觉得没有惊喜。看着隔壁业务部门的同学,这个业务达成了多少多少的DAU,那个业务又拿了公司级的业务突破奖。然后谁谁,因为业务扩张,又升职加薪了。对于这点,我只能说,很多同学只看到活下来的,没有看到死去的。

可以看出,业务开发和基础开发,都是各有优劣,最重要的是要根据自己的内心和性格特质来进行选择。做自己喜欢的事情,总会做的更出色。

2.转岗

除了在同方向上做业务开发和基础开发的选择外,还可以转岗。比如做前端的同学觉得前端技术含量不够,想转去做后台。做工程的同学想转去做数据分析,深度学习。

工程类岗转工程类岗,相对还好,差异不会特别大,需要的基础能力和思维方式相差不会很大。比如无论你前端,后台,客户端,代码,算法,操作系统,网络这些知识经验和能力都是共通的,迁移的成本比较小。但工程类转岗数据分析或深度学习这种算法类,跨度就很大了。对于算法类的岗位,对代码能力,底层机制的理解要求并不高,需要的是更好的数学能力,英语能力(要做好,看英文paper是必须)。

很多同学对自己很自信,觉得只要自己努力就一定可以,但你也要明白,你的竞争者也很努力的,而且他们更专业(有不少就是数学系毕业的),你确定能跑的更快吗?这里有个建议,建议想转算法研究岗的同学,先自学一段时间,比如半年或一年,如果真的觉得自己合适,再转岗过去。

3.转非技术岗

最后说说转非技术岗位

做了三年的技术后,发现其实自己并不喜欢做技术。 更喜欢做产品或商务或其他岗位。 个人觉得如果出现这种情况,并且确认是内心所向,就应该果断转了。不要拖,不要浪费时间。


以上是技术人员在工作三五年左右的时候,需要再做的一次职业规划。无论你会不会改变方向和岗位,你工作到这个时间段的时候,都应该思考下这个问题。一是可以及时的做调整,二是当你去做这个思考的时候,你也会开始有意识地去了解,接触其他的方向和岗位。
更早的开化,你更能先人一步,做出合适自己的选择。

——————————
本文为节选内容,完整内容发于 牛客职盐(ID:nowcoder_com),欢迎移步下方公众号👇

#学习路径#
全部评论

相关推荐

4 33 评论
分享
牛客网
牛客企业服务