跟上AI的步伐:软件工程师面临的痛苦新任务

软件工程拥抱AI原生时代!AI代码助手将重塑SDLC,开发者转型为AI工作流协调者。企业需评估并规划AI集成,试点AI工具,持续改进。关注安全风险,如OWASP LLM应用Top 10,强化软件供应链安全,利用平台工程管理AI工具,迎接AI原生软件工程的未来!

译自:Keeping Up With AI: The Painful New Mandate for Software Engineers

作者:Manjunath Bhat

一个以人工智能(AI)为前沿的软件工程新时代正在到来。预计到 2028 年,90% 的企业软件工程师将使用 AI 代码助手,而 2024 年初这一比例还不到 14%。

如今,开发人员使用基于 AI 的工具,例如 AI 代码助手和 AI 测试工具,但仅限于编码和测试活动。然而,Gartner 预测,未来 AI 将成为大多数软件工程任务不可或缺的一部分,并成为其原生组成部分,从而改变开发人员的工作性质及其工作方式。

软件工程领导者热衷于推动 AI 的使用,以释放生产力改进,超越编码和测试。目标是使开发人员能够专注于需要批判性思维、人类创造力和同理心的有意义的任务。例如,解决没有经过验证的设计模式的问题,尝试新的用户交互模式或花费更多时间与用户交谈。

AI 原生软件工程实践,这是一套新兴的实践和原则,经过优化,可以使用基于 AI 的工具来开发和交付软件系统和应用程序,随着开发团队重新设计其工作流程以充分利用基于 AI 的工具,这些实践和原则将会出现。例如,开发人员在其 IDE 中使用 AI 代理,这些代理主动重构代码、编写单元测试、创建文档,并在将代码合并到源代码控制存储库中时推荐代码审查者。目标是自动化端到端的软件开发工作流程,最终完全实现自动化。

开发人员如何从 AI 增强型转向完全 AI 原生软件开发

随着基于 AI 的开发人员工具的出现,软件工程已成为 AI 增强型,但基本方法和软件开发生命周期 (SDLC) 基本上保持不变。AI 已被集成到传统 SDLC 中的各种任务中,从而缩短了提前期、周期时间和提高了质量。

基于 AI 的工具将帮助开发人员超越处理繁琐的工作。这些工具将成为创意伙伴,激发人类的创造力并支持产品团队产生新的想法。这适用于产品团队中的每个角色:开发人员、产品负责人、质量工程师、站点可靠性工程师和用户体验 (UX) 设计师。

例如,基于 AI 的开发工具中的多模式功能对于帮助激发人类创造力至关重要。产品经理或 UX 设计师无需盯着空白画布,而是可以使用 AI 设计工具将文本提示、屏幕截图或纸质草图转换为图像和视觉原型。这些支持工作流程的视觉内容创建平台,包括 Codia、Figma、Motiff、Recraft、Uizard 和 Visily,然后可以迭代设计,一旦设计完成,UX 设计师可以将这些设计转换为 HTML 和 CSS。

软件工程师和开发人员将需要磨练他们的技能。组织只有在其员工能够有效地使用 AI 原生实践时,才能成功采用这些实践。例如,以精确且明确的自然语言清楚地表达需求的能力对于充分利用基于 AI 的开发工具至关重要。

迈向 AI 原生软件工程的旅程的特点是整个 SDLC 中自主和半自主任务的比例不断增加。

像代码编写这样的任务,开发人员传统上使用基于规则的样板代码生成,自然会发展到包括 AI 代码助手来帮助编写代码。最终,AI 将在开发人员的指导和监督下自主生成代码。开发人员将开始使用 AI 辅助开发工具执行所有日常任务,并最终学会将任务卸载给 AI 并协调代理团队。

开发人员作为 AI 驱动工作流程的协调者的演变角色

在 AI 原生软件工程中,开发者的角色更像是乐团指挥,而不是音乐家。他们的主要角色是指挥乐团的音乐家,以便这些音乐家理解乐曲并演奏它。就像乐团指挥必须深刻理解音乐一样,担任指挥角色的开发者必须深刻理解软件工程。

AI 原生工程实践可以在上游开发工作流程中实现更好、更快的决策。例如,产品团队可以使用 AI 支持的分析来进行数据驱动的产品路线图决策,以验证或反驳主观的人为选择。然后,团队可以加快创建原型,以加速可行性研究并规划明智的前进道路。其他上游用例包括产品设计、用户采用分析和功能优先级排序。

此外,扩展开发者能力可以带来关键的业务价值。大多数业务关键型软件交付工作流程都依赖于人机协作 (HITL) 来进行错误纠正、积极强化和实施策略护栏。业界正在看到 HITL 智能工作流程的早期信号,GitHub、Lovable、Replit 和 StackBlitz 的预览显示用户从表达意图到在云中部署可运行的工作应用程序。然而,让人们参与到最平凡的任务中会消耗宝贵的开发者周期。智能能力的进步可以实现自主改进循环,从而释放开发者的时间,并实现以前由于人力限制而无法达到的服务水平。

工程领导者实施 AI 原生方法的实用步骤

随着组织探索这些可能性,并识别和分享有效和无效的方法,AI 原生软件工程将会出现。领导者必须根据三个因素确定 AI 原生实践对 SDLC 的适用性:业务关键性、风险和复杂性。领导者还必须考虑采用分阶段的方法过渡到 AI 原生方法:

  • 评估和规划:评估当前的工作流程,并确定 AI 可以增加最大价值的领域。考虑可以自动化的低风险、高影响的任务。
  • 试点和实验:为了测试其有效性,在受控环境中实施 AI 工具。使用反馈来改进流程并逐步扩大 AI 的使用。
  • 集成和扩展:一旦 AI 工具证明了它们的价值,就将它们集成到更广泛的工作流程中,并在团队中扩展它们的使用,确保 AI 和人类开发者之间的无缝协作。
  • 持续改进:建立自主改进循环,使 AI 工具能够随着时间的推移进行学习和适应,从而提高效率并减少人工干预日常任务。

通往 AI 原生软件工程的道路将以 SDLC 中自主和半自主任务的百分比不断增加为标志。表 1 总结了我们如何看待这种演变。

像所有创新一样,AI 原生软件工程将要求软件工程领导者减轻新的风险并应对新的挑战。应对这些挑战包括平衡自动化与人工监督、持续的技能发展以及强大的安全措施。

其中一些挑战包括未能将思维模式从已验证解决方案的实施者转变为创新解决方案的创造者。同样,未能从根本上认识到软件工程是一项团队运动,剥夺了团队进行健康辩论、讨论和探究的机会,而这些是推动创造力和创新的动力。软件工程领导者必须警惕工程师成长为更高级角色及其团队能力所需的关键技能的潜在退化。

然后,存在安全风险。过度依赖未经验证的 AI 输出可能导致重大的业务风险,包括声誉损害。此外,AI 工具扩大了安全威胁面,需要进行全面的风险评估。最后,多智能体工作流程可能会加剧幻觉风险和模型过度扩展,需要仔细的监控和上下文管理。

与 AI 原生实践相关的降低安全和合规性风险需要一种三管齐下的方法,重点关注 AI 支持的应用程序的三个层:

  1. 一个扩展的软件供应链,现在包括 GenAI 模型及其工具、协议和框架的生态系统。 例子包括可观测性由 Anthropic 推出的 模型上下文协议(MCP) 和 Google 最近推出的 Agent2Agent (A2A) 协议。这些技术显著扩大了软件开发工具链的攻击面,并带来了风险,正如 OWASP LLM 应用 Top 10 2025 中强调的那样。
  2. 第二个风险与第一方自定义代码有关。AI 原生软件工程导致代码生成量空前增加,使得难以满足 安全要求。这需要自动化的应用程序安全测试实践,例如静态和动态应用程序安全测试、渗透测试和模糊测试、软件成分分析和密钥扫描。软件工程团队应使用 NIST 800-218 和 800-204D 中强调的指南来防范这些安全风险。
  3. 第三个风险与知识产权 (IP) 侵犯有关。这可能采取两种形式:保护自己的 IP,确保 AI 工具不使用组织的代码和数据来训练其模型,并确保 AI 工具的用户不侵犯第三方 IP。在这两种情况下,都需要使用集中式管理方法(例如平台工程)来管理 AI 工具,平台工程可以大规模实施治理策略,而不会妨碍开发人员的体验。

为迎接 AI 原生时代,软件工程领导者应重新思考开发人员的工作流程,以从提高的生产力和增强的创造力中受益。在这样做时,他们应优先考虑基于代理的工具的低风险和高价值用例,评估它们自动化重复性工作的能力,并让人类参与监督、验证和可解释性。

最后,他们应该探索从自主改进循环中受益的方法。他们可以根据业务关键性、风险阈值和任务复杂性来划分任务,并使用自我改进循环来交付业务价值,而不会增加风险。

随着软件工程过渡到 AI 原生时代,领导者必须拥抱基于 AI 的工具的变革潜力,同时谨慎管理相关风险。他们可以通过重新思考工作流程、优先考虑战略用例以及利用自主改进循环来释放生产力和创造力,从而确保可持续和创新的开发实践,从而在自动化与人工监督之间取得平衡。

Posted in aiTagged

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注