30岁后的程序员出路在哪里?

新浪看点
摘要:代码能写一辈子么?程序员30 岁以后的路是继续码代码,还是要转管理?
我是程序员,也是老司机。我已过而立之年,也还没过而立之年——年纪是到了,却还没有立,不论是立德、立言还是立功。你问我慌不慌,我问你路在何方。
我当程序员数数日子,八年有余,自封老司机也不算太过分,至少写过的代码比吃过的盐多。那些碰到过的臭虫,被指派的需求,请求的网页,搜索的问题,都是沿路的风景。你问我风景美不美,我问你前路在何方。
我写过客户端、做过网站、写过后端服务,踩过的坑,多过别人埋过的地雷。网页开发很无聊,客户端适配也枯燥,服务器高并发只能靠重启。你问我焦虑不焦虑,我问你午夜加班键盘声,是不是如同窗外蛙鸣焦躁不安。
你问我迷茫不迷茫,我问你前方该左移还是右移。
30 了,写代码十年八年了,老司机们 coding 的时候很熟悉左移和右移,但是开车到这个年纪……想想当年读着侯捷的书,看着人家「左手程序右手诗」,羡慕着他的功成名就,文笔风流。到如今,开始流行「左手右手一个慢动作」,动作一慢下来,就开始在想:
30 岁以后的路,该怎么走?是该继续码代码,还是转管理?还是左手程序,右手做点其它的营生?那几年以后,左边的手艺是不是该放下了?还是勇敢创业?30 岁后的路,该左移还是右移?
代码能写一辈子么?这是个问题。英国的莎士比亚并没有告诉我们答案。85 年的我,身边不少 30 岁左右的程序员。一起看看,在写代码的这条大路上,老司机们的焦虑和迷茫。

左:代码写到底?右:果断转管理?
不少朋友,30 左右,开始考虑是否要转管理。左转还是右走?
向左转有什么好处?让我们来看看:
-
代码写到底,生活简单。
-
升高级工程师,升架构师,升资深架构。从技术菜鸟,到技术大拿,到技术大神,一路打怪升级,也算是技术人的封神之路。
-
管理做不来,沟通好累。“与人斗,其乐无穷”,只是可惜,咱欣赏不来。
-
开会好无聊。一天到晚各种开会,人生简直各种虚度啊。
-
有的人很喜欢写代码,总感觉写代码的时光是最纯粹、最幸福的。
-
管理比较虚,后面不好找工作。技术积累一步一个脚印,这家挂了,还有下一家。
-
不会写代码的 CTO 不容易管理别人。写代码的人,和武侠世界一般,谁的水平高,谁更容易让人折服。领导的过程,就是带人修炼的过程。水平不行,别人怎么从你的实战中修炼?你看大侠乔峰,松鹤楼上显露其有成就、有名望;杏子林中展示其有魄力、有本领。带领丐帮七八年来,一直顺风顺水,大家心服口服。(欢迎参考阅读《萧峰论》)

上图是网传的百度薪资,你看,技术层级蛮多的,够打怪升级很久了。不少人天池有限,可能到 T7 左右就到尽头了。不过别丧气,T7 package 上限也能到近百万了,北京房价是贵了些,但是买个小房子过一辈子总是没太大问题。非技术行业的人,能搞定年薪百万的又有多少?
向右什么好处?让我们来瞅瞅:
-
代码写到一定层次,发现也就那么回事。
-
技术转管理,新的挑战,新的趣味,还能接触各种管理层,扩展人脉。
-
我就是这么外向,管管人挺有挑战,挺有趣味。
-
管理人是们艺术,而写代码只是技术。艺术是活的,代码是死的。
-
走管理,未来创业可以当 CEO,而走技术,未来创业,更多的是 CTO。
-
管理做得好,才能管更多的人,让更多的人围绕着自己的想法去做产品。人越聪明,越有抱负,能想掌控更多。很多时候,做技术的无法决定技术团队的招聘,无法决定产品的走向,无法决定的事情太多了。而走管理,你慢慢能掌控的事情会更多,你能管理一个小组,一个技术团队,你能管理一个部门,你能管理一个事业部,你能管理一家公司,你能管理一个集团——也就是说,技术,产品,销售,运营,你都能管,全方位的挑战,自然就有全方位的成长空间和机会。
左:做工程?右:转算法?
我虽然工程出身,不过也涉猎算法,面试过的算法候选人也有几百个了。有一个面试的原则是,算法得在白板上写写代码。不写代码,那是耍流氓。不是说模特都开始学习 Python 了么,光简单写写 Python 脚本,就敢号称自己是深度学习的高手,那我们找一个数学系的学生得了。
人到 30, 虽然还不算人到中年,还不需要保温杯,不过前路到底如何走,也是操碎了心。身边有不少朋友,觉得自己写不动代码了,打算转算法。
可见,你想往东走,可能东边的人正想往西走。如同围城,城外的人想冲进去,城里的人想逃出来。各有各的苦恼。做工程就一定比做算法差么?事实并不见得:
1.工程的工资也不低。
谷歌传奇 Jeff Dean 就是偏工程的大佬,他的工资可不见得比任何机器学习的大佬低。能搞出谷歌三大神器(Bigtable, Mapreduce, GFS),做出机器学习平台 Tensorflow,照样牛逼。算法不够好,我们不妨了解算法专注工程啊。算法也需要训练、GPU、分布式、存储、嵌入式,都是工程师的机会。
国内不少牛人,也主要是工程出身。像阿里巴巴合伙人多隆,级别 P11,他一个人能顶一个高效顶尖的团队。看他做过什么——文件系统 tfs、key-value 系统 tair,cache、搜索、通讯框架...别告诉我这些是算法或者深度学习的活儿。百度出过戴文渊这样的算法牛人(目前第四范式创始人),也有林仕鼎这样的工程好手。你问我谁比较厉害,我只能说各有千秋。
2.不见得每个做算法的都可以长久
算法干得长久的固然有,但不见得每个做算法的都长久。举个简单的例子,大家回顾一下整个数学发展,出过的少年英才多,还是大器晚成的数学家多?高斯,欧拉,伽罗瓦,阿贝尔,哪个不是少年成名?
算法更新较快,更需要创造性。我敢说,国内的大部分公司,并不需要科学家,也请不到称得上“家”称号的科学家。原因很简单,聪明的工程师看看论文也能实现出来。做得快,训练快,调试快,各种超参数、网络结构等快速做实验,靠工程能力,快速高效搞定优质的大数据,效果比什么都管用。
3.工程师究竟能写到几岁
就看操作系统和编程语言的几个大佬吧。Linux 之父 Linus 虽然成名早,现在也快 50 了,他不写代码了么?C++ 之父,1950年出生,依然活跃在技术圈。
Python 之父,1960 年出生,这会儿依然在技术公司任职,目前应该在 Dropbox。你可能说这些人都是大佬,没有参考意义。我身边接触过的几个 CTO, 目前依然在写一些代码,能加班,能 Review 代码。

C++ 之父
4.写过的代码,都是你的财富
写过的代码版权归公司,但都是你的财富。写一百遍一样的代码,没法增值,但是踩过一百个不同的坑,就是你独有的经验和价值。刚毕业的人没法有,正如刚毕业的人没法有岁月雕刻的皱纹一样。
有一个很有意思的问题,我面试的大部分工程师,哪怕比较资深的,对机器学习都没什么概念,别说 DNN,CNN,LSTM 等,对决策树,SVM,CRF 也完全陌生。相反很多北大清华的应届生,对这些目前热门的机器学习算法都比较熟悉,不少在相关的领域中,使用这些算法发表过论文。换句话说,年轻人搞新算法更有优势。
5.人工智能和深度学习这么火,工程要趁热打铁
人工智能是很火热,但人工智能公司里大部分都是工程师,科学家和研究员没几个。老板不会给你那么多时间搞研究,能跟上最新的研究成果,就足够在业界领先了。最好的百度可能需要最牛逼的科学家,但是Top 10靠牛逼的工程师就够了。人工智能创业百花齐放,AI + 传统行业的机会多多,目前人工智能的机会,肯定不是一家两家赢者通吃。
6.泡沫总会过去
泡沫,总是容易过去的。等你学好了吴恩达的机器学习课程,做好了面试准备,可能到时候你的竞争力还不如普通架构师值钱。
左:打工赚钱? 右:创业冒险?
当技术积累到一定程度的时候,大部分人都会技痒难耐,考虑创业。原因有几个:
-
给别人写代码,期权从几千股到几万股, 比例从毫不知情到万分之几、千分之几就不错了。自我感觉很好,但并不是创始人,也不是早期员工。高回报和自己关系不大。
-
公司发展很快,不代表自己发展很好。
-
你需要给自己一次超越领导的机会,需要一次弯道超车的机会。
-
你喜欢什么事情你来安排,你说了算。你不喜欢别人指指点点,尤其是那些不那么让你服气的人。
-
你喜欢冒险,未知的世界真刺激。
-
你喜欢挑战,挑战技术、管理、产品、运营。在全方位的挑战中,你的阅历得到丰富,思考得到升华。
-
你有好的产品想法,想要让它在你手里变成现实。让用户喜欢、受益、着迷享受,你喜欢着用户的喜欢,你忧伤着用户的不便。
30 了,写过的代码如同作家,早已著作等身。30岁的你,坐在冷板凳上,可能写过了网站,写过了 Java,写过了 C++,甚至也赶上了机器学习、深度学习的热潮。你发现,你需要更大的挑战。于是,很多人创业了——不管是万事俱备,还是仅凭一腔热血,总之,你冲上去了。听说创业成功的比例万中无一,但是你管不了那么多,且行且走吧。
面试过几个候选人,在创业公司当过 CTO或者合伙人 ,技术深度一般,擅长的是技术广度。其实很多创业公司的产品,技术含量并不高,哪怕你做了前端,又管理后端,你的能力在市场上不见得比 BAT T6 以上的高。加上天天会议,代码生疏,技术深度并不够,大公司的高管你搞不定;A 轮+明星创业公司,技术总监你也搞不定。这几年忙各种需求,人工智能的算法也完全陌生。这类候选人,也许三四年前在 BAT 是 T6 的级别,面试过后我们也只能给到 T6 的待遇。因为没有人会为你全面但不突出的能力买单。
每个人都有自己的路,别人的路不一定合适你,适合你的路也不一定适合别人。大家都需要根据自己的能力,心态,综合决策,再做出是继续给别人打工,还是单枪匹马出去闯江湖。

左:打工赚钱? 右:创业冒险?
互联网是高科技,高科技是第一生产力,生产力高,自然薪资也高。于是,这几年,互联网行业水涨船高。尤其是人工智能时代的来临,各行各业都开始忧虑了起来:我们行业会不会被 AI 取代?要不被取代,如该何想办法和 AI 结合?AI + 农业怎么样? AI + 医疗怎么样?AI + 教育呢?AI + 传统零售呢?总之,三百六十行,行行出 AI 。
互联网这么火,人才这么贵,那么为什么还有很多人要离开互联网,转行到传统行业呢?想了想,至少有以下原因:
-
互联网太累。累了容易过劳死,累了还容易脱发。君不见,互联网行业的写字楼电梯里,经常看到生发的广告—— XXX,这是一个神奇的生发灵药。
-
互联网竞争太激烈。做个团购,一下子涌现出来几千家,最后剩下一两家。做个互联网金融,出来一波就是几十几百家,一死便是几十上百家。做个智能音箱吧,大厂小厂,先别管有 AI 没 AI,大家一起上啊先,马上形成百箱大战的局面,红海一片,过几年肯定也是哀鸿遍野。
-
互联网技术更新换代太快。前几年还学着 ASP.NET,过两年就开始学 C Sharp,学完了C Sharp,还没见自己犀利( sharp )起来,大家又开始集体玩 Java了。写 C 的人写代码的日子加了几年,开始学 C++,转眼 C++ 的那拨人,又学谷歌内部发明的 Go 语言。
-
互联网人太单纯。单纯本来没啥不好,但是有了孩子,有了社会关系,太单纯就不容易玩得转了。可能你钱攒了一些,但是社会地位还是低。大家自嘲叫码农,叫程序猿,叫屌丝。最近就出了几个码农届的大新闻:一个是某家公司产品更新日志里赫然写着要杀程序员「祭天」,真是语不惊人死不休。另一个则更是惊天动地,当老板的某程序员,被其前妻逼死了,原因是被敲诈,要么赔一千万的精神损失费,要么等着去把牢房坐穿。0 和 1 构建出来的虚拟世界很复杂,但是真实世界并非只有 0 和 1、对和错,真实世界复杂到程序员们玩不转。
-
互联网人才市场太火热。太火热本来是好事,但是当聪明人都往互联网涌时,压力就来了。互联网火,奥赛冠军们都学计算机去了,搞理论的都进产业界了,北大清华学霸们都和你抢饭碗了,海归大牛们都纷纷回国谋求机会了,你说竞争激不激烈?自诩聪明的你,也不得不今天学习统计学,明天看看深度学习,后天关注自然语言处理。
写到这里,我突然想起来我高中求学的经历。2001 - 2004 年,我读高中,寄宿在学校附近,房东大概有六间房出租,一间房子一个学期大概收入六百块钱。一年下来大约 1200 * 6 = 7200。旁边的一些房东们,有的有十几个房间在出租,一年租金两三万。当时我一个月生活费大约 400,这么算下来,收房租够让两口子过上衣食无忧的生活了。当然,大北京的房租,目前已经到了一个月四千到一万的水平了,世事如此,十几年前的我是万万想不到的。
有一些朋友也在想,要不在北上广工作几年,攒一些钱,回家去花。正如人家在美国赚美金,回中国来花人民币。老家也许房子还不贵,也许一百万就能买不错的房子?咱们大城市奋斗几年,小城市买上它三套房,一套用来住,两套用来租,每天一觉呼呼到天明,我们也过上小时候梦想的收租金的生活啦——翘着二郎腿收租金的日子,过得真他妈舒服啊。
当然,回家做个小生意,开个小卖部,或者开一个超市,或者开一个饭馆,都是路。30 岁了,既然前进的路多歧路,那就看看退路——到处都是退路。条条大路都是余生的路。
结语
30 岁了,我们有过荣耀,有过痛苦,有过迷茫,正如朴树的《路途》唱到:“我们路过高山,我们路过湖泊,我们路过森林,路过沙漠,路过人们的城堡和花园,路过幸福,我们路过痛苦,路过生命中漫无止境的寒冷和孤独”。
这是个旅途。路途多歧路,歧路中有几个困惑和选择:
-
做工程,还是转算法?
-
代码写到底,还是果断转管理?
-
打工赚钱,还是创业冒险?
-
互联网混到底,还是转行收房租?
30 岁了,不管是否三十而立,总归我们都是成年人了。面对困惑,我们都应该深思熟虑,做出成年人的选择。
这世界真好。
本文著作权归待字闺中以及其作者所有,如有侵权,请联系新浪新闻客户端。
微博热议——
@互联网Tony(科技公司高管):
35岁、40岁对于程序员而言几乎是职场“生死线”,互联网大部分都是青春饭,产品经理也一样,到了这个年龄段,公司就把你归到“老人”的行列了,认为你干不动了,也不懂年轻人了。
@故胤道长(网友):
最近的一点心得和思考,其实很多事情没有高下之分,只有左右之别,想过什么样的生活是自己的选择。
@TAKA-ZAU(网友):
不仅是程序员啊,每种职业甚至个体都是一样。做自己想做的事,过好自己的生活,焦虑了累了迷茫了就歇一歇,攒足力量又再启程。人有时候就是想太多,过于在意他人目光,太多包袱,要知道夜深入眠时,妳还是那个妳,专注于自己最重要。
@磊诚刘辉(经纪经理):
程序员本就是吃青春饭的,35岁以下的程序员劳动产出率是最高的,之后就会逐年递减。靠做外包和做业务逻辑是积累不了经验的,找准一个点做精才是积累经验的正确方式,通过不断的攻克难关来甩下竞争者,到最后才会成为无可替代的业界大牛。
延伸阅读
裁撤中年技术员工让程序员发懵
找工作的时候就选做数据处理的,专攻这一块,没想过转型做其他。因为数据是永恒的。
在你眼里“程序员”是怎么样的一群人呢?说说你的想法。