# 这本书解释了为何广度是前线部署工程师的真本事

> David Epstein 的《Range》从未提及部署，但书中“险恶”学习环境的概念，恰好写出了在客户现场的一周。

原文: https://fdetimes.net/zh/books-courses/range-david-epstein-generalists-fde/

2019 年 2 月 14 日，Publishers Weekly 在书评中写道：没有 10,000 小时投入单一技能的人，依然有理由抱有希望。很多前线部署工程师（FDE）需要听到这句话。他们对数据、API、基础设施和客户沟通都懂得不少，但没有哪一项能深入到只做这件事的人那种程度。

这本书是 David Epstein 的 *Range: Why Generalists Triumph in a Specialized World*，由 Riverhead Books 出版。精装本、电子书和有声书于 2019 年 5 月 28 日上市，平装本于 2021 年 4 月 27 日推出。

它不是为 FDE 写的，却提供了一套说法：既能解释为什么广度是一种真实的能力，也能帮你决定下一步该练什么。

## 这本书到底在说什么？

Penguin Random House 用一句话概括了核心观点：在顶尖人才中，过早专精是例外，而不是常态。Epstein 在个人网站上写道，通才往往较晚才找到方向，同时兼顾多种兴趣，而在复杂、难以预测的领域占据优势的，正是他们。

贯穿全书的意象是 Tiger Woods 与 Roger Federer 的对比。Federer 在专注网球之前练过多种运动。据 Wikipedia 的摘要，Epstein 发现，成功者的故事里，“Roger”往往比“Tiger”多。

Publishers Weekly 也指出，这本书并没有完全否定专精的价值。所以，读《Range》应把它当作审视工作的视角，而不是放弃深度的号召。

## 观点一：部署是一种“险恶”环境

评过这本书的工程师 Yevgeniy Brikman 得出结论：我们想做好的大多数事情，都处在“险恶”（wicked）学习环境中。在这种环境里，单靠刻意练习不够，还需要广度。

设想同一周里的两项任务。第一项是写一个数据转换函数，测试套件已经齐备。跑一遍测试，红绿立现，规则清清楚楚。

第二项从客户的一句话开始：他们需要仪表盘跑得更快。三周后你才发现，真正的问题出在某个部门的数据录入流程上，而这个部门从没被请进会议室。

**要点:** 在客户现场，你得到的第一份反馈可能把你引向错误的方向。

到现场后，第一件事是把这两类工作分开。有规则可循的部分，按手册做，并把它自动化。对于险恶的部分，要克制“我已经懂了需求”的冲动，设计一个小实验去验证。

## 观点二：带到新客户那里的是思维方式，而不是知识

如果通才的优势在于难以预测的领域，那么 FDE 要问的实际问题是：这种优势在工作中长什么样？最可信的答案是：把一个客户那里学到的教训带到下一个客户那里的能力。

设想同一条教训贯穿两个项目。在一家医院，数据规范写着“出院日期”字段总是有值。试跑数据管道时，你发现很多记录是空的，因为护士要到交班时才录入日期。

这是一条原始观察，只对那家医院成立。下一步是把它提炼成一句不含专有名词的话：“数据规范描述的是意图，而不是现实；要了解现实，就去问谁在什么时候录入这个字段。”

六个月后，你去了一家银行。表名不同，系统也不同，但在第一周，你在写任何一行转换代码之前，就先对规范里标为必填的字段做了数据剖析，并且恰好问了那两个问题。在医院花了整整一周才暴露的问题，如今只是第一天检查清单上的一项。

只有能提炼成这样的句子，广度才有价值。两位 FDE 各自服务过五个客户：记录模式的那位，会带着五条经验去见第六个客户；另一位只有五个故事。

## 观点三：像对待一段感情那样试水 FDE 岗位

书中关于转换职业的论证，建立在“匹配质量”（match quality）之上。经济学家把它定义为一份工作与做这份工作的人之间的契合程度。

Commoncog 强调，探索是学习的主要收益之一，而不是图个乐子的配菜。由于尝试的机会很少，许多学生在弄清是否适合自己之前，就匆匆走上一条窄路。

Shelf Awareness 指出，这种对契合的寻找，正是成功的大器晚成者的共同点。Brikman 的建议更实际：把大学和最初几份工作当作约会，边试边学，而不是先计划再执行。

假设你是一名后端工程师，正在考虑 FDE 岗位。与其反复分析，不如做一个为期四周的实验。第一周，旁听一次与客户的技术会议；第二周，给不会写代码的人做一个演示；第三周，接一张客户的升级工单；第四周，跟着同事完整参与一次客户上线引导。

每完成一项任务，就写三行字，不多不少：做完后你是精力充沛还是疲惫不堪；模糊不清的情况让你好奇还是沮丧；你是想解决这位客户的具体问题，还是想回去做通用的东西。这三行字就是衡量你自身匹配质量的方法，正对应上文“契合程度”的定义。

月底，把这十二行重读一遍。如果大多偏向精力充沛和好奇，就去找经理谈内部调岗，或者开始投简历。如果大多写着疲惫，这也是好结果：你在一条窄路上走得太远之前就避开了它。

写简历时，要把广度作为证据呈现，而不是罗列关键词。“在三种不同的数据环境中工作，总结出一套通用的源数据检查流程”这样一句话，比并排列出十项技术更有说服力。阅读岗位描述时，“模糊”（ambiguous）、“面向客户”（customer-facing）之类的词，说明这份工作属于险恶环境。

## 谁适合读，按什么顺序读？

这本书适合有两到八年经验、在“继续深耕一个方向”和“转向 FDE 这类复合型岗位”之间犹豫的工程师；也适合需要用语言向经理解释自身价值的在职 FDE。

按你手头要做的事来读。想了解总体论点，从 Tiger 和 Roger 的例子读起；即将规划一个项目，险恶环境的观点马上用得上；匹配质量的观点，留到考虑换岗时再读。

如果时间不够，先读 Commoncog 的摘要和 Brikman 的书评，再决定要不要读全书。

## 把《Range》用到工作中的三个常见误区

第一个误区是把这本书当作什么都不必深入的借口。上文医院和银行的例子之所以成立，是因为你足够深入，能剖析数据、写出转换逻辑。广度立足于扎实的技术基础，而不是取代它。

第二个误区是把一切都当作险恶环境。在已有测试套件的部分搞实验、提开放式问题，只会拖慢项目。第三个误区是辗转于多个客户，却没有提炼出一句抽象表述，到头来只是多了几个故事。

《Range》不会教你部署任何系统。但读过之后，你很难再把客户现场那些模糊不清的几周看作失败，因为正是这些日子积累起你的广度。

**本周动手试试:**

- 把当前项目的工作分成两栏：有规则可循的和险恶的。为每一项险恶的工作，写下一个本周就能做的小实验。
- 挑一个你在两个不同项目或两个不同客户那里都遇到过的模式，用三行写下来：原始观察、抽象表述、你如何再次应用。去掉所有专有名词，存进你的职业笔记。
- 如果你是希望转向 FDE 岗位的软件工程师，就开始这个四周实验：每周接一项直接面对客户的任务，每做完一项，写一行说明它让你精力充沛还是疲惫不堪。

## 信源

- [Range by David Epstein: 9780735214507 (Penguin Random House)](https://www.penguinrandomhouse.com/books/550188/range-by-david-epstein/)

- [Range: Why Generalists Triumph in a Specialized world (davidepstein.com)](https://www.davidepstein.com/the-range)

- [Range: Why Generalists Triumph in a Specialized World (Wikipedia)](https://en.wikipedia.org/wiki/Range:_Why_Generalists_Triumph_in_a_Specialized_World)

- [Range: Why Generalists Triumph in a Specialized World (Publishers Weekly)](https://www.publishersweekly.com/9780735214484)

- [Book Summary: Range by David Epstein (Commoncog)](https://commoncog.com/range-book-summary/)

- [Review: Range: Why Generalists Triumph in a Specialized World (Shelf Awareness)](https://www.shelf-awareness.com/theshelf/2019-05-02/review:_range:_why_generalists_triumph_in_a_specialized_world.html)

- [Review: Range by David Epstein (Yevgeniy Brikman)](https://www.ybrikman.com/blog/2019/11/15/range/)
