“程序员的悲哀是什么?”,有个高赞回复直戳大多数程序员的命门:“最大的悲哀就是以为自己挣到了很多钱,其实根本不懂怎么挣钱,随着年龄的增长,工作瓶颈越来越多,越来越容易受到歧视,却不知道怎么走下去!”
程序员老实、爱学习,也是最有危机感的群体之一,他们每天在GitHub、各大技术论坛上如饥似渴地汲取对自己最有帮助的技术知识,同时怕时间精力跟不上高强度的程序员工作。
我还以为只是我想知道35岁以后的程序员都去做什么了?
1、技术骨干,混个小领导。
2、好学的,软件架构师,系统架构师。
3、脑子灵活的开个小公司,自己干。
如果按照世界职业规划发展史上里程碑式的人物舒伯对人的生命阶段的定位,25岁-44岁职业上的发展课题应该包含:
稳定于一项工作
确立自己将来的保障
发现适当的晋升路线
如果我们把25岁到44对再做一次细分的话,31岁到44岁就应该处于安定期,这个阶段可晋升的上升空间已非常有限,所以找准自己的定位并在这条路线上获得保障,再去不断补充新知识,增加自己在某一专业领域的权威性很重要。
其实大多数程序员的晋升路径并不复杂,无非以下几种:
技术型:初级工程师->中级工程师->高级工程师->架构师(技术专家)->技术总监->CTO
管理型:工程师->项目组长->项目经理->项目总监->技术总监->CTO
交叉型:初级工程师->中级工程师->项目经理->技术总监->CTO(此路线技术和管理交叉进行,每个阶段做的事情不固定)
转行型:初级工程师->转行产品、设计、销售、运营等
程序员、高级程序员、架构师、资深架构师、技术总监、开发部门经理
基本上,这两条路线图是比较标准的程序员上升路径。当然,也见过不是计算机毕业,先转测试,然后转程序员,再做项目经理,最后转销售,每一个阶段都做得很好。现在自己开软件公司,年销售额2000W+的,但这毕竟是少数。
程序员这行当,天赋很重要,然后是学习能力(技术更新太快),最后加上一些机会,相同的起点,10年发展的结果,天差地别。
一般情况下,程序员入门(能用一门语言完成一个简单的项目,并能理解)大概半年。
从程序员到高级程序员,大概1~2年。
从高程到开发组长,只要性格比较外向,沟通无碍,1年没有问题。
要升项目经理,需要一点机会,需要有合适的项目正好让你练手,毕竟公司不敢把一个高金额的项目给你折腾,都是真金白银。
如果升架构师,需要有宽阔的视野,要平时开发过程中,能看到自己负责代码以外的东西,要能看到项目的整体。
升资深架构师,那就要靠时间和经验积累了。
再往上,很大部分要靠机会了,毕竟上面的职位少,一个萝卜一个坑,得有空的坑你才能上。
所以,按照上面的路线,35岁时,至少应该在项目经理或资深架构师的位置上,对应的薪资在2W左右(一线城市)。如果运气好一点,就应该是项目总监或技术总监。
目前来看,35岁以上还活跃在开发一线的程序员十分少,绝大部分都会在这个阶段转到管理岗位。这个年龄段的程序员绝大部分都是半路出家的,以前干什么的都有,从业时间一般在10到15年,所以很多人说程序员是青春饭,这是不对的。
国内的上一代程序员没有经过科学的学习,缺乏基本的程序员素养,难以跟上技术的发展速度。我见过很多中年的产品经理,技术总监还在用很落后的技术和已经被淘汰的编程语言。随着技术的发展,整个行业对程序员素养的要求越来越高,他们很难理解新的技术,新的架构,新的设计模式。
这个时候,他们会选择离开一线工作,转向管理岗。很多小公司对技术管理岗的理解很浅薄,也就给这些人提供了机会,这也就是为什么现在很多老牌公司的主管经理都很白痴的一个原因了。
如果不是对程序的热爱,很难坚持住,但为了生活,还是要应付,以前转做管理6年了,无奈公司倒闭,重新找工作,虽然也是管理,但码代码却是主要工作,心很累,等待机会转型,有机会转型做产品,项目,或者自己创业去,这个时候不是钱的问题,而是找一个心里安慰。
当然在现实生活中,很多人的成长路径没有这么一帆风顺。大多数程序员在工作3-5年,知识和技术吸收积累到一定阶段后,会开始考虑继续做技术还是转行,这取决于一个人在技术上的天赋有多高。。