slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
程序员的归宿
17611538698
webmaster@21cto.com

程序员的归宿

技术人生 0 1118 2024-06-09 01:21:45


35岁之后做什么?也许每个程序员都焦虑过这个问题。网上流传的程序员职业发展路线有几条。第一条,考公考编考教师资格证,然后转入体制内。第二条, 在技术道路上继续卷,坚持高强度学习,从初级程序员,到高级程序员,然后 转型架构师或者项目管理,然后跳槽到更小的公司当CTO,或者自己开公司创业。最后,转型成IT培训讲师,卖课作为职业生涯的归宿。第三条,不想继续卷了,30岁就躺平,35岁就去开网约车或者送外卖。上面三条路,都不那么理想。第二条路好一点,但是以卖课退场,似乎也不完美。

我自己是土木工程专业毕业的,转行当程序员,现在51岁了,软件架构师,也算 半个程序员。我女儿现在读大一,已经表现出对编程序有浓厚兴趣。我元旦去她 学校看她,刚好遇到她为了交作业熬通宵写代码。我估计,她未来也会成为一名 码农。我很清楚,这个工作相当辛苦,但是我并不反对她选择这个职业。下面就 讲一讲我对这件事的看法。

职业既是收入的来源,也是成就感的来源。如何选择职业,也应该从这两方面看。

先说收入方面,既要考虑近期收入水平,也要考虑长期收入稳定性。程序员近期 收入水平是不差的,在二线城市,土木机械行业的本科应届毕业生,大多数起薪 不到1万,但是程序员的起薪普遍1万以上。如果能进入互联网大厂,月薪很可能 超过2万。这也是为什么很多其他专业本科生读研的时候选择“转码”的原因。其实, 人生最需要钱的阶段,也就是年轻那几年。大学刚毕业,本来收入就低,又面临着 买房、 买车、结婚养小孩,每一样都需要钱。年轻选择当程序员, 经济压力会 稍稍小一点。大部分程序员,可以靠自己努力在二线城市买房成家,一线城市很 困难。过了年轻这几年,小孩上了小学,生活都进入了平稳状态,只要收入能 覆盖日常开销,量入为出,经济压力就没有那么大了。

程序员这个职业,稳定性确实不行。这也是程序员都很焦虑“35岁门槛”的主要原因。码农劳动力市场,是一个充分竞争的市场。除了自身技术水平之外,几乎没有任何 其他进入门槛了。没有行业准入限制,任何专业毕业,只要自己愿意,都可以当码农。无论是否能够胜任,只要年轻,都可以争取到试用的机会。不只中国这样,全世界 都这样。

大部分其他职业都是有准入门槛的。例如,想要当医生,要求执业医师资格证,不是 任何人都能给别人看病开药的。没有行医资格证给别人乱开药,出了事是要坐牢的。当律师也要有律师证书,没有律师证是不能帮人打官司的。新西兰搭建脚手架的工人, 都要考资格证,要参加好几个月的培训,才能拿到这个证书,然后才能持证上岗。前段时间韩国医生罢工,是因为韩国打算增加医科生招生数量,这样韩国从医人数 就会增加,解决了韩国百姓看病难、看病贵的问题,但是韩国医生的收入会下降。这个既得利益群体就激烈反对,就罢工。

为什么程序员没有资格证呢?其实是有一个的,叫做“计算机技术与软件专业技术 资格(水平)考试证书”,一般叫做“软考证书”。这个证书在体制内可能有点用, 但是,在真正的软件开发行业里用处很小,大多数企业招聘的时候,都不看这个证书。编程知识的迭代升级相当快,无论你是多么资深的程序员,2年不学习就会感觉到落伍, 5年不学习就会被淘汰,这不是危言耸听。想靠一个资格证考试来评判程序员的专业 技术能力,完全不现实。重视资格证书的企业,都被市场淘汰了。

既然程序员的职业稳定性很差,是不是应该尽早转行?这是一个见仁见智的问题, 不同的人,看法完全不一样。有人觉得这个问题很严重,必须要解决,就趁着35岁之前, 考公考编“上岸”了。

我的看法不同,我认为很难找到绝对稳定可靠的工作,所谓“稳定”的工作, 也只是相对稳定。我甚至觉得,这类“稳定”的工作蕴藏着更大的风险。一旦从稳定 岗位上失业,会更难适应。我92年来成都上大学,那时候成都东郊有很多国营工厂, 里面的工人收入很好,他们是婚恋市场的抢手货,如果谁家姑娘嫁入成都东郊工人家庭, 是被人羡慕的一件事。就在几年之后,我大学刚毕业,国有企业下岗潮就开始了,遭受 冲击最大的一批人,就是成都国有企业的工人。很多人自以为可以在国有企业干一辈子, 对下岗毫无准备,完全无法适应这种变化。几年前,全国各地的高速公路系统都安装ETC, 一大批高速公路收费员下岗,有些人对着镜头哭诉:"我的青春都奉献给了高速公路 收费站,现在让我下岗,我以后靠什么吃饭?" 最近两年房产市场低迷,对建筑设计 行业产生了很大的冲击。据传西南建筑设计院可能会有1000人下岗,这个企业曾经 是很多人梦寐以求的理想工作单位。现在是人口负增长的时代,可以预见,未来教师 一定会缩编,甚至偏远地市公务员也可能缩编。从长期来看,没有什么岗位是绝对 稳定的。加强自己的学习能力,提升自己对变化的适应能力,才是可靠的方法。所谓“笼鸡有米汤锅近,野鹤无粮天地宽”,就是这个道理。

软件开发行业是否会一夜变天?就像教培行业、房地产行业一样?我估计不会。

从宏观层面看,社会对于软件的需求,至少还能平稳持续几十年。跟房地产行业不同, 软件已经渗透到了各行各业。我最近几天拉肚子,昨天晚上在微信公众号上挂了一个 家附近医院的号,早晨步行到医院,打开手机二维码在诊室门口排队机上注册,然后 看着电视大屏幕等着喊号。医生看完之后给开了两样检查,然后手机缴费,去化验室 递交化验样品,然后手机扫码拿报告交给大夫复诊,然后支付宝缴费拿药。然后回家 通过人脸识别进入小区大门和楼栋单元门。就在10年之前,这些还都没有。医院不能 自助打印报告,也不能在支付宝上自行支付,必须要到收费窗口排队。小区大门也 没有人脸识别。所有这些,都是程序员努力的结果。

现在看来,这种趋势还会继续延续下去。最近AI大模型发展,给整个行业带来了无尽的想象空间。前几天一个大学 建筑系的教授问我,是否懂AI大模型技术?他希望把建筑专业知识跟AI大模型结合起来, 做一些创新工作。大部分人每2-3年就要换手机,汽车自动驾驶系统的竞争非常激烈, 电动汽车出口大幅度增长,比亚迪大批量招收的应届毕业生,所有这些,都是软件行业 增长的动力。最近两年,无人机在战争中大显身手,实际上,无人机的核心部分也是 软件。据说F35战斗机软件的代码量超过了2400万行,单独计算它的设计成本,软件 占据了很大一部分。现在几乎所有家电、仪器设备里面都有软件。家用的煮蛋器、 电子秤、体温计、指夹式血氧仪,医院的各种医疗设备,实验室的示波器,...,很难 找到完全没有软件的设备。有这么多需求,就需要有人开发产品来满足这些需求, 程序员也就有事做。

程序员找工作几乎不受地域限制,只要学好英语,就可以在世界各地找工作。甚至可以 住在中国,远程为欧洲公司工作。其他职业就做不到这一点,谁听说过自己身边的朋友, 在国内受教育,然后出国当律师,或者出国当医生的?

从国际竞争角度看,中国的软件产品竞争力会越来越强。2023年中国开发的游戏在海外 市场的收入是300亿美元,而中国的数据库市场也不过60亿美元。华为手机和无线基站 一直是被某些国家禁止的,现在居然连Tiktok这种短视频网站都要禁止了。这只能说明 中国软件的竞争力越来越强。现在对方甚至已经开始禁止自己的某些产品在中国销售了, 本来中国在基础软件领域几乎没有翻身机会,这样一来,对于数据库、存储产品等 这些基础软件来说,简直是天赐发展良机。程序员最好不要个人去海外众包网站去接 外包任务,这是赚外国人钱最笨的方法,中国程序员根本无法跟印度码农竞争。开发有 竞争力的产品销往海外,才是效率比较高的方法。

尽管软件行业本身没有衰落的迹象,但是具体到某个程序员个人,却未必能够适应 行业发展。一旦学习能力下降,跟不上行业发展,就可能失业,被迫转行送外卖, 这也是事实。程序员怎么提高技术能力和学习能力?只能以战养战,在战争中学习战争。对于已经开始工作的程序员来说,多花时间把跟自己工作相关的技术学透,通过解决 一个一个难题,来提升自己的技能水平,才是效率最高的方法,是捷径。如果你是游戏 程序员,但是花了很多时间去读Linux内核源码,你认为Linux内核才是“高技术”,这 其实是效率最低的方法。因为你的这些学习行为,没有一个稳定的、明确的目标,遇到 困难问题就会绕开,这样只能学到皮毛。另外,你外围没有人跟你讨论,进步也不会很快。

对程序员来说,另外一个发展误区是,想要凭借加班来实现快速进步。你每天加班 到很晚,也许在某些公司可以快速升级加薪,但这不是真正的职业能力进步。也就是 说,不能通过被动加班来快速获得实际能力增长。实际能力的增长,还是要不停的主动 思考、积极实践,靠解决实际问题来获得。在很多大公司都有一大批想不通这个道理的 程序员,他们实际能力不强,但是加班特别积极,职级低的时候上升很快,但是到了年薪 60-80万左右的时候,就提升不上去了。再往上走,就很难靠超长加班来晋升了。我面试 的时候就遇到过这一类人,虽然他们年收入60-80万,但是讲不清楚存储行业最常用 知识点,例如:一致性hash的原理、bloom过滤器的原理等等,只是知道名词,你让他 讲工作原理,他讲不清楚。这些人通过加班,奋斗到年薪60-80万,已经差不多40岁了, 发现自己很难再靠加班朝上走了,身体和家庭两方面都不再允许超长加班了,在大厂 随时可能被淘汰。于是就想找个小厂过上平衡一点的生活。但是,他们出来面试之后, 就会发现很困难,小厂虽然加班少一点,但是对能力的要求一点不少,甚至比大厂更高。

年龄并不是程序员被淘汰的最主要因素,丧失学习能力,停步不前,才是主要因素。对程序员来说,真正的困难不是年龄增长本身,而是行业要求你的能力随着年龄 不停增长。如果你在年轻的时候没有积累足够的知识和经验,随着年龄的增长, 学习能力也会随之下降,这就处于被淘汰的边缘了。如果你在持续成长,那么很自然 就会被任命为团队领导、架构师、项目经理等,无论你自己是否愿意。因为团队缺少 骨干,一定会要求能力更强的人承担更多责任。要想不被淘汰,坚持卷下去是唯一途径。

从成就感方面来说,程序员是很少数能够获得简单快乐的职业了。每当完成了一个模块, 或者解决了一个困难的Bug,就能体验到发自内心的轻松和喜悦。另外,软件本身确实 让这个世界更美好了,每个程序员都能切身感受到。如果你写代码这件事让你非常痛苦,并且你也感受不到丝毫价值,那最好尽快离开这个行业。这方面就不展开谈了。

关于"码农35"的问题,想清楚之后,就没有那么焦虑了。如果年轻的时候想不清楚,到 50岁的时候,大概率也就想清楚了,只要你能坚持卷到50岁。大和尚说,开悟前砍柴 担水,开悟后也是砍柴担水,心境不同。对码农来说,开悟之前辛辛苦苦写Bug,开悟 之后也是辛辛苦苦写Bug,只是焦虑感会少一点。

作者:黄岩

zStorage首席架构师。熟悉存储、网络等技术。微信:huangyan063136


评论