跳到主要内容

39 篇博文 含有标签「engineering-leadership」

查看所有标签

你的律师还没学会要求的 AI 采购条款

· 阅读需 13 分钟
Tian Pan
Software Engineer

你共享驱动器上那份签署了 14 个月的 AI 供应商合同是根据 SaaS 模板起草的。它保证了正常运行时间,指定了安全联系人,并将责任上限设定为 12 个月的费用。但对于你的提示词是否会被喂进下一次训练运行,当你依赖的模型被悄悄换成更小的变体时会发生什么,或者当监管机构询问时你的推理日志存放在哪个地区,它却只字未提。起草它的律师利用他们掌握的词汇量完成了一项称职的工作。但这些词汇量比现在的覆盖范围落后了一个世代。

采购团队仍在为错误的合同进行优化。标准的 MSA(主服务协议)打的是 2010 年代的战争——停机补偿、漏洞通知窗口、进入源代码仓库的知识产权赔偿。AI 供应商关系有着不同的攻击面,而最重要的条款往往在现有模板中连个标题都没有。如果一个团队任由去年的采购指南来处理今年的供应商技术栈,那么他们正在签字放弃一年内就会需要的筹码。

AI 专家门诊无法规模化:当你的核心专家成为发布瓶颈

· 阅读需 11 分钟
Tian Pan
Software Engineer

打开公司里那位上线真实的 AI 功能超过六个月的工程师的日历。数一数那些重复出现的 “30 分钟同步 —— 关于 Agent 的问题” 邀请,那些最终被预定的即时 “能耽误你 15 分钟吗?” Slack 消息,那些被标记为 “可选” 但他们实际上不得不参加的架构评审,以及最初只是周五下午的一个时段、现在却每天吞噬两个小时的 Office Hours。然后看看路线图,追踪哪些功能取决于该工程师尚未做出的决定。两者的交集才是你真正的发布时间表。Jira 看板只是虚构。

这就是 AI Office Hours 瓶颈,它在 2026 年的 AI 组织中是核心承重约束,尽管组织里没人会大声说出来。团队快速扩展了 AI 功能开发 —— 每个产品小组都拿到了模型预算,每个 PM 都学会了写 Prompt —— 然后把每一个 “这个模型对吗”、“这里该不该用 RAG”、“我们的评估设计是否有效”、“为什么缓存命中率很奇怪” 的问题都抛给了唯一那个真正上线过足够多生产环境 AI 功能、能给出答案的工程师。六个月后,那位工程师的日历成了半个路线图的限速试剂,“我需要找他谈 30 分钟” 成了你的事故响应本该明确化的核心升级路径。

AI 功能与 OKR 的错位:为什么季度节奏会破坏 AI 路线图

· 阅读需 11 分钟
Tian Pan
Software Engineer

团队承诺“在本季度交付 AI 摘要生成器”,在第十周通过了技术门槛,在全员大会上庆祝胜利,然后正式上线。六周后,遥测曲线开始向错误的方向弯曲——无声且缓慢,没有人为其制作仪表盘,因为没有人负责这个曲线的走向。OKR 已经被标记为绿色。下个季度的 OKR 已经围绕新功能的发布起草好了。摘要生成器现在成了某个人的次要维护工作,到季度末评审时,团队开始纳闷,为什么在没有任何明显变化的情况下,该功能的客户满意度下降了 15 分。

这不是团队的缺陷,而是运营模式的缺陷。季度 OKR 是为软件校准的,在这种模式下,一个功能可以被界定范围、构建、交付,然后很大程度上就可以不管它,直到下一次重大版本更新。AI 功能不具备这种特性。它们有一条上线曲线和一条持续曲线,而持续曲线才是大部分价值——以及大部分风险——真正所在。将它们视为带有发布日期的交付物的 OKR 模板,悄悄地产生了一系列在下一个规划周期之前就已失效的演示产品。

橡皮图章式崩溃:为什么 AI 编写的 PR 正在掏空代码审查

· 阅读需 12 分钟
Tian Pan
Software Engineer

一位资深工程师在四分钟内批准了一个 400 行的 PR。diff 很整洁。命名很合理。测试通过。两周后,值班工程师翻阅一个查询时发现,它返回的行形状是对的,但取错了列 —— 本该用 user.created_at 的地方用了 user.updated_at —— 队列分析仪表板已经对 CFO 撒了九天的谎。审查者很称职。代码结构良好。这个 bug 在 diff 中是不可见的,因为它不是语法异味,而是语义问题。审查者无从着力,因为没有人写下这个变更原本打算做什么。

一旦你代码库中的大部分 diff 都源自模型输出,这种失效模式就会出现。审查者不再问“这正确吗?”,而是开始问“这看起来像代码吗?”。答案几乎总是肯定的。AI 编写的代码在语法上极其流畅,这种流畅性绕过了工程师们花费十年时间在人类编写的烂代码上磨练出来的审查启发式规则。

向组织内部沟通 AI 的局限性:工程负责人的行动框架

· 阅读需 12 分钟
Tian Pan
Software Engineer

演示表现完美。法务部门已经批准。销售团队已经在向客户承诺该功能将在下个季度上线。接着,第一次生产环境故障发生了——模型言之凿凿地起草了一个引用了并不存在的合同条款的条文,销售将其发给了客户,法务部门花了三周时间进行损害控制。

这不是一个关于坏模型的故事,而是一个关于沟通失误的故事。工程团队知道模型可能会产生幻觉。法务假设它不会。销售假设任何故障在到达客户之前都会被拦截。运维假设有其他人在专门监控这一点。没有人撒谎。每个人都在基于同一个系统的不同心理模型工作。

大多数 AI 项目失败的根本原因不在于 AI 本身。根据兰德公司(RAND Corporation)对失败的 AI 计划的分析,“对问题定义的误解”——包括对能力限制的沟通误导——是单一最常见的原因。70% 到 95% 的企业 AI 计划未能交付预期成果,而技术本身很少是限制因素。限制因素在于,你组织中的每个团队都在悄悄地构建关于你的 AI 系统能做什么的不同理论,而没有人明确地纠正过其中任何一个。

董事会级别的 AI 治理:只有高管才能做的五个决策

· 阅读需 10 分钟
Tian Pan
Software Engineer

一家大型保险公司的 AI 系统正在拒绝理赔申请。人工审核这些决定后,发现其中 90% 是错误的。这家保险公司的工程团队构建了性能出色的模型,MLOps 团队有完善的部署流水线,数据科学家有严格的评估指标。但这一切都无济于事,因为在董事会层面,从来没有人回答过这个问题:对于影响病人能否获得治疗的 AI 决策,我们可接受的失败率是多少?

这个缺口——功能正常的技术系统与缺失的高管决策之间的鸿沟——正是 AI 治理在实践中最常出现问题的地方。结果是:组织同时在生产环境中运行 AI,却暴露在从未正式承认的责任风险之下。

区分优秀AI工程师与普通工程师的思维模型转变

· 阅读需 11 分钟
Tian Pan
Software Engineer

在AI工作中遇到困难的工程师,最常见的问题不是缺乏技术知识,而是他们一直在问错误的问题。他们想知道的是:"这能用吗?"但他们真正应该问的是:"这个系统的失败率是多少,这个失败率对于这个使用场景来说是否可以接受?"

这一转变——从二元正确性转向可接受的失败率——是有经验的AI工程师思考问题的核心差异。听起来简单,其实不然。由此延伸的一切都是不同的:你如何调试、如何测试、如何部署、监控什么、以什么为信心基础。没有完成这一转变的工程师会一直在与工具对抗并且不断失败。

共享提示服务问题:多团队 LLM 平台与依赖噩梦

· 阅读需 11 分钟
Tian Pan
Software Engineer

一个周二下午,某中型 AI 初创公司的平台团队合并了一个对共享系统提示的"小幅改进"。到周四,三个独立的产品团队相继提交了 bug。一个团队的评估套件准确率从 87% 跌至 61%。另一个团队的 RAG 流水线开始产生幻觉引用。第三个团队的安全过滤器完全停止拦截某类有害输出。四天后,没有人把这些问题联系起来。

这就是共享提示服务问题,任何拥有多个团队基于同一 LLM 平台进行开发的组织都会遭遇它。

共享提示服务问题:多团队 LLM 平台与依赖噩梦

为什么 “准确率 92%” 几乎总是一个谎言

· 阅读需 10 分钟
Tian Pan
Software Engineer

你发布了一个 AI 功能。模型在你的留出集(holdout set)上达到了 92% 的准确率。你把这个结果展示给产品 VP、法务团队和客户成功主管。每个人都点头表示认可。功能上线了。

三个月后,一个你没有专门测试过的客户群体正面临 40% 的错误率。法务部门在提问。客户成功团队正在处理升级投诉。产品 VP 想知道为什么没有人预警。

92% 这个数字在技术上是正确的。但在作为决策输入时,它几乎是毫无用处的 —— 因为整体准确率恰恰掩盖了那些最重要的信息。

当每个人都拥有 AI 编程助手:那些无人提醒你的团队动态

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个由十二名工程师组成的团队热情地采用了 AI 编程工具。六个月后,每位工程师合并的 Pull Request (PR) 数量几乎翻了一番。工程经理为此欢欣鼓舞。随后,值班轮换开始频繁报警。调试过程的持续时间延长了一倍。没有人能解释为什么某个特定模块要采用那样的结构。编写它的工程师诚实地回答道:“我不知道 —— 这大部分是 AI 生成的,看起来没问题。”

这种情景正在各地的公司上演。个人生产力的故事是真实的:开发人员更快地完成任务,编写更多的测试,更高效地清理积压工作。但团队层面的情况则更为复杂,大多数组织尚未为此做好准备。

如何在不破坏学习路径的前提下,让工程师快速上手 AI 生成的代码库

· 阅读需 10 分钟
Tian Pan
Software Engineer

新员工在入职第三天就上线了一个新功能。团队里的每个人都印象深刻。三周后,她引入了一个 Bug,一位资深工程师只用了五个字就解释了原因:“我们不那样做。”她对此一无所知,写出那段代码的 AI 也是如此。

AI 编程助手极大地缩短了新工程师完成“首次提交”的时间。但这种速度掩盖了一个大多数团队都没有察觉到的权衡:过去那种让初级工程师速度慢下来的“代码阅读”过程,恰恰是教会他们系统如何实际运作的关键。剥离了这个过程,你得到的就是那些能够将自己不理解的功能发布到尚未内化的架构中的工程师。

问题不在于工具。而在于我们没有更新入职流程,以适应 AI 现在所做的工作 —— 以及它不再要求工程师亲自去做的事情。

AI 功能退役取证:被废弃的功能教给我们的经验,是成功功能无法企及的

· 阅读需 13 分钟
Tian Pan
Software Engineer

这里有一个令人不安的模式:你的团队计划在下个季度推出的 AI 功能,其实早在两年前就在公司里“死”过一次了。它当时以不同的名称发布,带着不同的提示词(prompt),解决一个略有不同的问题,并在经历了六个月的增长停滞后被悄然关停。没有人记录它,没有人把这些点串联起来。本可以拯救这个周期的领先指标,一直躺在那些随功能一起被归档的数据看板里。

大多数工程组织都是为了记住成功而设计的精妙机器。发布会有复盘、博客文章和内部庆祝。但那些被砍掉的功能——尽管有精美的演示,但周活跃用户仅为 12% 的功能;当 Token 成本在超预期的工具链中叠加时导致单位经济效益倒挂的功能;那些用户先是学会信任、随后失去信心、最后完全绕开的功能——几乎没有留下任何组织记忆。而这些“死亡”中蕴含的失败模式,恰恰是你的规划流程无法预估并纳入成本的。