长期成长:从亲手完成到培养他人
2020 年,Palantir 采访了一位名叫 Brian 的 FDSE。他回忆,最初进入一个大型网络安全项目时,自己还缺乏这一领域的背景,需要同时学习平台、客户的技术问题和业务领域。团队里的导师、客户交流与个人探索共同帮助他推进;后来,他也能向其他网络安全团队分享经验。采访没有给出一条人人适用的成长时限。1
这段经历值得看的变化,是从需要别人帮助理解,走到能够帮助别人处理问题。技术进步仍然重要,但长期成长还要回答:自己离开一会儿,团队是否还能作出可靠判断?新人从这里开始,是否一定要重新踩过相同的坑?
保护能够形成深度的工作
深度也需要时间保护。每次遇到不懂的地方都临时借助别人,可以暂时完成交付,却未必形成自己的理解。选一个反复影响工作的问题,单独做小实验、读实现、请资深同事检查推理,再把结论带回原项目。技术学习由具体困难引出,随后离开催促交付的场合深入,才较有机会留下能够再次使用的能力。
可以把近期反复遇见的困难分成两类。一类是知识和技能还不足,需要阅读、实验与反馈;另一类是没有权限、信息或协作安排,需要负责人改变工作条件。两类可能同时存在,但不能只用更多个人学习去应对后一类。
当一项问题已经反复出现,可以为深入研究争取一个明确产物:解释关键路径的小文档、可复现的检查、去掉重复手工步骤的小改动,或者一个被否定但条件清楚的方案。研究完成后回到实际工作,看它是否能帮助下一位同事,而不是只把学习时间记成课程时长。
使用 AI 时也应留下自己的认识如何变化。先记录预测,再运行或查证,再解释差别,最后换一个条件重新判断。关于工具使用与技能发展的研究及其限制,见当Agent也能写代码,FDE会怎样变化。这里是一种本书建议的学习做法,不能据此宣称已经证明长期能力提升。
责任逐步扩大,需要团队参与
不能把岗位所需的一切都放进新人的学习清单,再把支持缺失称为成长空间。一个人即使愿意负责,也需要相应的信息、权限、协作者和复核。没有这些条件,越积极越可能把组织没有解决的问题变成个人承诺。
培养者可以先安排一个规模适当的责任区间:新人负责查清和实现一段流程,资深工程师检查关键设计,业务负责人确认规则,运行团队确认接手条件。责任可以逐步扩大,但扩大应依据实际表现,而不是仅仅因为项目人手不足。
复盘时,除了问交付了什么,还可以检查三个变化:新人是否更早发现了错误假设,是否能提出代价清楚的替代方案,是否减少了他人理解和接手的困难。如果只奖励最后一晚的救火,就可能忽略那些通过较早沟通避免事故的人。成长评价应允许谨慎建设的人被看见。
Google 的 SRE 培养章节提供了一个相邻工程领域的参照:新人可以先跟随正式值班者观察,再在有经验者支持下承担主要处理;学习文档也由新人修订,再请领域专家复核。它强调具体任务、反馈与逐步放开的责任,并非把新人直接丢进不断到来的工单。这里借用培养方法,不把 SRE 当作 FDE,也不要求每家企业照搬其值班制度。2
移到 FDE 场景,可以让新人先跟随一次需求讨论,独立写出自己理解的规则与不确定性,再由资深同事核对;下一次由新人主持限定范围的讨论,资深同事观察并在必要处介入。关键是留下介入发生在哪里以及为什么,不能因为会议最后完成就抹去支持条件。
放手也不是永远不再检查。范围、人员或系统变动后,原来的熟练可能不再适用。负责人应根据实际变化恢复必要复核,新人也应主动说明哪些新条件超出自己已有经验。信任可以建立在及时暴露未知上,不必建立在维持“我都能处理”的形象上。
一次培养别人的练习
以下为教学设计,可使用预约与候补练习已有材料,无须新建培训项目。选择你已经能独立解释的一小段逻辑,请另一位知情同意的学习者接手一项变化,例如调整邀请有效期;不要把整套代码一口气讲完。
先写下学习者需要知道的前提、允许自行作出的决定,以及必须求助的边界。让对方先预测结果,再根据材料操作;自己尽量观察,出现可能损害真实数据的动作应立即停止,教学环境则可保留可控错误用于讨论。
记录时,把四件事分开:对方独立完成了什么,你给过什么提示,哪段材料让人误解,修订后怎样复查。若自己在每个难点都及时给出答案,不能把顺利完成算作对方已独立掌握。
再给一个未背过的条件,观察其推理,而不是原题照做。比如,原来检查的是期限内接受,现在问恰好到期时该怎样判断。若学习者能指出规则和对应检查,再说明未覆盖的部分,这比记住你上次的口头结论更有价值。它仍然只说明当前练习表现,不能直接证明生产任职资格。
没有真实学习者时,可以整理解释材料并进行自查,但把教学观察留空。由 AI 模拟提问可以帮助准备,不能登记为已经培养了一位同事。这里评价的是能被实际看见的支持和理解,不是讲课次数。
从个人办法变成别人能用的材料
一次帮助结束后,问问知识留在了哪里。如果只留在聊天记录或自己的记忆里,下次问题仍会回到同一个人。可以把最常误解的一项条件写进说明,把排障所需输入写进提问方式,把已经确认的边界放在使用者会看到的位置。
并非每个经验都要沉淀成通用组件。它可能只适用于某种输入、权限或客户流程。先把适用条件和反例写清楚,让第二个人实际使用;确实跨情境成立后,再讨论更广泛的复用。过早抽象会把个别做法包装成组织标准,也会增加别人必须理解的东西。
培养者自身也会从新人的问题里学习。对方找不到某个步骤,可能是缺少基础,也可能是文档依赖了团队早已忘记的默认知识。先区分原因,再决定补基础、改材料还是改系统。把每一次疑问都归为“不够主动”,会让反馈越来越少。
这种贡献不要求人人走向管理岗位。有人继续深耕技术,提供可靠的工具与复核;有人擅长跨团队协调;有人愿意培养新人。它们可以交叉,也可以有不同重心。成长方向应由个人兴趣、实际贡献和组织需要共同决定,不能只用直接管理人数衡量。
工作是否让你持续变得更有能力
职业选择本身也有代价。Trivedi 的个人回顾就提到,多项目切换与客户关系并行,以及失去客户时的压力。3 有人喜欢不断进入新问题,有人更愿意长期深入一个系统,两种选择都可以产生重要贡献。FDE 不应成为评价所有工程师是否进取的统一尺度。
若一个岗位长期只能救急,无法沉淀知识,也没有获得足够支持,需要调整的可能是工作设计。更换头衔、增加工具或要求个人再努力一点,不一定能解决它。对准备入行的人,了解团队怎样分配责任、怎样处理失败、如何保留学习时间,也是了解岗位的一部分。
可以定期用一段真实工作检查三个问题:哪些判断现在能更早作出;哪些反复劳动已经减少;哪些任务已经能够由别人继续。若工作量上升而这三项长期没有变化,需要讨论原因:是项目持续变化、团队缺人、权限不足,还是自己的学习方法没有产生可检查的结果?不同原因对应不同调整。
同样,客户留下并不能单独证明个人所有决定正确,客户离开也不能直接说明工程师失败。应该回到可影响的工作和当时条件:是否及时说明限制,是否检查关键假设,是否把能决定的事项推进,是否及时升级自己不能承担的部分。经营结果重要,但评价个人时不能省掉因果链和团队贡献。
完整项目的退出与能力转移,见边界、风险与退出。对个人而言,可以从一件小事开始:把一项原来只有自己能解释的工作,变成别人有条件继续的工作,同时明确仍需自己或专家参与的部分。
成为 FDE,不需要在第一天表现得无所不知。更值得追求的是逐步扩大这样一种能力:面对一个新问题,知道怎样获得信息,怎样把判断变成可运行的改进,怎样检查影响,又怎样让另一个人继续工作。职位名称可以很快变化;这段可以被别人检验的能力,需要一次次真实的修正才能长出来。
-
Palantir,A Day in the Life of a Palantir Forward Deployed Software Engineer,2020-11-02,Brian 关于初入网络安全项目、导师及经验分享的回答;2026-09-27重读访谈正文。公司编辑的单人自述,无统一培养周期,也没有独立测量学习效果。 ↩
-
Andrew Widdowson,Accelerating SREs to On-Call and Beyond,Google《Site Reliability Engineering》,Documentation as Apprenticeship、Shadow On-Call Early and Often,网页第220—245行;2026-09-27读取整章。网页未给本章独立发布日期;本书使用公开工程培养方法作参照,非 FDE 培训实证或统一制度。 ↩
-
Het Trivedi,What I learned as a forward-deployed engineer working at an AI startup,Measuring impact as an FDE;页面最后更新2025-05-17,2026-09-27重读。多项目切换和客户压力是个人回顾,不推广为每个岗位的相同负担。 ↩