被低估的软件工程技能:好的写作能力

6 minute read Published: 2019-06-03

本文翻译自博文 Undervalued Software Engineering Skills: Writing Well

所有权利归原作者所有。


自从转型成为工程经理以来,我一直在指导几位经验丰富的软件工程师在专业上进一步发展。我注意到一些开发技能的重要性经常被人们低估。这些技能可以显著提高任何开发人员的影响力。其中一个技能是写作。

大部分软件工程师主要关注于怎么把代码写得更好。这当然很重要。这是在一个小规模的团队中成为优秀工程师的重要一步。

然而,成功的公司会不断发展壮大。软件工程师团队迟早会超过几十个人,在这之前每个人都可以轻松地与其他人交谈。这时人们将分散在不同的楼层,将会在不同地点的开设新的办事处。面对面的交流开始不足。电子邮件、聊天工具或者视频通话等频道会变得更加重要。这种增长的速度因公司而异:对某些人来说,这需要数年时间。对于一些非常成功的公司来说,它发生的速度会快得多。

在一个更大的组织中,为了让消息传递到更广泛的人群中,写作会变得很重要。对于软件工程师而言,写作成为和身边同事之外的工程师和团队进行联系、交流和影响的工具。为了让思考、权衡和决策过程持久化,写作变得至关重要。写下来,让这些想法可以让更广泛的人群阅读。应该持久记录的事情可以包括提案、决定、编码指南、最佳实践、学习、Runbook、调试指南、事后调查、甚至是代码检查。

为了让人们去阅读你所写的内容,它需要写得好一点。如果你在前面吸引到了人们的注意力,他们会继续阅读,他们将会收到你想要传达的信息,大部分人才能在对你表达的内容没有误解的情况下,做出回应并去做事。通过良好地写作,你可以扩展你与多个团队、组织或整个公司进行有效沟通的能力。和你的直接团队之外的人进行沟通和影响的能力是工程师成长的必备技能——根据组织里面叫法的不同,成为高级工程师、领导、主程、杰出工程师等等。

那么你怎么才能在写作方面做得更好呢?写得清楚、简洁,并且易于阅读?与每项技能一样,这是一个了解基础知识、练习、获得反馈和重复的过程。

从书本上学习基础知识是个不错的开始。我经常推荐工程师去阅读《On Writing: The Classic Guide to Writing Nonfication》和《The sense of Style: The Thinking Person's Guide to Writing in the 21st Century》。

对基础知识有了认识之后,重新阅读自己的写作并且无情地重新编辑是成为更好的作者的下一步。关键的一点是,把自己放在目标读者的角度,问自己是否在前面部分就抓住他们的注意力。另外一点是,以较短的形式传递相同的信息并重新编写内容。来自 GrammarlyReadable 等类似的服务,作为即时反馈是非常有用的。另一种成长方式是,向你见过的写得好的人为你的电子邮件和文档询问反馈意见。

不要仅仅是从我这里得到建议。也可以从其他人那里,比如 Google 的 8 号员工,现在的 Google 工程高级副总裁 Urs Hölzle,他也说过 清晰地写作是工程师的一个重要核心能力。

工程师经常低估写作的重要性。投资这项技能,以扩大你向其他人传达信息的能力,成为更有影响力的工程师吧。

[也可以看 Hacker News 对于这篇文章的讨论]