当前位置:网站首页>作为程序员,职业规划需要注意的四个阶段
作为程序员,职业规划需要注意的四个阶段
2022-06-22 13:09:00 【守护石】
通过下图程序员职业路线规划,我们来试着解读各年龄阶段,程序员们心中的困惑。

程序员职业路线规划图
对于程序员职业路线规划,我给出一个参考,定义为四个阶段:
- 二十多岁专注技术能力,埋头苦干,作为合规的程序员成长起来;
- 三十岁以后特别要注意复合能力的提升,能更好地抵挡住35岁危机的冲击;
- 奔四是人生事业转型的痛苦时期,也是人生格局塑造的关键时期;
- 四十岁以后应具备独立开拓的力量与精神。
二十岁埋头苦干
在30岁之前,我们入行程序员,主要心思就是要专注于不断提升自己的技术能力和领域业务的学习能力,因为现在随随便便一套主流的技术栈(例如:Springframework技术栈)从入门到精深,就要耗去程序员新手至少3年的时间去实战与运用,这还不算上业务领域的知识学习。
因此自身技术能力体系的构建与成熟是这个阶段的关键。
当然,我说的是肯下苦而且比较有悟性的程序员,遇到悟性比较差的人,估计成为合格的程序员都比较困难,必须持续的努力,一句话:悟性差不怕,当好龟兔赛跑中的乌龟,持续进步,就一定行。
但是现实还是残酷无情的,这个阶段其实会有一些人坚持不住,放弃技术,这个期间转行的概率非常大,反而是30岁以后还能继续扛下去的程序员,往往就难以割舍这个行业了。
在25-30岁之间,从入行开始就是埋头苦干。
不要去高谈论阔,这会让有经验的老手们看笑话的,这个阶段人最缺的就是人生经验。
不要纠结于大厂还是小店,有自己施展和学习的项目,适合自己才是关键。
不要在乎兜里的银子多了一点还是少了一点,在高级技术人员面前,简直不值一提。
这个阶段的优势在于人生是最富有冲劲的,对于技术的新鲜感也是最佳的,因此非常适合啃新技术,不断在开发当中,解决各种技术问题,不断练就一身抗打的技术神经素养,都是最合适不过的时期。
以这种节奏干上3~5年时间,就是一位妥妥的合格程序员了。
更有意思的是在这个过程中,有一些程序员会在项目管理、产品设计或者团队协调上表现出超过其他人的潜质,更适合作为研发/技术/项目方向的经理继续发展,也就是说,既能做开发还能协调管理开发小组工作,这就具有了一定的复合能力。
三十岁形成复合力
过了30岁以后,作为程序员的你,也经历过一些人情世故,也见识到一些非技术的社会百态,那么在30~35岁这个阶段,是一个人的心性从年轻逐渐过渡到沉稳的重要过程。
这个年龄若还对技术孜孜不倦地钻研,那么基本上就进入到高级程序员这个层面(例如:精于操作系统多进程或平台多线程的应用控制之道)。对于任何一家发展不错的软件企业,高程都是不可或缺的战略资源。
而已经成为研发(技术)经理的程序员,其实有很多人一样会在技术上不逞多让,同时身兼技术管理之责,这对于企业更是稀缺资源。
但一定要分出来研发(技术)经理和高程谁更重要,其实关键在于身处什么样的企业,要看企业的核心生存依赖是什么,产品?项目?还是资源关系?
其实依赖产品力的科技公司是最适合程序员专注在技术环境生长的,我相信未来这种企业会越来越多。这种环境也更适合高程不断提升造诣,例如:以互联网产品服务为核心的企业。
但是目前程序员要面临一个现实,那就是国内大多数软件企业都是重度依赖非产品力的其他方面的因素。
因此程序员往往在这种环境下,技术之外的一些能力需要适时地培养,这种环境研发(技术)经理因为更具有这种复合能力,往往会成为企业研发的骨干。
这个阶段程序员要特别注意:客户关系与沟通、技术文档方案与商业活动支持、需求业务上的深度理解等方面的留心、锻炼与提升。
但是,以后企业接入互联网将是IT产业的核心驱动力,面对互联网应用的规模化和企业复杂的领域问题,程序员不仅在技术能力上要有更高的追求,而且这种复合能力也会越来越重要。
因此在这个阶段,程序员在业务领域的能力会不断成熟,再加上自身技术能力的提升,自然而然会形成一种复合能力,这种能力包括了:技术管理、技术内功、技术眼界、技术沟通和技术文案等。
我们再延伸一个热点问题,那就是35岁焦虑,我认为焦虑也分两种:
第一种面对要被淘汰的焦虑,第二种向上转型实现阶层突破的焦虑。
第一种要被淘汰的焦虑者主要是那些始终在普通程序员这个身份上徘徊的人,那么30岁以后,随着身体不如20多岁抗打,而25-30岁的程序员又能轻松替代这些工作,那么到了35岁之后,能不为淘汰所焦虑吗?
另一种向上转型的焦虑来自于我上面所述的路线正常发展到30~35岁之间,对于技术的提升会有一个疲惫期,同时见识过更多超出技术范畴的实现价值。
因此就会寻找阶层突破的向上转型,这种转型是更加焦虑与痛苦的。
好,咱们再回到这种复合能力的发展路线上,看看在35岁之前会形成什么样的一种职业发展的分支?也就是说程序员到底倾向于领域架构,还是更倾向于支撑经营层面的企业管理。
在进一步,往往前者成为了架构师,开始逐步参与主导企业重大的业务的软件架构。
后者则开始形成部门领导力,对企业多个项目或者产品进行统一协调管理,成为名副其实的总监(技术/研发)。
能在30~35岁这个阶段成为名副其实的总监或者架构师,往往都是程序员中的金字塔,并不是所有程序员都有这么好的机遇,这种岗位需求也不大,因此也可以考虑去小公司挑战,获得这种岗位机会就非常大。
然而会有更多人选择继续在高程或者研发(技术)经理的方向继续深入,进入到下一个更高级的阶段。
还有另一种情况,那就是程序员彻底厌倦了技术,主要还是发现了自己在其他方面的潜质或兴趣,因此转型到了企业商务经营方向,例如:产品经理、售前工程师或者销售。
奔四的痛苦转型
我们继续沿着主线走,程序员到了35~40岁之间,几乎都要面临一个问题,下半生即将开始,如何转型?尤其在国内的技术环境,这个过程可以说是逃不开的如来掌心。
那么无论对于资深级高工、高级研发经理或者高级架构师,在这个阶段都已经积累下深厚的技术功底和领域业务能力(例如:在分布式架构、异构系统融合),甚至这种业务能力掌握到了一种模式的境界,可以在多个领域中复用。
其实转型的选择也很简单了:专家线、管理线、商务线(商务线不在这里赘述)。
管理线就要向着更高的目标追求了,自己需要根据公司的特质去适应,形成强大而独特的能力。
有时候需要管理者去贴近商务,也就是通过技术的形式去表现出商务的优势,比如:大量科技展会上站台的各种CTO、总监、架构师,本质上都是这种类型,需要通过技术说服力,让潜在客户去相信企业的产品与服务实力。
有时候需要管理者核心是去解决问题,减少内部的熵增,这种场景存在于大型软件公司团队管理者,尤其是承接大型项目的企业或者有规模的软件外包公司。
专家线则更适合哪些对于技术具有浓厚兴趣,并且在技术持续专研,形成了技术上的天赋的程序员,其实这也是很多大佬级程序员的一生孜孜不倦的追求之路。
专家线的程序员不仅仅在架构、技术、编程上需要有着出众的能力,而且有着自成体系的技术观点,逐步渐长于技术创作、技术引领,以及在技术声望方面的打造。
对于企业来说,拥有着有声望的技术专家,代表了一家企业的科技软实力。
拥有着能力卓著的技术专家,可以为企业向上突破,形成产业链整合,起到更为系统性和原生性的技术支柱作用。
但是程序员无论转型到管理线还是专家线,都会无比痛苦,因为这个过程需要自我的独立精神了,前方没有任何人可以成为你参照的样板,这是完全按照自我意识设计与能力塑造转型的创新,过程会非常痛苦,你会变得独特、卓尔不群。
下半生独立开拓
40岁以后,就进入到了人生到下半生,那么这个阶段,更适合自己出来创业,但也不是绝对的,即便留在企业,也可以形成一种独特的合作方式,我将其称为合作创业,也就是企业与你之间是一种默契的合作关系,你中我有,我中有你,关键在于你有相对自由的时间,既能达到自己的目标,还能照顾到企业的发展,我认为这种模式对于技术人是最好的一种方式。
当然了,独立创业失败几率很大,不过不用担心,以你的能力,回去打工也不是件丢人的事情。
但是创业万万要注意的一件事情:
不要对赌、不要对赌、不要对赌,重要的事情说三遍。
因为99%的人所预想的美好前景都与真实情况相差甚远。
创业的过程就是不断试错,不断调整目标难度的一个过程,发展自己的事业是人一生持续且长远的一项实验过程。因此不要不顾一切,更不要一次性梭哈,这会影响正确的决策,而且极易导致人格变形,一旦失败,就会严重影响家庭,甚至失去再次翻身的机会。
希望上述经验对想成为或已成为程序员的你会有所帮助!
边栏推荐
- Summary of patent blog writing
- 请问,中衍期货是不是靠谱的?资金安全吗?
- Nansen Annual Report
- JS advanced programming version 4: learning iterators
- 浅析Redis 切片集群的数据倾斜问题
- Vcip2021: super resolution using decoded information
- Technology practice | scene oriented audio and video call experience Optimization
- How MySQL enables multiple auto incrementing columns in a table
- Rongyun: let the bank go to the "cloud" easily
- 3dMax建模笔记(一):介绍3dMax和创建第一个模型Hello world
猜你喜欢

Kubernetes monitoring: grafana adds datasource and dashboard through automation

"N'osez pas douter du Code, vous devez douter du Code" notez une analyse de délai de demande réseau

Stephencovey's tips for efficient work for young people

程序员要不要选择软件人才外包公司?

How to add a mask to a VR panoramic work? What is the function?

Tasks and responsibilities of the test team and basic concepts of testing

Simple integration of client go gin IX create

JS高级程序设计第 4 版:迭代器的学习

Instanceinforeplicator class of Eureka (service registration auxiliary class)

Understand the quality assurance of open source software (OSS)
随机推荐
Seven cattle cloud upload picture
What is the difference between Z-score and deltf/f?
ThoughtWorks.QRCode和ZXing.Net 二维码,网址可以直接跳转
哈希索引设计发展史
5G时代,如何打造一场令人惊叹的VR直播活动?
If you want to know the stock account opening discount link, how do you know? Is it safe to open an account online?
MySQL如何让一个表中可以有多个自增列
VCIP2021:利用解码信息进行超分辨率
Instanceinforeplicator class of Eureka (service registration auxiliary class)
php两个时间戳相隔多少天
CVE-2022-22965複現
程序员要不要选择软件人才外包公司?
Cosmos、Polkadot
BSN发展联盟理事长单志广:DDC可为中国元宇宙产业发展提供底层支撑
Cat agile team coaching workshops - August 20
C#定义和实现Interface接口
How to solve the problem of amount accuracy in financial applications (take quorum and golang as examples)
HMS core news industry solution: let technology add humanistic temperature
Tasks and responsibilities of the test team and basic concepts of testing
What you must understand before you are 30