展会信息港展会大全

软件开发正在受到Gen AI的最大影响
来源:互联网   发布日期:2023-11-21 18:14:19   浏览:3099次  

导读:【编者按: 由生成式人工智能(Gen AI)引发的技术浪潮正在深刻地影响着从软件开发到产品管理的各个领域。资深人工智能专家雷鸣(Michael Lei) 针对Gen AI 对软件行业的影响,在领英上发表了博文Software Development is becoming the most impacted by Gen...

软件开发正在受到Gen AI的最大影响

【编者按:由生成式人工智能(Gen AI)引发的技术浪潮正在深刻地影响着从软件开发到产品管理的各个领域。资深人工智能专家雷鸣(Michael Lei) 针对Gen AI 对软件行业的影响,在领英上发表了博文“Software Development is becoming the most impacted by Gen AI”(软件开发正在受到Gen AI的最大影响)。雷鸣总曾在 Google、Meta、Microsoft和Appen等公司从事人工智能和云计算领域关键的产品研发或高级管理工作。他强调Gen AI的崛起将重塑软件开发流程,降低开发、测试和生产的成本,缩短了产品开发周期。同时公司也将面临如何应对技术迅速发展、业务扩展相对缓慢的挑战。最后他表示虽然一些传统角色的需求减少,但新兴的综合角色涌现,涵盖了与客户互动、原型设计、开发管理等多方面功能。我们特将该内容编译出来和各位客户、合作伙伴朋友分享。如需转载,请联系我们(ID:15937102830)

今年早些时候,我和许多人一样,认为呼叫中心的客户服务将是生成式人工智能浪潮的首个重大影响对象。但事实证明,软件行业首先开始自相残杀,通过创建减少人类开发人员需求的人工智能工具。在最近几个月,编码辅助工具,如Copilot,已经从智能集成开发环境发展成为强大的代码生成器、测试工具、代码解释器和软件共同设计者。然后,11月8日,微软公布了“能够学习公司私有代码的Copilot助手”,这意味着它有可能侵入人类开发者最重要的据点维护遗留代码库。

这种“影响”是一种生产率冲击

我们谈论的是超过100%的生产率提高,尽管技术尚未达到取代人类开发者的水平,正如我在这篇文章中通过自己的经验所分析的。这种生产率提升通常是通过一些主要模式实现的:

辅助编码:开发者将详细的编码任务(包括功能实现和自动化测试)委托给人工智能,在AI完成实现后进行审查/筛眩

辅助设计:开发者利用人工智能来理解需求并将其映射到技术架构,然后与人工智能一起工作,通常在交互式会话中填补设计的各个细节层面。

辅助学习:软件开发工作以不断学习新技术和技能而闻名。基于人工智能的知识库和生成的代码示例大大减少了学习时间。

通过自动化进行无代码开发:它可能尚未成熟,但我们已经在LLMs的提示工程和模型微调API中看到了这种预览,这些概念上不需要编程的方式重新编写软件。

除非企业也相应地扩大规模,否则这种生产率提升将减少对人类工作者的需求。

软件开发成为第一个受影响的领域,主要原因有以下几点

软件专业人员是推动人工智能发展的力量,相比其他领域,他们对自己的工作以及如何改进工作有更好的把握。

代码可以通过编译、测试和监控进行严格和半正式验证,这使人类更有信心地控制机器输出的质量。

编码不是涉及直接用户/客户交互的关键业务流程的一部分。即使对于软件产品公司而言,编码只是产品生命周期的早期阶段,后续阶段有很多可以修复由此造成的问题和错误,比如集成测试、功能验证、A/B 测试、阴影发布、Alpha/Beta 上线,最终客户支持和错误修复。

该行业以其臭名昭著的公司座右铭“快速行动,打破常规”为标志,这个行业与其他传统行业有不同的思维方式,因为它拥抱快速变化并愿意冒险。

这种趋势将如何影响这个行业

不同角色和技能的影响会有所不同。差异化因素在于一个角色是否可以通过这种新发现的生产力提升来扩大其工作范围。

自动化测试API的质量保证(QA)工程师已经开始感受到压力。从 ROI 的角度来看,手动测试在技术上可以被生成式人工智能和计算机视觉的组合所取代,类似于游戏的自动化,尽管这似乎是一个小众市场(参见基于人工智能的测试工具)。

在代码库中进行模块级开发的开发人员需求大大降低。这已经发生在初级开发人员和新毕业生身上,他们使用通用知识来实现代码模块。随着Copilot从遗留代码库中学习,许多因对遗留代码库有深入了解而受到重视的资深开发人员也面临风险。

开发运维(DevOps)和服务可靠性工程师(SREs)进行的大部分流程自动化编码都有可能被语言模型所取代。然而,SREs仍然被视为线上服务的最后一道防线,因此是关键业务路径的一部分。

软件架构师在许多软件公司中一直是一个模糊的角色,技术负责人或经理经常兼职担任该角色。人工智能将极大地增强这一角色在深度和范围上的作用,通过帮助理解需求、迭代和交互式地共同设计软件、编写模块和解释现有代码库。架构师将减少对开发人员详细知识和技能的依赖,并成为团队的重心。

实施数据分析和机器学习系统的数据工程师需求减少。甚至在生成式人工智能之前,这两个领域就已经远离了繁重的编码(例如 AWS 上的 Redshift 和Sagemaker 生态系统)。他们的价值在于其对业务数据模型、现有技术堆栈和系统设计的专业知识,除了 SQL技能。但许多这些领域也将被自动化。例如,我们已经看到了许多尝试使用生成式人工智能根据特定领域知识自动化分析处理的代码编写。

产品经理总体上将受益。许多项目管理(可能是或不是他们的核心职责)将进一步从他们的日常工作中自动化。工具在消化客户需求、从文本描述生成 UI 模型等方面变得越来越好。最终,人工智能将使他们能够使用无代码工具创建产品原型,与客户和开发人员进行沟通,而不再使用 PRD(产品需求文档)和模型。

数据科学家是一个棘手的案例。一方面,将生成式人工智能的基础模型应用到许多不同任务中,减少了技术多样性,也减少了从头开始训练许多特定任务模型的需求。另一方面,似乎快速推向人工通用智能(AGI),这可能会极大地扩展该领域。但可以肯定的是,手动调整现有模型训练算法的超参数或创建现有模型架构的变体这类工作需求较少,因为越来越多的人工智能工作负载被转移到由 OpenAI 和其他大公司运行的AI即服务中(可以通过无代码和低数据进行微调)。

软件公司将如何适应这一趋势

许多公司的员工随着业务的增长而增加。理论上,除了外包之外,大多数这些公司实际上并不是以编写代码作为主要产出,而是提供基于代码的服务,从互联网服务到SaaS。过去20年中该行业的大量就业增长可以通过以下因素解释:

实际上,一家公司会聘请人员来为新的业务线实施服务或添加新功能,然后保留这些工作人员来维护新服务或新增功能,并逐渐适应不断变化的客户需求。

公司的收入增长和/或舒适的利润率使其能够承担人员增长。

人们普遍认为人是高科技公司最宝贵的资产,实际上这种观念源自少数超级开发者提供技术中极大部分贡献的事实,但普遍适用于其他员工。

但是,软件行业正在进入一个技术暂时超前于业务扩展的阶段。我们已经看到生成式人工智能迅速应用于优化许多现有软件解决方案,从聊天机器人、文档AI到内容创作工具等等。但其在业务扩展方面,比如完全自动化客户服务,仍然是缓慢和渐进的。在这个阶段,该行业正在利用生成式人工智能优化其内部运作以及输出。

许多效率和成本削减将来自于软件开发、测试和生产的自动化。

这种自动化将超过所有其他成本削减措施,例如将业务外包到低成本地区,因为后者在远程协作管理、文化差异、复杂的企业政治和地缘政治风险方面具有挑战性。

此外,除了削减成本之外,行业效率还将大幅提高。软件产品开发的生命周期将大大缩短,实际上团队规模会更校我们将看到对客户需求的快速原型设计和迭代开发。特别是,我们可能会看到产品经理、售前工程师和软件架构师的角色融合成一个角色:

与客户互动,了解他们的问题和不断变化的需求。

使用生成式人工智能制作高层次的工作流程图、数据模型和逼真的UI,以形式化想法并向客户和开发人员传达。

快速开发原型以进行演示并获得反溃

利用生成式人工智能管理开发流程以提高效率。并在生成式人工智能的协助下监督代码开发的所有技术方面。

赞助本站

相关内容
AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港