谷歌云AI总监,Addy Osmani发了一篇博客文章:《未来两年的软件工程》。

软件行业正处在一个充满悖论的奇异时刻。

AI代码生成工具已经跨越了简单的自动补全阶段,进化为能够自主执行开发任务的智能体。

曾经推动科技行业疯狂招聘的经济繁荣期已经结束,取而代之的是冷酷的效率指令。

企业不再盲目追求规模增长,利润成为首要考量。

经验丰富的资深人士受到青睐,应届毕业生备受冷落。

小而精的团队配备强大的工具,正在取代过去的人海战术。

新一代开发者正带着截然不同的计算逻辑进入职场。

他们务实地关注职业稳定性,对过度奋斗的文化持怀疑态度,并且从接触代码的第一天起就有AI相伴。

接下来的两年充满不确定性。

作者站在数据的基石上,透过行业特有的怀疑精神,梳理出可能会塑造2026年软件工程格局的五个关键问题。

这是为即将到来的变化准备的应对路线图。

初级开发者的生存空间正在重构

初级开发者的招聘市场面临着前所未有的分化。

一种可能是初级岗位因AI自动化而崩塌,另一种可能是软件技术渗透至各行各业从而引发需求反弹。

这两种截然不同的未来要求我们采取完全不同的生存策略。

传统的职业路径正在摇摇欲坠。

过去那种学会写代码、获得初级职位、慢慢成长为高级工程师的晋升阶梯已经出现了裂痕。

哈佛大学(Harvard)针对6200万名工人的一项研究发现了一个令人不安的趋势。

当公司引入生成式AI后,初级开发者的就业率在六个季度内下降了约9%至10%,而高级开发者的就业率几乎没有波动。

大型科技公司在过去三年里减少了50%的应届毕业生招聘量。

一位工程师提出了一个尖锐的问题。既然一个AI编码智能体的成本更低,为什么还要花9万美元雇佣一个初级开发者。

这不仅仅是AI带来的影响。

加息和疫情后的市场修正等宏观因素在2022年左右就已经开始冲击就业市场。

AI技术的普及加速了这一趋势。

现在一个拥有AI辅助的高级工程师可以完成过去需要一个小团队才能完成的工作。

公司并没有在大规模裁员,它们只是悄悄地停止了招聘新人。

乐观的剧本则描绘了另一番景象。

AI将解锁各行各业对开发者的巨大需求。

医疗、农业、制造业和金融业都开始深度嵌入软件和自动化技术。

AI不会取代开发者,反而会成为力量倍增器,将开发工作扩展到从未雇佣过程序员的领域。

我们将看到更多不同于以往的入门级角色。

这些角色是AI原生(AI-native)的开发者。

他们能快速为特定利基市场构建自动化流程和集成方案。

美国劳工统计局(Bureau of Labor Statistics)依然预计,从2024年到2034年,软件工作岗位将增长约15%。

如果企业利用AI来扩大产出而不是单纯削减人头,它们就需要人类来抓住AI创造的新机会。

悲观场景中隐藏着一个常被忽视的长期风险。

今天的初级开发者就是明天的高级工程师和技术领袖。

切断人才输送管道会导致5到10年后出现领导力真空。

行业资深人士将这种现象称为缓慢衰败。

这就像一个不再培养接班人的生态系统,最终会走向枯竭。

初级开发者必须让自己精通AI并具备多面手的能力。

你需要证明一个初级员工加上AI可以匹敌一个小团队的产出。

利用Cursor、Antigravity、Claude Code或Gemini CLI等AI编码智能体来构建更大的功能。

你必须理解并能解释每一行代码,而不是盲目复制。

重点应放在AI无法轻易替代的技能上。

沟通能力、问题拆解能力和领域知识变得至关重要。

QA(质量保证)、DevRel(开发者关系)或数据分析等相邻角色可以作为进入行业的切入点。

建立一个包含AI API集成项目的作品集。

不要做等待培训的新毕业生,要做一个能快速学习并立即产生价值的工程师。

高级开发者面临的现实是助手变少了。这意味着更多的基础工作可能会落在你的盘子里。

你应该依赖自动化来处理常规任务,而不是亲力亲为。

建立CI/CD(持续集成/持续交付)、代码检查器和AI辅助测试来捕捉基本问题。

你需要通过开源项目或指导其他部门的同事来进行非正式的导师工作。

要坦诚地向管理层说明全高级团队存在的风险。

如果对初级开发者的需求反弹,你要做好准备高效地引导新人,并教导他们如何利用AI。

你的价值在于通过技术和指导成倍提升整个团队的产出,而不仅仅是贡献代码。

核心技能的定义权正在发生转移

核心编程技能面临着两难的命运。

它们可能因为AI接管了大部分代码编写工作而萎缩,也可能因为人类开发者需要专注于监督工作而变得比以往任何时候都重要。

接下来的几年将决定我们是用理解力去换取速度,还是在速度之上构建更深的理解。

84%的开发者现在定期使用AI辅助工具。

对于许多人来说,面对Bug或新功能时的第一反应不再是从头开始编写代码,而是编写提示词并将AI生成的片段拼接起来。

入门级的编码者正在跳过那段艰难的学习过程。他们可能永远不会从头构建二叉搜索树,也不会独自调试内存泄漏问题。

技能组合正在从实现算法转变为知道如何向AI提问并验证其输出。

职业阶梯的第一级现在要求的是提示工程和验证能力,而不是展示原始的编码能力。

一些资深工程师担心这会产生一代无法独立编写优质代码的开发者,导致技术能力的退化。

AI生成的代码可能会引入微妙的Bug和安全漏洞,经验不足的开发者很难发现这些问题。

反向的剧本则认为人类将专注于最困难的那20%的工作。

当AI处理了80%的常规任务后,架构设计、复杂的集成、创造性设计和边缘情况处理将成为人类的主战场。

AI的普及非但没有让深度知识过时,反而让专家的经验变得更加珍贵。

这就是高杠杆工程师(High-leverage engineer)。他们利用AI作为倍增器,但必须深刻理解系统才能有效地驾驭它。

如果每个人都能访问AI编码智能体,那么区分优秀开发者的标准就是知道AI何时是错的或次优的。

最好的软件工程师不一定是编码速度最快的人,而是那些知道何时不信任AI的人。

编程的重心正在转移。

减少样板代码的输入,增加对AI输出的逻辑错误、安全缺陷和需求匹配度的审查。

软件架构、系统设计、性能调优和安全分析成为了关键技能。

AI可以快速生成一个Web应用,但只有专家工程师能确保它遵循了安全最佳实践,并且没有引入竞争条件。

2025年的开发者社区对此存在分歧。

一些人承认他们几乎不再手动写代码,并认为面试形式应该随之进化。

另一些人则认为跳过基础知识会导致在AI输出出错时只能忙于救火。

行业开始期望工程师兼具两者:既有AI带来的速度,又有保证质量的基础智慧。

初级开发者应该把AI当作学习工具而不是拐杖。

当AI编码智能体建议代码时,你要审查它为什么有效并找出弱点。

偶尔禁用你的AI助手,从头开始编写关键算法。

优先考虑计算机科学的基础知识。数据结构、算法、复杂度分析和内存管理依然是基石。

你可以尝试同一个项目实现两次。

一次用AI,一次不用,然后对比两者的差异。

学习提示工程和工具掌握。

训练自己进行严格的测试。编写单元测试,阅读堆栈跟踪而不是立即求助AI,熟练使用调试器。

深化AI无法复制的互补技能,如系统设计、用户体验直觉和并发推理。

高级开发者应将自己定位为质量和复杂性的守护者。

你需要磨练核心专业知识,包括架构、安全、扩展性和领域知识。

练习用AI组件对系统进行建模,并深入思考故障模式。

保持对AI生成代码中常见漏洞的敏感度。

拥抱导师和审查者的角色。

你需要定义在哪里使用AI是可以接受的,在哪里必须进行人工审查,例如涉及支付或安全的代码。

投入到创造性和战略性的工作中去。

让初级人员加AI的组合处理常规的API挂钩,而你来决定构建哪些API。

开发者角色的内涵正在扩充

开发者的角色面临着向左走还是向右走的选择。

它可能萎缩为有限的审计工作,主要负责监督AI生成的代码;也可能扩展为关键的编排者,负责设计和治理AI驱动的系统。

无论哪种情况,增加价值的方式都不再仅仅是编写代码。

这两种极端愿景非常鲜明。

在一种愿景中,开发者的创造性责任被削弱。

他们不再构建软件,而是主要审计和照看AI的产出。

AI系统或使用无代码平台的公民开发者处理生产工作。

人类开发者审查自动生成的代码,检查错误、偏见或安全问题,并批准部署。

创造者变成了检查者。

代码创造的乐趣被风险管理的焦虑所取代。

有报告称工程师花了更多时间评估AI生成的拉取请求(Pull Requests)和管理自动化管道,而花在从头编写代码上的时间变少了。

编程感觉不再像是创造性地解决问题,而更像是合规性检查。

不想成为清理AI抛出的垃圾代码的看门人,是许多工程师的心声。

另一种未来则更加引人入胜。

开发者进化为高级编排者,结合了技术、战略和伦理责任。

AI作为工人意味着人类开发者承担起架构师或总承包商的角色。

他们设计整体系统,决定哪些任务分配给哪个AI或软件组件,并将许多移动的部件编织成解决方案。

在代理式(Agentic)开发环境中,工程师变成了作曲家。

他们编排AI智能体和软件服务的合奏。

他们不会自己写下每一个音符,但他们定义旋律。

他们决定架构、接口以及智能体之间如何交互。这个角色是跨学科且具有创造性的。

它融合了软件工程师、系统架构师和产品策略师的职能。

乐观的观点认为随着AI处理死记硬背的工作,开发者的角色必然向高价值活动转移。

工作可能会变得更有趣。必须有人决定AI应该构建什么,验证产品是否合理,并持续改进它。

局势的走向取决于组织如何选择整合AI。

将AI视为劳动力替代品的公司可能会削减开发团队,并要求剩余的工程师维持自动化运行。

将AI视为团队增强工具的公司可能会保持人员数量,但要求每位工程师交付更具雄心的项目。

初级开发者应寻求编写代码之外的机会。

主动承担编写测试用例、设置CI管道或应用监控的任务。

这些技能与审计者或保管人的角色相一致。

通过个人项目保持你的创造性编码活力,这样你就不会失去构建事物的乐趣。

培养系统思维至关重要。

学习组件之间如何通信,以及什么构成了设计良好的API。

阅读工程博客和系统设计案例研究。熟悉代码生成以外的AI和自动化工具,如编排框架和AI API。

提高书面和口头的沟通技巧。编写文档时要像是在向别人解释一样清晰。

高级开发者应向领导和架构责任靠拢。

制定AI和初级团队成员遵循的标准和框架。

定义代码质量检查清单和合乎道德的AI使用政策。

关注AI生成软件的合规性和安全性话题。

专注于系统设计和集成专业知识。

主动绘制跨服务的数据流图并识别故障点。

你需要熟悉编排平台。

Kubernetes、Airflow、无服务器框架以及智能体编排工具都是你的武器。

加倍投入技术导师的角色。

进行更多的代码审查、设计讨论和制定技术指南。

磨练快速评估他人或机器代码并给出高层反馈的能力。

培养产品和商业意识,理解为什么要构建某些功能以及客户关心什么。

通才与专才的价值天平正在倾斜

狭隘的专家面临着被自动化或淘汰的风险。

快速变化且融入AI的行业环境奖励T型工程师。

这种人才具有广泛的适应性,并在这一两个领域拥有深厚的技能。

鉴于模型、工具和框架的兴衰速度极快,将职业生涯押注在单一技术栈上是危险的。

当一个新的AI工具可以极少人工干预地处理某种技术时,该遗留框架的大师可能会突然发现自己不再被需要。

狭隘地专注于单一技术栈、框架或产品领域的开发者可能会醒来发现该领域正在衰退或变得多余。

这让人想起当行业转型时没有及时调整的COBOL开发者、Flash开发者或移动游戏引擎专家。

现在的不同之处在于变化的配速。

AI自动化可以使某些编程任务变得微不足道,从而削弱围绕这些任务建立的角色。

只会做一件事的专家,比如微调SQL查询或将Photoshop设计切图为HTML,可能会发现AI处理了90%的工作。

招聘经理追逐最新的利基市场。

几年前每个人都想要云基础设施专家,现在是对AI/ML(人工智能/机器学习)工程师的需求激增。

那些狭隘地专注于昨天技术的人会感到停滞不前,因为那个利基市场失去了光泽。

相反的结果是出现了一种新形式的专业化,即多才多艺的专家或T型开发者。

他们在这一两个领域有深厚的专业知识,即垂直的一竖。

他们对许多其他领域有广泛的了解,即水平的一横。

这些工程师成为多学科团队中的粘合剂。

他们与其他类型的专家交流,并在需要时填补空白。

公司不再想要太浅薄或太狭隘的开发者。

他们想要具有强大核心能力加上跨栈工作能力的人。

部分原因是效率。T型工程师通常可以端到端地解决问题,而无需等待交接。

部分原因是创新。知识的交叉授粉能带来更好的解决方案。

AI工具实际上更多地增强了通才的能力,使一个人更容易处理多个组件。

后端工程师可以依靠AI帮助创建一个合理的UI(用户界面)。

前端专家可以让AI生成服务器样板代码。

AI丰富的环境让人们可以更广泛地操作。

与此同时,深度专家可能会发现他们的利基市场部分被自动化,却没有简单的途径扩展出去。

近45%的工程职位现在期望在多个领域具备熟练度。

编程加上云基础设施知识,或者前端加上一些ML熟悉度,正在成为常态。

初级开发者应尽早建立广泛的基础。

即使你是为了特定角色而被录用的,也要看看那个孤岛之外的世界。

如果你做移动端,学习后端基础。如果你做前端,尝试写一个简单的服务器。

学习部署流程和像Docker或GitHub Actions这样的工具。

找出这一两个让你真正兴奋的领域并深入钻研。这将成为你的垂直专业知识。

将自己打造成混合型人才,比如具有云安全重点的全栈开发者,或具有UX(用户体验)专业知识的前端开发者。

利用AI工具快速学习新领域。当你还是后端新手时,让ChatGPT生成入门API代码并研究它。建立持续重新学习技能的习惯。

高级开发者应绘制你的技能图谱。

你在什么方面是专家,你只肤浅接触过哪些相关领域。

选择一两个相邻领域并致力于变得精通。

如果你是后端数据库专家,去熟悉现代前端框架或学习ML管道基础。

在AI的帮助下,在你的薄弱领域做一个小项目。

将你的深度专业知识与新环境结合起来。

如果你专注于Web应用性能,探索这些技能如何应用于ML推理优化。

主张或设计你的角色使其更加跨职能。自愿成为涉及多个领域的项目的集成拥护者。指导他人以传播技能,同时从他们身上学到东西。成为T型角色的榜样。

在你的专业领域深入以获得权威和信心,但要积极地在水平方向上延伸。

教育认证体系正在面临大考

计算机科学学位是否仍是黄金标准,还是会被更快的学习路径所取代,这是一个悬而未决的问题。

大学可能难以跟上这个每几个月就变化一次的行业。

四年制的计算机科学学位长期以来一直是进入软件角色的主要入场券。

这一传统正在受到质疑。一种未来是大学依然重要但难以保持相关性。

学位仍然是默认的凭证,但课程设置落后于快速发展的需求。

缓慢的课程更新周期和官僚审批流程阻碍了学术界的步伐。

学生和雇主感到学术界与行业脱节,教授的理论或过时的实践无法转化为工作技能。

应届毕业生报告说他们在学位期间从未学习过云计算、现代DevOps(开发运维)或AI工具。

如果大学要求高昂的时间和金钱投入,却提供低相关性的教育,它们就有被视为昂贵看门人的风险。

许多公司出于惯性仍然要求学士学位,因此负担转移到了学生身上,他们必须通过训练营、在线课程和自学项目来填补空白。

学生贷款债务巨大,而公司花费数十亿美元培训新毕业生,因为这些毕业生缺乏职场所需的技能。

大学可能会在这里增加一门AI伦理课,在那里增加一门云计算选修课,但等到它们实施时,行业工具已经向前发展了。

颠覆性的场景是传统教育越来越多地被新系统取代。

编程训练营、在线认证、自学作品集和雇主创建的培训学院正在兴起。

Google和IBM等许多知名雇主已经取消了某些技术职位的学位要求。

2024年,近45%的公司计划取消至少部分职位的学士学位要求。

训练营已经成熟。它们培养的毕业生与计算机科学毕业生一起被顶级公司录用。

这些项目更短,通常是12周的强化训练,专注于实践技能,如当前框架、云服务和团队合作。

招聘的流通货币正在向实时作品集、微证书和经过验证的技能转移。

一个强大的GitHub作品集或受认可的认证可以绕过学位要求。

雇主驱动的教育正在兴起。

公司建立自己的培训管道或与训练营合作。

一些大型科技公司已经开始为非传统候选人建立内部大学。

AI本身提供了新的学习方式。AI导师、交互式编码沙盒和个性化指导正在大学环境之外蓬勃发展。

一个模块化的学习生态系统比昂贵的四年制学位更容易获得。

一个在没有强大计算机科学大学的国家里的孩子,可以学习相同的Coursera课程,并建立与硅谷某人相同的作品集。

有志成为或初级开发者的人如果不幸处于传统的计算机科学课程中,不要完全依赖它。

用真实世界的项目来补充课程作业。构建一个Web应用,为开源做贡献。

寻找实习或合作机会。如果你的课程缺少热门话题,通过在线平台学习它们。

获得行业认可的认证,如GCP、AWS或Azure,以通过信号展示实践知识。

如果是自学或在训练营,专注于一个引人注目的作品集。

至少有一个文档完善的实质性项目。在开发者社区中保持活跃。为开源做贡献,撰写技术文章。

高级开发者和领导者的凭证不会永远支撑你。

投资于持续教育。在线课程、研讨会、会议和认证都是必要的。

用新的方式验证你的技能。准备好应对通过实际问题评估当前能力的面试。

保持使用新技术的业余项目。

重新评估工作要求。你真的需要新员工拥有计算机科学学位,还是需要特定的技能和学习能力。

推动技能优先的招聘以扩大人才库。支持内部培训计划或学徒式角色。支持没有正规背景的初级开发者的导师圈子。

这些场景并不是相互排斥的。

现实将从所有这些场景中汲取元素。一些公司会减少初级招聘,而另一些公司则会在新领域扩大招聘。

AI将自动化常规编码,同时提高人类接触代码的标准。

开发者可能会在早上审查AI的输出,下午设计高层架构。

贯穿始终的主线是变化是唯一的常态。

通过紧跟技术趋势并保持怀疑态度,你可以避免被炒作或末日论措手不及。

通过更新技能、多样化能力并专注于创造力、批判性思维和协作等独特的人类方面,你将始终在场。

无论未来带来的是编码复兴还是代码自我编写的世界,对那些能够整体思考、持续学习并推动技术解决实际问题的工程师的需求将永远存在。

预测未来的最好方法就是去亲手创造它。

参考资料:

https://addyosmani.com/blog/next-two-years/

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐