17611538698
info@21cto.com

微软 Azure CTO 马克・鲁西诺维奇: “拯救”开发初学者

CTO说 0 18 17小时前
图片

21CTO导读:微软Azure首席技术官马克・鲁西诺维奇称,公司与组织必须培训初级员工来纠正人工智能代理人的错误,而不是用提示语来代替。

马克・鲁西诺维奇(Mark Russinovich),当前担任微软Azure首席技术官。

近日,他与开发者社区副总裁斯科特·汉塞尔曼(Scott Hanselman)共同撰写了一篇论文,文中认为资深软件工程师必须指导初级开发人员,以防止人工智能编码代理掏空该行业的未来技能基础。

图片

图 1 鲁西诺维奇与汉塞尔曼

这篇论文的标题为《重新定义人工智能的工程职业》,其提出了几个假设。

其中,第一个假设为:人工智能编码助手为“资深工程师提供助力,但同时对职业生涯早期(Early-in-Career,简称EiC)的开发人员增加了诸多阻力。这要求资深工程师为初级人员提供指导、验证与人工智能集成输出。”

鲁西诺维奇表示,人工智能只会提高资深或高级开发人员的生产力,但更会降低初学者和初阶开发工程师的生产力。“我在和所有客户互动的过程中,互动最热烈的就是此话题,很多技术管理者和架构师说在自己的公司里都看到这一点。”

核心问题出现了,即使生成的代码充满了缺陷,人工智能代理(AI Agent)也可以称取得了成功。

比如:

  • 重大的安全漏洞;

  • 低效的算法实现;

  • 在整个源代码库中重复编写通用的代码;

  • 将程序卡死和崩溃当作无关紧要;

  • 代码中留下调试痕迹;

  • 虽然代码通过特定测试,但通常情况下无法正常工作。


他在论文中提出了一个“竞态条件(a race condition)”,人工智能代理在代码中试用通过插入“Thread.Sleep”来实现这个问题,但实际上是将问题掩盖。他指出这样的问题“只有熟悉同步的软件工程师才有信心指出AI Agent的错误。”

而目前状态,很多公司、组织与其他机构已经减少初级开发工程师的招聘。鲁西诺维奇引用一篇来自哈佛大学的论文,其研究了生成式人工智能应用对招聘和信息的影响,然后结论道:

“与未采用该技术的公司相比,采用人工智能技术的公司中初级员工的就业数据显著下降,而高级员工的就业人员则基本保持不变。”

鲁西诺维奇在论文中明确指出,由上述数据得出合乎逻辑的结果为:

“若组织只关注短期效率,只雇佣那些能够指导人工智能的人,那他们将极有可能扼杀下一代技术领导者。”

鲁西诺维奇认为,大厂必须负起责任,继续招聘初级开发人员,要认可和接受他们初期会降低生产力,同时应该将指导和培训这些初级工程师作为一项明确的目标——即成立“导师制组织”,资深软件工程师与初级工程师结对,共同指导和管理人工智能编码代理。

他提出另外一个建议,编码助手可以多一个“EiC模式”,即而向初学者的模式。在此模式下,代理对人进行指导。

鲁西诺维奇指出,当今大学(包括美国大学)中并没有合适的计算机科学本科教学模式。他这样建议道:

“你需要一些课程。在这些课程中,如果你使用人工智能将被视为作弊。”

他在论文中还表达了对AI代理的评价:

“虽然人工智能正在推动软件开发,但是一些前沿的编码代理却表现出实习生水平,这表示它们的局限性。”

鲁西诺维奇表示,在微软内部已经启动一个试点项目,即高级工程师的考核标准将不仅仅是产品或技术的贡献,还将包括对员工同事的影响。

而这正是他和同事、微软以及其他优秀企业的目标。

作者:洛逸

评论

我要赞赏作者

请扫描二维码,使用微信支付哦。

分享到微信