作者 林安
随着互联网的高速发展变革,大龄恐惧症越来越多地在技术圈被人讨论。很多程序员在工作5-10年以后,都会开始思考5年、10年甚至更久以后的自己,会是怎样一种生活工作状态,以及是否会被时代抛弃。
特别是全民创业的这几年,大到BAT,小到创业公司,喜欢年轻员工成了许多企业招人时的隐形规定之一。比如华为就明确规定员工45岁以后必须退休。阿里这几年也在追求团队年轻化,35岁以上的程序员申请P8以下的职位成功率很低。在100offer此次采访的企业中,一家互联网金融公司表示平时在招聘技术人才时,普通开发人员的年龄不得超过30岁,架构师年龄不得超过35岁。而许多高速发展的创业公司,更是年轻人的天下,从CEO到CTO,平均年龄不超过30岁的情况比比皆是。
现在的互联网世界,似乎成了年轻人的天下。那么,那些工作10年以上,年过35岁的程序员都去哪儿了呢?他们现在的生活和工作状态怎样?带着这一疑问,100offer采访了2位北京地区资历背景相当,且年近40岁的优秀程序员,他们一个焦虑迷茫,一个自信激情,也许这两种截然不同的心理状态,反映了中国目前大部分大龄码农的生存现状,同时对那些即将迈入「大龄」阶段的程序员来说,也有一定借鉴作用。
黄明国:38岁,从BAT到创业公司,想在40岁之前再拼一把
今年38岁的黄明国,2004年博士毕业于北京某研究型院校,目前在北京定居,有车有房,有妻有子。前10年的职业生涯一路顺畅,在身边大多数同学毕业后直接进入高校当老师的情况下,志不在此的黄明国选择了加入了当时正处于萌芽阶段的互联网行业,此后一做就是10年。
最开始他在一家当时并不知名,现在已成为北京一线的互联网公司做搜索相关的技术工作,两年后由于没有更大的技术施展空间,便离职去了某BAT在北京的分部,此后一做就是8年。从普通开发人员到小组Leader再到管理者,8年时间内黄明国晋升了4级。虽然他当时做的还是搜索算法那一套,但是由于公司产品在市场上有更强大的竞争对手,用户规模也一直处于不上不下的尴尬阶段难以突破,工作基本已经没什么挑战。
「现在的很多年轻人都不愿意来我们公司,觉得像BAT里的养老院。他们更想有一个平台,能够让他们接触一个产品或项目从0到1的过程,而不是在前人的代码基础上做重复工作。」黄明国说,技术上的老旧,可能是许多大公司的通病,也是阻碍更多年轻人加入的原因。然而技术世界的发展日新月异,即使是黄明国这种即将奔四的程序员,新技术的层出不穷依然会给他们带来危机感和吸引力。所以今年6月,他选择离开工作了8年BAT,来外面的世界看看。用他自己的话来说就是:「想在40岁之前,再拼一把。」
然而面试的过程并不顺利,学历和工作背景都异常优秀的黄明国在100offer上只收到了5封面试邀请,接受了2家后,其中一家公司在一轮面试后就以他的技术太老旧为由拒绝了他,这给一直以来对自己的技术实力比较自信的他带来了一定打击。但最终他还是成功入职了另一家创业公司,做数据挖掘和机器学习相关的工作,带领10人左右的团队,向一个比自己年龄小的上级汇报。工作节奏从在BAT的每天七八点下班,变成了晚上10点以后下班,有时周末也会在家加班。
上周,黄明国从繁忙之中抽空见了我们,今年38岁的他看上去有些疲惫,交谈过程中也能感觉出精神状态的紧绷。「刚进来几个月,每天工作都挺充实的。」他笑着说,「有一些在之前工作中没接触过的语言和技术,比如Scala和机器学习,现在也都在学习。」
「除这些以外呢?您还有其他工作要处理吗?」我问。
「有的。现在的工作主要是四部分:写代码、管理团队、做数据挖掘相关的工作、做机器学习方面的研究。」
「听上去做得有点杂,您有没有向上级提过把主要精力放在某一块工作上,比如管理?」
黄明国犹豫了片刻后说:「其实我们现在做的事情,很多都处于摸索阶段,大家都没用足够丰富的经验,难免会踩坑,这些坑延缓了项目的进度,也是导致我们加班的因素之一。但好在遇到问题大家愿意一起讨论、寻找解决方案,现阶段虽然累,但是也成长很多。」
当「成长」这个词从一位年近40岁,有着近10年工作经验的程序员口中冒出来时,竟让人一时间有些恍惚。虽然工作背景光鲜亮丽,但无疑黄明国是有危机感的,他深知技术是一个需要持续学习的工作,无论到了哪个年龄阶段都需要不断摄入新知识,否则就会被后起之秀追赶上。然而,虽有心追赶时代的步伐,在BAT待了太长时间的黄明国初次来到互联网公司「年轻人的世界」里时,还是在忙碌的工作中感受到了焦虑。
当问及未来几年的职业规划时,黄明国说他现在既不需要再去大公司镀金,毕竟他已经在BAT里待太久了,对大公司的那一套办事风格已非常熟悉。也从未想过创业或者去创业公司当CTO,他觉得风险太大,随着家里孩子渐渐长大,看得出他想给家庭多一些陪伴。在没有得到确切的答案前,他反问我:「你觉得像我这种情况,以后的职业发展路该怎么走比较合适?」
这个问题想必很多35岁以后的程序员也经常问自己。「随着年龄越来越大,我该何去何从?」
如果按照世界职业规划发展史上里程碑式的人物舒伯对人的生命阶段的定位,25岁-44岁职业上的发展课题应该包含:
- 稳定于一项工作
- 确立自己将来的保障
- 发现适当的晋升路线
如果我们把25岁到44对再做一次细分的话,31岁到44岁就应该处于安定期,这个阶段可晋升的上升空间已非常有限,所以找准自己的定位并在这条路线上获得保障,再去不断补充新知识,增加自己在某一专业领域的权威性很重要。
其实大多数程序员的晋升路径并不复杂,无非以下几种:
- 技术型:初级工程师->中级工程师->高级工程师->架构师(技术专家)->技术总监->CTO
- 管理型:工程师->项目组长->项目经理->项目总监->技术总监->CTO
- 交叉型:初级工程师->中级工程师->项目经理->技术总监->CTO(此路线技术和管理交叉进行,每个阶段做的事情不固定)
- 转行型:初级工程师->转行产品、设计、销售、运营等
当然在现实生活中,很多人的成长路径没有这么一帆风顺。大多数程序员在工作3-5年,知识和技术吸收积累到一定阶段后,会开始考虑继续做技术还是转行,这取决于一个人在技术上的天赋有多高。
如果选择继续从事技术,就要考虑是在技术上专精,还是走上管理岗位。虽然很多程序员技术水平达到一定阶段后都会被公司推上管理岗,但是更加痴迷专注于技术的人,在做了一段时间管理后还是会选择回归纯技术领域,成为一名技术专家或者架构师,比如前端界的大神Winter。
黄明国之所以会迷茫,是因为他现在正处于从资深工程师迈向管理岗位这一重要阶段。很多大龄程序员也正是在这一阶段迷失了方向:自己究竟喜欢技术还是擅长管理?只要这个问题没想清楚,就会像黄明国这样,长期陷入一种一人多职的状态,在高速进展的繁忙工作中理不清头绪,看不清未来。
关于此类现象,100offer咨询了一些企业HR的观点,其中有一条建议比较中肯:
大龄程序员在选择工作时,首选要认清自己,再去选择环境和公司。比如先确定自己是属于比较有激情、活力、愿意终身学习新技术的那一类人;还是心有余而力不足,想脱离一线技术,想把更多精力放在管理上的那一类人。
如果是第一种,可以选择一家快速成长的创业公司,将自己的技术价值最大化地发挥出来;如果是第二种,就选择那些组织架构相对臃肿的大公司,这些公司盘子够大且没有太多坑需要踩,因此对年龄稍大且有丰富经验、能安于现状、踏实做事的人存在一定需求。
其实不光是程序员,「大龄恐惧症」几乎是互联网行业里每个岗位的人都会遇到的问题,世界的变化太快,谁也不知道下一场取代互联网的变革何时会来。排除这种不可控的外在因素,一个人最大的恐惧,还是由对自我认知的缺失引起的。
黄明国的学历和工作背景已经优秀于大多数人,并且年近40岁的他仍对自我有更高要求,远离舒适区,不断学习新知识和新技术,现在他缺的是对理想工作和生活方向的明确,相信一旦想清楚这点,他很快就能调整状态重新出发。
俞军:40岁,从外企到互联网创业公司,黄金时代才刚刚开始
和黄明国形成鲜明对比的是今年已进入不惑之年的俞军。一样的博士生高学历,一样的在2000年初就出来工作,虽然最后殊途同归,但两人走的却是两条不同的路。
工作10余年来,俞军选择工作时的因素始终没变:看重自己在一份工作中做的事情,而不是公司和行业本身。
所以在博士毕业后为了将多年所学的知识运用到实践中且能和市场结合,而不是做一些偏底层的技术工作,他的前两份工作在两家分别做3G通信网络和硬件系统软件开发的外企。
和黄明国在BAT工作了8年一样,俞军在第二家外企同样工作了8年之久。8年的时间足以让一个行业壮大,也足以让一个人成长。在外企的8年,俞军经历了从普通工程师到团队leader再到部门leader三个阶段,并且从这家公司开始从事架构设计与管理相关的工作,为后期跨进互联网行业打下了坚实的基础。
去年,俞军离开工作多年的外企正式向互联网行业进军,他通过朋友推荐的形式加入了一家媒体转型互联网的企业,以CTO的身份同时负责两条业务线,其中国外的一款打车软件便是公司的全新产品,他进去以后可以从0到1地去设计架构,做一款直接面向市场和用户的产品,并在用户增长的过程中接触和实现高可用和高并发,这也是这家公司吸引他加入的主要原因之一。
从传统外企到互联网公司,俞军不否定会面临种种不适。「由于公司之前没有技术负责人,很多项目都是一块块砖垒起来的,垒到一定高度后离远了一看才发现整体比较乱,这时候,需求一旦有变化后就完全不适用了。所以我进去以后的第一件事是带着产品、运营等部门加班加点地解决第一个需求。但是老的代码谁都不敢动,所以后期我在持续不断地做重构。」除了这些工作外,作为公司的技术负责人,俞军还要承担部分和其他部门的沟通以及人员招聘与管理的工作,职责上更加全面。
「但我想跳槽的原因就是离开舒适区,瞎折腾呗。」俞军自嘲地笑着说,在他看来,传统IT行业和互联网行业并没有那么大的区别,无论使用哪种技术栈,大家在工作中会遇到的问题都是相通的。况且现在的网络这么发达,想学习什么新技术都可以在网上通过各种渠道获取。所以我们从他的经历中可以看出,他每一次的职业选择都在接受更大的挑战和未知,但每一次他都能很好地解决。
我很好奇他是怎样做到这一点的,交流之后发现这或许和他的心态有关。虽然比黄明国年长2岁,俞军却看上去并不像40岁的人,从外表到言行,都可以感受出他面对困难时的淡然和对自己技术水平的自信,而不是大龄码农身上固有的那种焦虑感。
在他看来,每个年龄都有每个年龄会面临的问题,比如他以前经常和组里的年轻人聊天,发现话题最后总逃不开买房买车、成家立业,在这些方面,年轻人还存在很大的焦虑。但是对于年龄较大的程序员来说,「成家立业」中的「成家」基本已经完成,接下来就可以把重心放在「立业」上了。
「当然年龄带给程序员的压力在所难免,但是从另一方面来看,我觉得这也不是多大的事儿。因为年轻人也有老去的一天,这是正常的新陈代谢。如果现在某一年龄段的人遇到了困境,那么比他年轻十岁的人很快也会遇到同样的困境,从这一角度来看,没有谁比谁更有优势。」俞军说。
和大多数大龄程序员不同的是,目前已经成家、育有一子一女的俞军,并不是一个完全追求work-life balance的人,他喜欢根据自己的生活节奏来安排工作时间,虽然在现在这家创业公司,他每天晚上7点左右下班,但回家休息整顿一番后,却会重新投入到工作中。
俞军说他是一个比较实际的人,对于很多大龄码农口中所说的「写不动了」心存不解。如果是因为家庭和生活上的事情分解了工作时长,倒还可以理解。但如果纯是精神上的「写不动了」那就是一种自我放弃。
在俞军看来,写代码是一项考验智商和情商的工作,而不是劳力工作。真正能把代码写得非常好的那些人,一定是双商都很高的。从这里可以看出俞军作为一名大龄程序员的傲气,交谈中他聊起以前在外企工作时遇到的一个50多岁的外国码农,写的代码无论怎么测都测不出bug,语气里满是敬佩。
今年10月,由于上一家公司所做的项目因资金链断裂而停掉的缘故,俞军通过100offer入职了现在这家互联网创业公司从事架构师的职位。现在这家公司无论在技术栈还是公司平台方面都合他心意,目前的岗位也能让他将前10年积累的技术经验得以最大施展。
大龄码农会被时代抛弃吗?属于俞军的黄金时代似乎才刚刚开始。
100offer说:
从黄明国和俞军身上,我们能看到大龄码农存在的两种状态:焦虑和自信。很多时候,大龄程序员之所以会焦虑,主要还是两方面原因:一种是家庭生活难两全带来的抉择,另一种是对自身技术水平的不自信。而后者才是大多数大龄码农焦虑的源头。
而那些对自己技术不自信的人可能多年都在从事着普通开发的岗位,既得不到职位的晋升也提不起学习新技术的兴致。如某互联网金融公司的HR所说,这一现象在面试的过程中就能体现出来。比如他们曾面试过的很多大龄码农,使用的框架和技术比较老旧,虽然他们对新技术也有所了解,却因为精力有限的原因没有落地执行,这种类型的程序员自然与高速发展的企业并不匹配。
这个时代很残酷也相对公平,残酷的地方在于世界的变化之快容不得人有片刻懈怠,公平的地方在于:不论你是年轻还是年老,都要靠实力说话。那些被时代抛弃的永远都是跑得比较慢甚至在原地徘徊的人,即所谓的工作十年却只有一年工作经验。
年轻程序员的优势在于年轻和激情,大龄程序员的优势在于阅历和经验。所以,年轻程序员不要有跨越年龄阶段的焦虑,大龄程序员也不要觉得年轻人抢了自己的饭碗。每个年龄段都有自己要解决和面临的问题,认清自己内心真正的需求和渴望,再去寻找适合自己的栖身之地打怪升级,才是当务之急