
在波士顿举行的 InfoQDev Summit上,谷歌网站可靠性工程(SRE)的工程总监Michelle Brush发表了一篇主题演讲,直接与软件领导者讨论了软件工程、系统思维和领导力在复杂性中的更广泛变化。

她首先承认了许多从业者感受到的不确定性,并肯定这是一种共同的经历,也是在当今技术环境中导航的预期部分。Brush 认为,软件工程工作的本质正在转变,而不是消失。随着 AI 系统将软件开发的各个部分自动化,工程师将面临更困难和更复杂的挑战。
她引用了 Bainbridge 的“自动化的讽刺”,她解释说:“当你自动化某项工作时,留给人类去做的工作实际上更难。”其结果是,工程师必须监控、调试和验证自动化系统,即使他们的直接职责发生了变化。
她用一个简单的类比来说明这一点:“洗碗机很棒……但我们并没有摆脱所有的工作。”虽然机器可能处理日常任务,但人类却要负责异常处理、质量保证和系统维护。在软件中,这转化为更高层次的抽象工作、更深入的故障排除和对工程判断的依赖。“我们的大脑将开始处理越来越高的抽象概念,”她说,强调了现代开发所需的认知转变。

Brush 解释说,当今的大型语言模型(LLMs)以一种“无意识的能力”运作。它们可以产生令人印象深刻的结果,但缺乏可解释性和对自身局限性的认识。“它们不知道自己不知道什么,”她说,将幻觉框定为这种架构的自然副产品。相比之下,人类处于“有意识能力”的空间中——我们理解我们所知道的,并且可以解释它,这对于教学、指导和验证机器输出至关重要。
在她的演讲中,一个核心概念是“分块”或认知封装的重要性,因为工程师需要处理的问题越来越复杂了。她认为,能够在抽象层次之间移动——同时仍能深入底层系统——的能力至关重要。“所有的抽象都会泄露,”她提醒观众,“特别是我们的硬件抽象。”
Brush 还强调了基础技术知识的持久重要性。“我在我的日常工作中使用过微积分。绝对是离散数学。我不幸地使用了两次汇编语言,”她开玩笑说,突出了即使在工具和平台不断发展的情况下,在基础知识方面的学习仍将继续获得回报。她称这种知识对于工程韧性至关重要,不仅仅是在代码中,而是在整体理解系统方面。
为此,她提倡系统思维,引用了 Donella Meadows 关于流动、反馈循环和变化的工作。她建议支持控制理论、控制论和行为经济学等学科,以更好地建模和设计社会技术系统。对于工程领导者来说,这是一个发展更广泛决策和风险评估视角的呼吁。
Brush 分享了谷歌的一个案例研究,她详细描述了 2019 年的一次中断,由于自动化失控导致两个数据中心瘫痪。当第三个数据中心在恢复流量的负载下也发生故障时,地理分布的假设被证明是错误的。教训是什么?“我们意识到我们需要的不仅仅是三个数据中心,”她说。应对措施不仅涉及更多的容量,还涉及更智能的设计——使用延迟注入测试和基于意图的部署系统,在部署前揭示风险。
希望了解更多信息的开发人员可以在未来几周内观看infoq.com的活动视频。
原文链接:
评论