AI编程的隐藏成本
每个成熟的工程学科都有足够高的准入门槛,以确保通过的人实际上知道自己在做什么。在软件领域,这个门槛从来不是证书或守门人——而是学习像机器一样推理同时像人类一样思考的原始智力困难。几十年来,这种困难一直是该专业安静的质量控制机制。它过滤掉那些不愿意奋斗的人,并奖励那些坚持下来的人,这样做它使真正有能力的工程师的供应保持稀缺、有价值——并且——并非巧合地——报酬丰厚。
这个机制现在正面临安静但严重的压力。人工智能使得在从未面对过去作为重点的困难的情况下产生可工作代码成为可能。本文追溯了软件工程师传统上是如何形成的,当形成性奋斗从过程中移除时会发生什么变化,这种转变如何已经在大规模扭曲招聘,以及为什么最深层的后果尚未可见——它是一代人之后的事情,隐藏在一旦今天的高级工程师离开谁将培训下一组高级工程师的问题中。
1、软件工程师是如何塑造的
在AI助手存在之前,学习编程是一个不可避免的缓慢且常常令人沮丧的过程。学生和早期职业开发者通过一系列不完美的资源吸收这门手艺:密集的教科书、与更有经验的同事的长谈、本地聚会团体、行业会议,以及——一旦互联网成熟——在线论坛,其中单个晦涩的bug可能需要数天的来回才能解决。这些渠道都没有提供即时答案。每一个都要求学习者与问题坐在一起足够长的时间以真正理解其形状。
这种缓慢不是设计缺陷;它是进行教学的机制。基于奋斗的学习——与顽固的编译器错误搏斗、通过不熟悉的内存跟踪段错误、重写递归函数五次直到它最终点击——建立了一种持久的、可转移的推理,这是被动暴露永远做不到的。被构建的技能从来不是"输入可运行的代码"。它是逻辑分解、假设测试和将复杂系统保持在脑海中足够长时间以正确推理它的纪律。编程作业只是这种纪律的训练场,而不是最终目标。
因为这个过程确实很难,而且因为没有办法绕过它,有能力的工程师曾经——并且在很大程度上仍然是——稀缺资源。这种稀缺性塑造了该专业的整个经济学:它解释了历史上强劲的薪水、技术面试的强度,以及软件工程作为年轻毕业生可用的更具智力选择性的职业道路之一的声誉。换句话说,稀缺性从来不是系统中的错误。它是系统有效的证据。
这种平衡正是现在正在被打破的,理解如何需要仔细研究当奋斗本身从等式中移除时会发生什么。
2、当奋斗消失时发生了什么:即时能力的错觉
过去即使是最强的学生也需要几天持续努力的编码作业和顶点项目,现在可以即时产生,基本上没有智力摩擦。这不是微小的效率提升——这是完成作业实际代表内容的结构性变化。完成的项目过去是学生内化了其背后推理的可靠证据。今天,完成的项目只是访问了有能力AI模型的证据。
这里丢失的区别很重要:编程是软件工程更广泛学科内的单一、原子活动。软件工程还包括架构判断、权衡分析、不确定性下的调试,以及保持大型系统多年可维护性所需的战略思维。编程练习一直是建立这些更深层能力的代理——一个学生可以安全失败、了解失败原因并调整的受控环境。当练习完全外包给AI工具时,代理停止运作,它旨在建立的更深层能力永远不会到来。
例如,考虑一个经典的入门作业:编写一个函数来检查括号字符串是否平衡——这是一个主要练习,因为它迫使学生在没有明确被告知使用的情况下推理栈数据结构。
def is_balanced(expression: str) -> bool:
pairs = {')': '(', ']': '[', '}': '{'}
stack = []
for char in expression:
if char in '([{':
stack.append(char)
elif char in ')]}':
if not stack or stack.pop() != pairs[char]:
return False
return not stack
这个函数通过将每个左括号推入栈并在遇到右括号时检查它是否与最近未匹配的左括号匹配来工作。从头写这个的学生必须沿着几个不明显的边缘案例进行推理:空字符串会发生什么,当没有匹配的右括号出现时会发生什么,以及为什么空栈上的最终检查很重要。这种推理一直是练习的实际交付物——而不是几行代码!相反,提示AI工具"检查平衡括号的Python函数"的学生在几秒钟内收到相同的可工作代码,但没有产生对栈、边缘案例思维或防御性编码的持久理解的推理。两个学生提交相同的文件。只有其中一个学到了任何可转移到下一个更难问题的东西。
3、招聘漏斗崩溃
技术面试在纸面上仍然是防止准备不足的候选人进入劳动力市场的主要保障。在实践中,实时面试中的AI辅助作弊已经变得足够普遍,以至于大多数有经验的面试官现在理所当然地关注它:回答前的明显停顿、对不熟悉概念的可疑流利解释、一旦面试官悄悄改变约束就无法调整解决方案。大多数尝试都以这种方式被抓住,但不是每一个都被抓住,每一次成功的尝试都悄悄取代了一个花费数年时间真正获得被测试技能的候选人。
面试阶段的这种侵蚀只是一半的故事,因为进入它的漏斗同样崩溃了。过去吸引可管理的两位数申请者的职位发布现在经常吸引数百个,因为AI工具使得一个人在纸面上有资格成为软件工程师变得微不足道。筛选该数量的招聘经理无法给予每个候选人应有的审查,这意味着真正准备充分的申请人——以艰难方式完成工作的人——可能面临惊人长的几率仅仅是被注意到,而使用AI获得学位的准备不足的申请人有同等的机会获得面试机会。这两个失败相互加强:当在申请阶段识别真实技能变得更加困难时,更多的重量落在面试上以捕捉溜过的东西,而此时AI辅助作弊正在使面试本身变得不那么可靠。
4、真正的成本:谁来培训明天的高级工程师?
高级工程师可以说从未比现在更有价值,原因是具有启发性的。他们通常是被召集来解开一个脆弱的AI生成系统的人,该系统运行得足以通过演示但在真实生产负载下崩溃——这相当于在建筑物通过检查但在其第一次真实风暴下开始开裂后被召唤的结构工程师。那种诊断本能——观察系统并在其失败之前感知其将在何处失败的能力——完全通过本文前面讨论的AI前学习过程锻造而成,并且这不是当前入职管道设置为可复制的技能。这提出了一个比任何单一招聘周期都更具影响力的问题:一旦这一代高级工程师退休,下一代从何而来?
这就是到目前为止涵盖的所有内容汇聚成比招聘不便更严重的东西的地方。今天的组织不仅难以填补空缺职位,而且难以找到具有足够原始问题解决能力值得投资的候选人——那种人可以在几年有意识的指导下成长为高级角色的人。面对真正可培训人才的浅薄池子,一些组织悄悄降低标准,希望慷慨的AI工具能让准备不足的雇员像上一个十年训练有素的初级工程师一样表现。它不会。AI工具在产生代码方面异常出色;它们不能替代只有通过本文开头讨论的那种努力实践才能形成的架构判断、调试直觉和系统级推理,没有多少工具可以弥合从未建立的判断差距。
这提出的不舒服问题是代际的,并且不是抽象的:今天的高级工程师将在未来十年或二十年内退休,与以往相同的时间线。如果整整一代人在从未独自解决过困难技术问题的情况下进入劳动力市场,真正的工程专业知识就无处可更新。这是行业面临的核心风险——不是今天的招聘摩擦,而是未来安全网随着建造它的人一起消失,留下没有人理解系统足以支撑它们的未来。
5、双向前进之路
应对如此结构性的问题需要在雇佣关系的两端采取行动,从管道中最早的人开始。对学生来说最直接的回应也是最不方便的:在仍然学习基础知识的同时故意避免AI辅助。工程从未提供过捷径,而且没有理由相信这已经改变。独自解决一个困难的bug,或者花一个晚上重写一个顽固的算法直到它最终正确编译,仍然是建立这个职业实际依赖的推理的唯一可靠方式。这一切都不意味着AI在有能力工程师的工具包中没有位置——它显然有,而且它对软件构建方式的影响是真实的并且在增长。但很好地使用它需要已经具有判断其输出是否正确的判断力,而这只能以它一直的方式构建:首先成为工程师。
解决方案的另一半属于进行招聘和培训的组织。对他们来说,应该抵制降低标准以应对候选人池稀薄的本能,而不是放纵。如果有的话,标准应该上升,因为具有强原始能力的候选人正是能够从AI工具中获得更多杠杆的人。对其长期技术健康认真的组织应该建立结构化的指导计划,故意将高级工程师与有前途的新人配对,为那种任何入职文件或AI助手无法单独传输的隐性、来之不易的判断创建明确渠道。为潜力招聘然后投资于它比为即时产出招聘更慢的策略,但它是唯一一个保持未来高级工程师管道不会干涸的策略。
6、仍然可以避免的清算
这一切都不是反对AI在软件开发中的论点。相反,论点更窄更具体:依赖它有一个正确的时间和错误的时间。已经建立了基础判断的工程师可以使用该技术真正更快地移动:生成样板代码、探索替代实现,或在进入生产之前捕获疏忽。在所有这些情况下,人类仍然是评估输出、决定其是否正确并理解其为何工作的人。剥离那个评估层,完全相同的技术停止成为生产力倍增器,而成为思考的替代品。这是需要避免的真正陷阱。
这里的责任是共享的,双方都不能等待对方先行动。学生和早期职业开发者必须愿意忍受比他们立即可用的更困难、更慢的路径,相信困难正在做真正的工作,即使更快的捷径就在一个提示之外。工程领导者必须抵制招聘准备不足的候选人并希望工具弥合差距的短期便利,而是致力于有意识、耐心的指导工作,即使它减慢了已经感觉太慢的招聘过程。两个选择都不容易,而且都不会立即获得回报——适当培训的工程师的价值往往在几年后显现,而不是在下一个冲刺中。
使这个特定时刻值得认真对待的是所涉及的时间线。当前一代高级工程师并非完全形成;他们花了十年或更长时间积累社会需要的那种来之不易的判断力,以便继续前进——所有这些都是在AI工具存在以绕过这个过程之前。没有等效的捷径可用于生产他们的替代品,行业没有机会发现那个差距,只有在关闭它为时已晚时才这样做。现在正在做出的关于如何教学学生、如何招聘初级候选人以及指导是被视为优先事项还是事后的决定,是保持该差距不完全开放的唯一真正机制。
原文链接: The Hidden Cost of Coding with AI: Why Tomorrow's Senior Engineers May Never Actually Learn to Code
汇智网翻译整理,转载请标明出处