Agent 时代,软件工程基础该学什么?
Coding Agent 的代码写得越来越好之后,开发者还要花时间学习软件工程基础吗?吴恩达就这个问题更新了他的 AI Engineering Skills Map。
这张技能图谱最早于 8 月中旬发布,整合了超过 1 万份招聘信息、数十次专家和招聘人员访谈,以及问卷等数据的整理。图谱把 AI 工程能力分成四个方向:构建和部署 AI 应用、软件工程基础、使用 Coding Agent,以及决定该构建什么。
现在,他进一步展开了其中的「软件工程基础」。在这张软件工程技能图谱里,软件工程基础被拆成五个部分:全栈应用开发、数据管理、系统架构设计、安全与可靠性,以及生产环境中的扩展与运行。

这五部分覆盖了一个软件从开发、架构设计到进入生产环境的主要工程问题。
全栈应用开发
Coding Agent 让开发者更容易跨过自己不熟悉的技术领域。过去专注于前端、移动端等方向的开发者,也可以借助 Agent 完成后端或者其他部分的工作。
但要承担更完整的应用开发,开发者仍需要理解一个应用是怎样运行的。
这里包括 UI 组件、缓存、页面渲染、API 设计、身份认证、状态与 Session 管理、异步处理、数据持久化、测试、安全和无障碍等内容。
开发者未必需要亲手完成每个环节,却需要知道这些组件分别解决什么问题,又是怎样连接在一起的。只有这样,才能判断 Agent 给出的实现是否符合整个应用的设计。
数据管理
数据管理单独列成了一类,是因为数据是软件系统的核心资产,同时也是修改成本较高的部分。
开发者需要根据数据的访问方式,决定存储哪些内容、保存多久,以及采用什么数据模型和存储方式,例如关系型表、文档、键值或者图。
这些选择会影响系统的性能、可扩展性、可用性、可靠性和成本。
数据管理还包括事务和并发控制,以及如何保证数据干净、一致和新鲜。在一些场景下,还需要考虑隐私、治理、合规和整个数据生命周期。
对于 AI 应用来说,数据架构还会影响模型能够获得什么上下文。如果信息没有被正确存储、组织和检索,AI 系统也很难获得完成任务所需要的信息。
随着应用演进,数据架构也需要随之调整。
系统架构设计
理解了软件和数据中的主要组件之后,接下来需要考虑这些组件应该怎样组合。
系统架构首先取决于软件需要解决什么问题。
用户规模有多大?对延迟有多敏感?成本要求是什么?这些条件都会影响应用平台、前后端边界、系统拆分、状态存储,以及单体和微服务等架构选择。
技术栈也属于架构决策的一部分,包括编程语言、运行时、前后端框架和数据技术。有些情况下,还需要通过实验比较几种方案,再选择更适合当前项目的一种。
架构本身也会随着项目阶段变化。
快速原型阶段使用的简单架构,到了第一个生产版本时可能需要调整;随着用户规模和业务复杂度增长,系统还可能再次演进。
安全与可靠性
一个系统进入真实环境之后,还要面对测试、故障和安全问题。
在可靠性方面,开发者需要知道怎样设计测试策略,例如单元测试和集成测试如何搭配、选择什么测试框架,以及应该覆盖哪些关键路径。
同时还要考虑各种失败场景:API 被限流怎么办?依赖服务不可用时如何处理?怎样降级服务?又该怎样控制故障的影响范围?
安全问题也越来越早地进入软件开发流程。
AI 工具可以帮助扫描代码漏洞、检查依赖中的供应链风险,也可以发现云配置中的潜在攻击面。但开发者仍然需要理解这些风险,知道哪些问题需要检查,以及什么样的结果可以接受。
生产环境中的扩展与运行
软件完成开发之后,还需要真正部署并服务用户。
这部分涉及完整的软件生命周期,包括配置部署环境、制定发布策略、使用 CI/CD 完成部署自动化,以及理解相关的基础设施服务。
应用运行之后,还需要建立可观测性、配置告警并处理线上事故。
随着负载增加,开发者还需要理解服务器扩容、负载均衡,以及通过分片、索引、复制等方式调整数据基础设施。有时,应用规模的变化还会推动整体架构重新设计。
版本控制、代码评审、依赖维护和技术债管理,也属于这一部分。它们共同决定了一个软件项目能否长期维护和演进。
Coding Agent 之后的软件工程基础
随着 Coding Agent 能够完成更多编码工作,一些过去很重要的编程知识正在降低优先级,例如记忆大量语法细节。
但对软件系统工作原理的理解依然重要。软件工程基础可以帮助开发者知道一个问题有哪些解决方案,每种方案有哪些取舍,以及在什么条件下应该选择哪一种。
当越来越多实现工作交给 Coding Agent,开发者仍然需要告诉它系统面临哪些约束、哪些目标更重要,并判断生成的方案是否合理。
从这个角度看,Coding Agent 改变的是开发者花时间的地方。
过去大量精力放在具体实现上,现在越来越多工程判断会集中在架构、数据、安全、可靠性和生产运行这些问题上。
而这些,也正是这张 Software Engineering Fundamentals 技能图谱想要覆盖的内容。
吴恩达更新AI工程技能图谱,聚焦“软件工程基础”五大核心:全栈开发、数据管理、系统架构、安全可靠、生产运维。强调即便Coding Agent能力提升,开发者仍需理解系统原理与工程权衡,以指导AI、把控质量、驱动长期演进。
浙公网安备 33010602011771号