软件工程接下来两年
2026-01-13
AI
00

目录

1. 初级开发者的问题
2. 技能的问题
3. 角色的问题
4. 专家 vs. 通才的问题
5. 教育的问题
贯穿其中的一条主线

说明:本文为 Addy Osmani《The Next Two Years of Software Engineering》的非官方中文译文,侧重意译与本地化表达,以便中文读者理解。如与原文有出入,请以原文为准。

软件行业正处在一个奇怪的拐点上。AI 写代码已经从「类自动补全的超级输入法」进化到能自主执行开发任务的代理。支撑过去十几年扩招潮的经济繁荣已经退场,取而代之的是效率优先:公司更偏向利润而非增长,更愿意用有经验的人而不是应届生,更青睐小团队 + 强工具。

与此同时,新一代开发者带着截然不同的考量进入职场:更务实地看待职业稳定性,对「奋斗文化」更加怀疑,从入门那天起就把 AI 当助手。

接下来会发生什么,其实相当不确定。下面是五个可能塑造 2026 年软件工程走向的关键问题,每个问题都有两种对立的情景。这不是预测,而是帮助你做准备的几副「观察镜」。目标是给出一条相对清晰的应对路线:既基于现有数据,又保持这个圈子一贯的理性怀疑。


1. 初级开发者的问题

结论:初级开发者的招聘要么因 AI 自动化而大幅萎缩,要么随着软件渗透到各行各业而重新繁荣。两种未来,对应完全不同的生存策略。

那条传统路径——「学会写代码 → 找一份初级岗位 → 慢慢成长为高级」——正在摇晃。一项覆盖 6200 万职场人的哈佛研究发现:当公司开始采用生成式 AI 后,在六个季度内,初级开发者的就业会下降约 9–10%,而高级开发者的岗位几乎不受影响。过去三年,大厂招聘应届生的数量减少了大概一半。正如一位工程师略带愤世嫉俗地说过的那样:差不多意思是「既然花更少的钱就能买到一个 AI 写码代理,为什么还要招年薪 9 万美元的初级工程师?」

这当然不能只怪 AI。利率上升、疫情后经济回调等宏观因素从 2022 年就已经开始起作用,那时候 AI 工具还远没这么普及。但 AI 明显加速了这个趋势:一个带着 AI 的高级工程师,现在能完成过去需要一个小团队才能搞定的工作。公司更多是在「悄悄不招新人」,而不是「大规模裁人」。

另一种情景则相反:AI 反而释放出对开发者的巨大需求,而且不再局限在「互联网公司」。医疗、农业、制造业、金融等行业开始深度嵌入软件和自动化。开发工作不是被 AI 替代,而是被扩散到过去没有程序员的地方。我们会看到更多入口岗位,但形态会变成「AI 原生开发者」:他们的工作是面向垂直场景,快速搭建自动化和集成。

美国劳工统计局仍然预计 2024–2034 年软件岗位整体将增长约 15%。只要企业是用 AI 扩张产出,而不是简单裁员,就始终需要人来抓住 AI 创造的新机会

悲观情景下的长期风险常被忽略:今天的初级,是 5–10 年后的高级和技术管理者。如果彻底切断人才入口,最终得到的是一个缺乏新一代领导者的生态。行业老兵把这叫做「缓慢腐烂」:整个系统不再认真训练自己的继任者。

怎么应对:

初级开发者:

尽快让自己变成「AI 熟练工 + 多面手」。向雇主证明:一个新人 + AI 的组合,能接近一个小团队的产出。用 AI coding agent(如 Cursor、Antigravity、Claude Code、Gemini CLI)去完成更大的功能块,但要尽可能理解并讲得清自己写出的每一行代码。刻意训练 AI 不容易替代的能力:沟通、问题拆解、领域知识。多留意相邻岗位(QA、DevRel、数据分析等)作为入口。认真搭作品集,尤其是整合 AI API 的项目。也考虑学徒制、实习、外包、开源等路径。你的定位不能只是「需要培训的新人」,而是「能马上产生价值、同时学习速度极快的工程师」。

高级开发者:

新人更少,意味着更多基础活会落到你头上。要懂得把可重复工作交给自动化,而不是一股脑自己扛。铺好 CI/CD、静态检查和 AI 辅助测试,让工具先挡住基础问题。即便公司不招新人,也可以通过开源或跨部门协作,非正式地承担培养角色。同时要如实向管理层指出「全高级团队」的风险:缺少梯队会在几年后反噬组织。如果哪天公司重新开始招新人,要提前准备好 AI 辅助的带人体系,学会利用 AI 拆任务、做示范,把更多精力放在设计与决策。你的真正价值,是放大全队产出,而不只是个人代码量。


2. 技能的问题

结论:如果让 AI 写掉绝大部分代码,核心编程能力可能会退化;但也可能因为人类更多负责「兜底」而变得更关键。我们接下来几年,要在「速度」和「理解」之间做选择。

现在约有 84% 的开发者常态化使用 AI 辅助。面对一个 bug 或新需求,很多人第一反应已经不是开写,而是构思 prompt,然后把 AI 生成的代码拼接起来。入门开发者往往直接跳过了「笨办法」阶段:可能一辈子都不会亲手实现一棵二叉搜索树,也未必独立排查过一次复杂的内存泄漏。

技能结构正在改变:从自己实现算法,变成问对问题、审对答案。职业阶梯的第一阶,开始要求「会 prompt、会验证 AI 输出」,而不是「纯手写能力」。不少高级工程师担心,这会养出一代「离开 AI 就写不出东西」的程序员。更麻烦的是,AI 生成的代码往往带着隐蔽 bug 和安全漏洞,而经验不足的人难以察觉。

然而也有相反的走向:AI 负责 80% 的常规活,人类集中精力攻克最难的 20%。系统架构、复杂集成、创造性设计、各种边界条件——这些依然离不开人。在这种模式下,深厚知识并未过时,反而变得更稀缺。高杠杆工程师用 AI 放大自己的影响力,但要有足够理解才能驾驭它。

当人人都有 AI 编码代理,真正区分优秀与平庸的,是谁更知道何时应该质疑 AI。一位资深工程师的说法是:「最好的软件工程师不会是码字最快的,而是最知道何时不该信 AI 的那批人。」

编程工作本身也会改形:少些样板代码,多些审查 AI 输出的时间——找逻辑 bug、找安全问题、看是否真的符合需求。变得最关键的,是软件架构、系统设计、性能调优和安全分析。AI 很快能做出一个 Web 应用,但只有真正懂行的人,才能确保它遵守了安全最佳实践,不会暗藏竞态等隐患。

2025 年的开发者圈子里,观点已经明显分化:有人承认几乎不再「徒手写代码」,觉得面试也该跟着变;也有人坚持认为,绕开基本功迟早会在生产事故里付学费。行业越来越倾向于「两手都要硬」:既要有 AI 的速度,也要保留扎实的基础判断力。

怎么应对:

初级开发者:

把 AI 当成老师,而不是拐杖。用 Cursor、Antigravity、Claude Code、Gemini CLI 等工具时,认真 review 它给出的代码:搞清为什么能跑,哪里脆弱。定期给自己「关 AI」训练:主动安排时间独立实现一些经典算法和数据结构。优先夯实几块核心基础:数据结构与算法、复杂度分析、内存管理。可以尝试「双写项目」:同一功能先让 AI 写一版,再自己写一版,对比思路和质量。刻意训练 prompt 能力和工具熟练度,但更要用心练测试功底:自己写单测,看懂堆栈信息,习惯用调试器,而不是报错一出就丢给 AI。刻意接触那些 AI 难以替代的技能:系统设计、用户体验直觉、并发与容错思维。用作品证明你既能用 AI 快速交付,又能在 AI 出错时自己接管。

高级开发者:

给自己设定的角色应该是「复杂度与质量的守门人」。磨练架构、安全、扩展性和领域知识这些硬核能力。多练习用「人+AI」的方式设计系统,思考不同环节应该由谁来做,以及每种失败模式的后果。持续关注 AI 生成代码里的安全漏洞,并了解最新防护方法。接受并强化自己的「导师 + 审核人」角色:定义清楚在哪些场景可以依赖 AI,哪些领域(比如支付、风控、安全相关代码)必须严格手工审核。把更多时间用在创造性和战略性工作上:日常 API 打通可以交给「新人 + AI」组合,你负责决定哪些 API 值得做。刻意训练软技能和跨领域理解:把复杂系统讲清楚,把多方诉求协调好,把技术方案翻译成业务语言。真正不可替代的,是判断力、系统视角和带人的能力。


3. 角色的问题

结论:开发者要么被压缩成只负责「审核 AI 代码」的检查者,要么进化为统筹 AI 系统的关键 orchestrator。无论哪种走向,价值都远远超过「能写代码」本身。

两种极端画面都已有雏形。

一种未来里,开发者的创造性职责被削弱。软件主要由 AI 系统(或使用低代码平台的「公民开发者」)构建,人类开发者则负责审核与托底:检查 AI 生成的代码、排错、防偏见、防安全事故、批准上线。创作者变成审查者,写代码的成就感被「风险管理」的紧张所替代。

已经有工程师反馈,自己花在审 AI 提交的 PR 和管理自动化流水线上的时间,越来越多;亲手写代码的时间,反而越来越少。编程的体验,从「解决问题的创作过程」,变成「合规框架下的最后一道防线」。有人这样抱怨:「我可不想最后成了 AI 丢过来的代码的清洁工。」

另一种未来更令人兴奋:开发者成为高层「编排者」,把技术、策略与伦理揉在一块。AI 像一群数字工人,人类开发者则像总包,负责设计整体系统,决定哪些任务交给哪个 AI 或软件组件,把所有部分编织成解决方案。

一位低代码平台的 CEO 曾用「作曲家」来比喻这种角色:在一个「智能代理遍布」的开发环境中,工程师不需要亲自写每一个音符,而是编曲与指挥——设计架构、定义接口、规划 agent 如何协作。这份工作天然是跨学科的:既是软件工程师,也是架构师、产品合伙人。

乐观的一面是:当 AI 接管更多重复劳动后,开发者的工作不得不往高价值活动迁移:想做什么、为什么做、怎么做得合理。工作本身可能更有趣:总要有人决定 AI 应该构建什么、判断结果是不是靠谱,并长期迭代。

具体走向,很大程度取决于组织如何看待 AI:把它当「劳动力替代品」的公司,更偏向压缩开发团队,让剩下的工程师负责看护自动化系统;把它当「团队倍增器」的公司,则会维持差不多的 headcount,让每位工程师借助 AI 完成更雄心勃勃的项目。

怎么应对:

初级开发者:

从一开始就尝试走出「只写业务代码」那一个格子。主动参与写测试用例、搭 CI 流水线、做监控告警——这些技能都自然对齐「审核者 / 守护者」这一类角色。同时,用个人项目保留纯粹的创造乐趣,不要在早期职业阶段就只剩下「看日志」的机械任务。刻意训练系统思维:多画架构图、多观察组件之间的边界,琢磨一个优秀 API 的特征。观察并学习 AI 工具之外的自动化与编排框架。把沟通能力当硬技能练:认真写文档、写变更说明,学会对自己的代码给出清晰的解释和风险评估。问高级同事时,不只问「这样写对吗」,还要问「我漏掉了哪些需要考虑的点」。用这样的方式,为自己未来成为设计者、审核人、沟通者同时打基础。

高级开发者:

尽量从「高级码农」走向「技术总监 / 总导演」。你该关注的是:AI 使用的规范与边界、代码质量标准、伦理与合规策略,以及统一的工程文化。保持对 AI 软件相关合规与安全议题的敏感度。把系统设计和集成当成主战场:梳理跨服务的数据流,识别关键故障点,设计可观测性和回滚策略。熟悉各种编排平台(Kubernetes、Airflow、Serverless、agent 编排工具等),视它们为你的「乐队指挥台」。把更多时间投入到 code review 和设计讨论上,而不是自己一个人冲在最前线写最多的代码。训练自己快速评估他人(或 AI)代码的能力,从边界条件、维护成本和演化空间等维度给出反馈。主动培养产品和业务感知:理解为何要构建某个功能,而非只关心怎么实现。用原型、内部 hackathon 或技术探索项目保持对「从零探索」的热忱与直觉。


4. 专家 vs. 通才的问题

结论:只在窄领域深挖的专家,随时可能被自动化或技术更迭边缘化;而拥有广泛适应力,并在一两处有深度的 T 型工程师,将在这个快速变化、AI 深度融合的环境里占据优势。

在模型、工具和框架迭代速度如此之快的当下,把整个职业押注在某一条技术栈上,风险很大。某个旧框架的大师级专家,很可能在新一代工具出现后,发现自己曾经引以为傲的领域变成边缘地带。那些只精通「单一技能」的人(比如只会把设计稿切成 HTML 的前端、只会极端调 SQL 的后端),会发现 AI 已经自动化掉他们 90% 的工作。

COBOL 程序员、Flash 开发者、没跟上引擎迭代的手游专家,都是过往版本。而如今 AI 会让这种替换来得更快、覆盖面更广:它可以把某一类基础任务彻底压平,留给人的只剩高层决策与复杂部分。

招聘端也永远追逐最新热点。几年前大家挤破头去招云基础设施专家,如今又纷纷追捧 AI/ML 工程师。如果一个人只在过去热门领域里深挖,却没有横向扩展能力,就很容易在趋势拐点时陷入瓶颈。

另一种更健康的路径,是变成「多面一深」的 T 型工程师:在一两块上有真正的深度(那一竖),同时对周边多个领域有足够理解。这样的人经常是跨职能团队中的「粘合剂」:能和各路专家对话,也能在必要时亲自下场补位。

公司越来越不愿意要「只有皮毛的全才」或「只能在一个坑里挖的匠人」,更希望看到的是:有一个硬核主场,同时具备跨域协同和快速上手的能力。原因很简单:效率上,一个 T 型工程师能少很多接口、少很多扯皮;创新上,多领域知识的交叉更容易产生好点子。

AI 工具本身是通才的倍增器:只要有基本理解,AI 就能帮你快速构造出足够好的解决方案。后端可以借助 AI 写个像样的前端,前端可以在 AI 帮助下搭个还不错的后端。于是,一个人可以在更多层级上发挥作用。而过窄的专家,一旦其领域被部分自动化,就会缺乏横向腾挪的空间。

如今约有 45% 的工程岗位在招聘 JD 中明确写了「需要多领域能力」,比如同时掌握编程与云基础设施、前端与一定的机器学习知识。

怎么应对:

初级开发者:

在职业早期就把地基铺宽。即便入职 role 很明确(前端 / 后端 / 移动 / 数据),也要主动去看一看链路上下游:做移动的,学点后端 API 设计;做前端的,写个最简单的服务端;不管在哪一层,都去了解部署过程,玩玩 Docker、GitHub Actions 这类工具。在此基础上,挑一两块你真的感兴趣的领域深入,这会成为你的纵向深度。给自己贴标签时,用「X 方向为主、兼具 Y 能力」来描述,比如「前端 + UX」「全栈 + 云原生」。用 AI 做扩展加速器:在不熟的领域,让 AI 帮你搭雏形,再亲自走完调试和迭代。刻意练习「不断重学」:多参加跨职能项目或 hackathon,逼自己走出舒适区。职业初期,适应能力与学习速度,就是你最重要的护城河。

高级开发者:

先给自己画一张「技能雷达图」:哪几块是 8–9 分以上的强项,哪些是略懂一二,哪些几乎空白。选择一两个紧挨着你主场的领域,给自己定目标,把它们从 2 分练到 6 分。你是数据库专家,就试着掌握一门主流前端框架或 ML pipeline 的基础;你是前端性能狂热者,就深入了解后端性能瓶颈和云资源优化。做一两个「弱项 + AI 搭档」的小项目,让自己在新领域也有实战经历。思考你的深度如何嫁接到新场景:比如 web 性能优化经验怎样迁移到 ML 推理性能调优。主动设计更「跨界」的岗位定位:做多系统集成的 owner,或者做多团队协作中的「接口人」。带人的时候,采用技能互换模型:你传授你的专长,同时向对方学习你欠缺的东西。在简历和对外介绍中,清楚写出你的 T 型轮廓:你在哪一两块有真正话语权,同时在哪些方面能稳稳接住需求。


5. 教育的问题

结论:CS 本科可能依然是重要通行证,但未必继续独占舞台。节奏更快、成本更低的学习路径(训练营、在线课程、企业学院等),正在成为通往软件行业的主流道路之一。

四年制 CS 学位长期以来是进入软件行业的标准门票。但如今,这个传统正在被重新审视。

一种未来是:大学依然重要,但越来越跟不上节奏。学位继续是默认的简历筛选条件,但课程更新缓慢、审批流程冗长,让教学内容严重滞后于业界需求。学生和雇主都觉得,学校教的要么过时,要么离实际工作太远。

不少毕业生反馈,整个本科阶段几乎没系统学过云计算、现代 DevOps,更不要说大规模使用 AI 工具。如果大学一边索取高昂学费和四年时间,一边提供过时或欠缺的内容,那它会越来越像一个昂贵却难以绕开的门槛。很多公司出于惯性仍然要求本科学历,但 依然要花数十亿美元来培训新人,因为他们缺乏上手就用的技能。大学可能会陆续加入一些「AI 伦理」或者「云计算」的选修课,但等课程真正落地,业界主流工具又迭代了几代。

另一种更激进的情景,是传统教育逐渐被新的学习体系分流:编码训练营、在线证书、自学作品集、企业自办培训等等。越来越多的大公司(比如 Google、IBM)已经在部分岗位上正式取消了「必须本科」的硬性要求。2024 年,接近 45% 的公司计划在某些岗位上取消学士学位门槛

训练营本身也在成熟,能够稳定输出被一线公司录用的毕业生,与 CS 本科生同场竞争。这类项目周期短(例如 12 周高强度训练),但重点在实战:当前主流框架、云服务、团队协作。招聘的「通货」正在从纸质学位转向作品、微证书和可验证技能。一个扎实的 GitHub 作品集加上一两张含金量高的认证,完全有机会越过传统的学历门槛。

雇主驱动的教育也在崛起:公司自建培训体系,或与训练营联合打造专门的培养项目。一些大厂已经开始办内部「大学」,招收非传统背景的候选人。AI 自身也在改变学习方式:AI 教师、互动编程环境、个性化学习路径,让「不在大学里学」成为可行的高效选项。

一个模块化、更加开放的学习生态,远比昂贵的四年制学位更具可达性。没有名校资源的小城青年,也能通过 Coursera 等平台上同样的课程、做同样的开源项目,和硅谷学生站在同一条起跑线上。

怎么应对:

有志入行 / 初级开发者:

如果你正在读 CS,本科可以是基础,却不该是全部。尽早做真实世界的项目:写一个线上可用的 Web 应用、向一个开源项目提交 PR。争取实习或 co-op,把课堂内容与实际工作连接起来。如果课程没有覆盖热门领域(云、DevOps、AI 工具等),就主动通过线上课程补上,同时考虑考一些主流云厂商的认证(GCP、AWS、Azure 等),用来证明你的实战能力。

如果你是自学者或训练营学员,核心是用作品说话:至少要有一个结构完整、文档清晰、可以部署的项目。积极参与社区:参与开源、写技术博客或技术随笔。在 LinkedIn、线下技术活动等场合建立人脉,让有经验的工程师为你背书。把「持续学习」当成职业常态,接受技术技能半衰期很短的现实。把 AI 当成你的私人导师,让它帮你读文档、解释概念、纠正错误。最终,你要向雇主证明的是:你能写东西、你学得快、你说得清楚自己在做什么。

高级开发者与技术领导:

不要指望曾经的学历光环一直有效。为自己设定「持续学习」的节奏:按年规划一些系统学习(在线课程、研讨会、技术会议等),在必要时也通过认证来逼自己更新知识。保持一两项用新技术做的 side project,以免彻底脱离一线。审视你的招聘要求:这份工作真正需要的是学位,还是一组明确的技能与学习能力?如果是后者,就尝试用技能导向来重写 JD,减少对学历的机械依赖。

支持内部培养机制:实习项目、内部转岗、学徒制,都是解决人才结构问题的工具。主动为非传统背景的新人打开入口,而不是只筛选「标准模板」。与大学、训练营保持对话:参与课程顾问、客座讲座、提供真实案例。用同样的标准审视自己的成长:比起墙上的新学位,更重要的是你是否在现实场景里解决了更难的问题,是否还在持续更新自己的思维与技能。


贯穿其中的一条主线

上述情景并非互斥。现实大概率会是它们的混合态:有的公司缩减初级岗位,有的公司在新领域扩大「AI 原生开发者」招聘;AI 会自动化大量例行编码,同时抬高人类开发者所触及代码的标准;开发者可能上午在审查 AI 输出的 PR,下午则在设计新系统的高层架构。

唯一不变的是:变化本身。保持对技术趋势的关注,同时对一切炒作保持适度怀疑,可以帮你避免被情绪和噪音裹挟。通过持续更新技能、拓宽能力边界,把注意力放在那些真正「人类独有」的部分——创造力、批判性思维、协作与同理心——你就能始终站在系统的「决策环」之内。

无论未来迎来的是一场编码的文艺复兴,还是一个「代码主要由机器书写」的世界,真正有需求的,始终是那些能通盘思考、持续学习、并推动技术去解决真实问题的工程师。

预测未来的最好方式,是亲手把它造出来。

本文作者:Rose

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!