2026 年的今天,已经很少有人再去讨论 AI 是否会取代程序员这一话题了,人们似乎都默许了 AI 终会取代程序员这一结局,只是大家都避免去讨论具体的时间节点。
但事实真是如此吗?或许 AI 只是会把近十几年来我们所熟悉的这个行业形态,变回到应属于它的样子,“全能开发”与“领域专家”将会这个行业仅需的两种人才。而那些被岗位划分保护着的程序员们将会被淘汰。
那么,过去的软件开发行业是什么样的?为什么同样是编程工作却会被细化为如此之多的岗位?未来的软件开发行业又会变成什么样?希望通过这篇文章与读者们一同分享,作为从业者的我,在 AI 冲击下的一些思考。
## 过去: A programmer
上个世纪 60 年代,大型计算机在西方的企业、大学和政府的普及,使得程序员这一职业进入了主流视野。这个时期程序员们的工作与现在有着极大的不同,程序员们根据业务部门的需求,对照着如同字典一般厚度的手册,在纸带上打孔,或者是在电传打字机上打字,将程序和数据一同送入计算机中。计算机会按照程序处理数据,然后将结果打印出来,再由程序员们“翻译”后转交给业务部门。
随着集成电路技术的发展,70年代末,以 Apple II 而为代表的个人电脑走入普罗大众的家中,编程这一活动不再仅限于企业雇员,而是一项所有人都可以参与的活动。这一时期有一群热爱编程与计算机的人,例如 Guido van Rossum[^1](吉多·范罗苏姆), Linus Torvalds[^2](林纳斯·托瓦兹), Bill Gates(比尔·盖茨), Steve Jobs(史蒂夫·乔布斯)等等,他们塑造了我们如今所熟悉的计算机与编程开发工作,也塑造了计算机软件开发领域的文化——开放与共享。
而到了90年代到新世纪的第一个10年,无论是为企业信息化提供软件方案,亦或是给 Windows 图形化桌面系统开发个人软件,也或许是开发一个互联网的网站服务,这一时期程序员的需求达到了一个极高点,而程序员的高薪资待遇也吸引了许多人前赴后继投入这个行业之中。过去那种因为热爱才去做的时代,不复存在。
在这一时期,程序员之间的工作差异并没有那么明显,一个程序员通常会承担许许多多的工作,包括但不限于程序的文档资料、程序的界面开发、核心业务逻辑、服务器的运维、客服工作等等,甚至可能包含给老板修打印机。在这一时代,由于技术选项并不算多并且业务相对简单,因此以当下的眼光来看,人人都是全栈人才。除了一些特殊行业(例如:游戏开发),程序员之间的分化并没有那么严重。
## 现在: 无形壁垒
2008 年 iPhone 3G 发布,其首次搭载了 3G 网络,并允许用户通过 App Store 安装第三方软件。这一款手机的发布,标志着信息时代进入了第二个时期:移动互联网时代。新的互联网入口,极大的扩展了互联网服务的呈现方式,加之移动客户端、桌面客户端、网站的开发流程完全不同,因此岗位出现了分化——前端(客户端)开发、后端(服务端)开发。
2008 年,我国的手机上网用户仅为 7305 万人[^3]。到了 2013 年,已经达到了 4.64 亿人,占网民群体的 78.5%. 互联网用户群体的暴增,带来了许多新的挑战:一个小小的程序错误,可能会导致成千上万人受到影响。为了提高系统的可靠性,在技术发展越发复杂,在管理上为了权责的划分,也将后端开发的岗位进行了进一步的细分:业务程序员、架构师、数据库管理员、运维人员、产品经理、专职测试 QA 人员。
至此,我们所熟悉的行业组织形式已然出现:
- 岗位不再承担具体的角色,而是为了达成某一目的的零件,个人所持有的技能被岗位的权责所限制。并且这些岗位并非技术上不可合并,而是管理上的“风险管控”。
- 团队中的绝大多数人,可能根本不了解系统是如何运作的:前端开发人员不知道用户输入的数据在系统内是如何被处理和存储的,后端开发人员也不知道用户的交互是为何而设计且如何实现的。
- 每个人只要负责足够小的一个模块,每个人都可以非常轻易地被另一个人所替代。
塑造这一切的,既有客观原因:用户量的增加、软件组织复杂度的提高、安全与合规性的挑战等等。但不可忽视的,一些人为因素进一步加剧了整个行业的变化,从人才培养到职业晋升都变得如此畸形:公司经营的风险管控、HR 的评价体系简化、短期绩效考核带来的奖惩机制等。
这样的工作组织形式,与工厂流水线无异,每个人只需要专心并负责自己手上的工作即可。无论是工业时代,还是信息时代都足以证明,这样组织形式,在生产力没有得到突破之前,一定是最优解。其成就便是这十几年来高度信息化的社会,与极为丰富的信息服务体验。
## 未来: 全能技术与领域专家
2022 年末,ChatGPT 问世,无比自然的交流与回答,颠覆了人们对于人工智能在过去二三十年的传统认知,但在信息技术领域,程序员们依然对其嗤之以鼻,认为其只是一个可笑的玩具。
三年之后的 2025 年,氛围编程 (Vibe Coding) 这一编程范式被提出,并且被一些人所实践。其核心方法非常简单:将你的需求告诉大语言模型 AI ,全盘接受 AI 给你的代码,百分之百信任其结果,并不做进一步测试与检查。
完全依靠氛围编程打造一个足以支撑千万用户级别的项目并不现实(因为编程的难点并非是写代码),但使用 AI 完成一些枯燥的工作内容还是绰绰有余,这些工作内容的特点即没有任何复杂度,却需要输入大量的代码才能完成,例如:CRUD[^4]、表单、测试用例等等。
解放程序员工作中的体力与心智负担,仅仅只是 AI 的表象。
AI 对于程序员而言,真正本质更像是一个放大器:它不会凭空创造认知,却会成倍放大程序员已有的知识、经验与判断力。一个对系统缺乏理解的人,即便借助 AI 写出大量代码,也难以判断其正确性与边界;而真正理解业务与技术的人,则可以借助 AI,将原本需要数周的工作压缩到极短时间内完成。
这也意味着,AI 不会抹平程序员之间的差距,反而会迅速放大这种差距。过去依靠岗位分割来掩盖能力差异的组织方式,将难以为继。AI 迫使每一个从业者直面一个问题:你真正为系统提供的价值是什么?
在这样的背景下,未来的程序员岗位,很可能会收敛为两类角色。
第一类,是全能技术开发者(并不是全栈!更不是全干!)他们并不追求在单一技术点上的极致深度,但必须对系统整体有清晰的、完整的认知与理解:业务边界如何划分、技术方案如何取舍、风险在哪里、成本在哪里。他们的主要工作,不是亲自完成所有编码,而是持续地拆解问题、组织实现,并引导 AI 完成大量执行层面的工作。全能技术开发者并不是“什么都做的人”,而是当问题尚未被正确定义时,依然需要站出来,对系统结果承担责任的人。
第二类,是领域专家。他们会向更深的专业领域持续下沉。他们专注于某一类关键技术或复杂业务,对其约束、极限与演化路径有着长期积累的理解。在 AI 的辅助下,他们可以更高效地进行方案推演与设计验证,但最终的判断依然依赖于经验与认知本身。越是关键、越是不可逆的决策,越难被完全自动化。他们的价值,也并不体现在给出更多答案,而体现在更清楚地知道:哪些方案在现实世界中是不可接受的。
当这两类角色逐渐成为主流,那些高度依赖流程,只负责系统中极小一部分,却缺乏整体认知的岗位,将不可避免地失去存在的意义。这并非 AI 的残酷,而是生产力跃迁后的自然选择。
当 AI 可以替人完成越来越多的执行性工作时,程序员之间真正的分野,将不再体现在“会不会写代码”,而体现在是否有人愿意,且也有能力,为问题的定义、边界与结果承担责任。
AI 并没有终结程序员这个职业,而是迫使它回归本质——程序员不再是“写代码的人”,而是“理解问题并构建解决方案的人”。
## 结语
在七、八年前,我曾在网上向他人请教过一些关于职业规划的问题,虽然没有给出明确的答复,但那位大佬给我的一句话,至今让我受益匪浅。在 AI 冲击行业的当下,这句话更是进一步验证了它的价值。
> 我们与其他人的不同,并不是因为会写代码,而是更懂计算机。
[^1]: Guido van Rossum: 软件编程语言 Python 的创造者。Python 在如今人工智能的领域是一门不可或缺的语言,从研发到上线或许都会用到它。
[^2]: Linus Torvalds: 电脑操作系统 Linux 系统的创造者。Linux 系统是一种主要用于服务器与数据中心的电脑操作系统,世界上绝大多数的服务器都使用 Linux 系统。
[^3]: 数据来自于中国互联网络信息中心 CNNIC 的《中国互联网络发展状况统计报告(2008年7月)》
[^4]: CRUD: Create, Read, Update, Delete 的缩写,表示数据的增删改查。
AI时代之下,程序员的过去、现在和未来
2026 年的今天,已经很少有人再去讨论 AI 是否会取代程序员这一话题了,人们似乎都默许了 AI 终会取代程序员这一结局,只是大家都避免去讨论具体的时间节点。
但事实真是如此吗?或许 AI 只是会把近十几年来我们所熟悉的这个行业形态,变回到应属于它的样子,“全能开发”与“领域专家”将会这个行业仅需的两种人才。而那些被岗位划分保护着的程序员们将会被淘汰。
那么,过去的软件开发行业是什么样的?为什么同样是编程工作却会被细化为如此之多的岗位?未来的软件开发行业又会变成什么样?希望通过这篇文章与读者们一同分享,作为从业者的我,在 AI 冲击下的一些思考。
过去: A programmer
上个世纪 60 年代,大型计算机在西方的企业、大学和政府的普及,使得程序员这一职业进入了主流视野。这个时期程序员们的工作与现在有着极大的不同,程序员们根据业务部门的需求,对照着如同字典一般厚度的手册,在纸带上打孔,或者是在电传打字机上打字,将程序和数据一同送入计算机中。计算机会按照程序处理数据,然后将结果打印出来,再由程序员们“翻译”后转交给业务部门。
随着集成电路技术的发展,70年代末,以 Apple II 而为代表的个人电脑走入普罗大众的家中,编程这一活动不再仅限于企业雇员,而是一项所有人都可以参与的活动。这一时期有一群热爱编程与计算机的人,例如 Guido van Rossum(吉多·范罗苏姆), Linus Torvalds(林纳斯·托瓦兹), Bill Gates(比尔·盖茨), Steve Jobs(史蒂夫·乔布斯)等等,他们塑造了我们如今所熟悉的计算机与编程开发工作,也塑造了计算机软件开发领域的文化——开放与共享。
而到了90年代到新世纪的第一个10年,无论是为企业信息化提供软件方案,亦或是给 Windows 图形化桌面系统开发个人软件,也或许是开发一个互联网的网站服务,这一时期程序员的需求达到了一个极高点,而程序员的高薪资待遇也吸引了许多人前赴后继投入这个行业之中。过去那种因为热爱才去做的时代,不复存在。
在这一时期,程序员之间的工作差异并没有那么明显,一个程序员通常会承担许许多多的工作,包括但不限于程序的文档资料、程序的界面开发、核心业务逻辑、服务器的运维、客服工作等等,甚至可能包含给老板修打印机。在这一时代,由于技术选项并不算多并且业务相对简单,因此以当下的眼光来看,人人都是全栈人才。除了一些特殊行业(例如:游戏开发),程序员之间的分化并没有那么严重。
现在: 无形壁垒
2008 年 iPhone 3G 发布,其首次搭载了 3G 网络,并允许用户通过 App Store 安装第三方软件。这一款手机的发布,标志着信息时代进入了第二个时期:移动互联网时代。新的互联网入口,极大的扩展了互联网服务的呈现方式,加之移动客户端、桌面客户端、网站的开发流程完全不同,因此岗位出现了分化——前端(客户端)开发、后端(服务端)开发。
2008 年,我国的手机上网用户仅为 7305 万人。到了 2013 年,已经达到了 4.64 亿人,占网民群体的 78.5%. 互联网用户群体的暴增,带来了许多新的挑战:一个小小的程序错误,可能会导致成千上万人受到影响。为了提高系统的可靠性,在技术发展越发复杂,在管理上为了权责的划分,也将后端开发的岗位进行了进一步的细分:业务程序员、架构师、数据库管理员、运维人员、产品经理、专职测试 QA 人员。
至此,我们所熟悉的行业组织形式已然出现:
- 岗位不再承担具体的角色,而是为了达成某一目的的零件,个人所持有的技能被岗位的权责所限制。并且这些岗位并非技术上不可合并,而是管理上的“风险管控”。
- 团队中的绝大多数人,可能根本不了解系统是如何运作的:前端开发人员不知道用户输入的数据在系统内是如何被处理和存储的,后端开发人员也不知道用户的交互是为何而设计且如何实现的。
- 每个人只要负责足够小的一个模块,每个人都可以非常轻易地被另一个人所替代。
塑造这一切的,既有客观原因:用户量的增加、软件组织复杂度的提高、安全与合规性的挑战等等。但不可忽视的,一些人为因素进一步加剧了整个行业的变化,从人才培养到职业晋升都变得如此畸形:公司经营的风险管控、HR 的评价体系简化、短期绩效考核带来的奖惩机制等。
这样的工作组织形式,与工厂流水线无异,每个人只需要专心并负责自己手上的工作即可。无论是工业时代,还是信息时代都足以证明,这样组织形式,在生产力没有得到突破之前,一定是最优解。其成就便是这十几年来高度信息化的社会,与极为丰富的信息服务体验。
未来: 全能技术与领域专家
2022 年末,ChatGPT 问世,无比自然的交流与回答,颠覆了人们对于人工智能在过去二三十年的传统认知,但在信息技术领域,程序员们依然对其嗤之以鼻,认为其只是一个可笑的玩具。
三年之后的 2025 年,氛围编程 (Vibe Coding) 这一编程范式被提出,并且被一些人所实践。其核心方法非常简单:将你的需求告诉大语言模型 AI ,全盘接受 AI 给你的代码,百分之百信任其结果,并不做进一步测试与检查。
完全依靠氛围编程打造一个足以支撑千万用户级别的项目并不现实(因为编程的难点并非是写代码),但使用 AI 完成一些枯燥的工作内容还是绰绰有余,这些工作内容的特点即没有任何复杂度,却需要输入大量的代码才能完成,例如:CRUD、表单、测试用例等等。
解放程序员工作中的体力与心智负担,仅仅只是 AI 的表象。
AI 对于程序员而言,真正本质更像是一个放大器:它不会凭空创造认知,却会成倍放大程序员已有的知识、经验与判断力。一个对系统缺乏理解的人,即便借助 AI 写出大量代码,也难以判断其正确性与边界;而真正理解业务与技术的人,则可以借助 AI,将原本需要数周的工作压缩到极短时间内完成。
这也意味着,AI 不会抹平程序员之间的差距,反而会迅速放大这种差距。过去依靠岗位分割来掩盖能力差异的组织方式,将难以为继。AI 迫使每一个从业者直面一个问题:你真正为系统提供的价值是什么?
在这样的背景下,未来的程序员岗位,很可能会收敛为两类角色。
第一类,是全能技术开发者(并不是全栈!更不是全干!)他们并不追求在单一技术点上的极致深度,但必须对系统整体有清晰的、完整的认知与理解:业务边界如何划分、技术方案如何取舍、风险在哪里、成本在哪里。他们的主要工作,不是亲自完成所有编码,而是持续地拆解问题、组织实现,并引导 AI 完成大量执行层面的工作。全能技术开发者并不是“什么都做的人”,而是当问题尚未被正确定义时,依然需要站出来,对系统结果承担责任的人。
第二类,是领域专家。他们会向更深的专业领域持续下沉。他们专注于某一类关键技术或复杂业务,对其约束、极限与演化路径有着长期积累的理解。在 AI 的辅助下,他们可以更高效地进行方案推演与设计验证,但最终的判断依然依赖于经验与认知本身。越是关键、越是不可逆的决策,越难被完全自动化。他们的价值,也并不体现在给出更多答案,而体现在更清楚地知道:哪些方案在现实世界中是不可接受的。
当这两类角色逐渐成为主流,那些高度依赖流程,只负责系统中极小一部分,却缺乏整体认知的岗位,将不可避免地失去存在的意义。这并非 AI 的残酷,而是生产力跃迁后的自然选择。
当 AI 可以替人完成越来越多的执行性工作时,程序员之间真正的分野,将不再体现在“会不会写代码”,而体现在是否有人愿意,且也有能力,为问题的定义、边界与结果承担责任。
AI 并没有终结程序员这个职业,而是迫使它回归本质——程序员不再是“写代码的人”,而是“理解问题并构建解决方案的人”。
结语
在七、八年前,我曾在网上向他人请教过一些关于职业规划的问题,虽然没有给出明确的答复,但那位大佬给我的一句话,至今让我受益匪浅。在 AI 冲击行业的当下,这句话更是进一步验证了它的价值。
我们与其他人的不同,并不是因为会写代码,而是更懂计算机。