写作让我成为一名更好的工程师

2025-06-10

写作让我成为一名更好的工程师

去年,我做了一件我本可以做的最好的事情之一:我开始定期写作,以成为一名更优秀的软件工程师。这不仅让我变得更善于沟通,还教会了我如何进行战略性思考。

学习写作

2021年初,我开始为自己写作。

我写下正在研究的问题,勾勒出解决方案,并记录我所学到的知识。我起草了会议记录、与经理的对话,以及想与团队分享的想法。将文字提交给编辑让我能够将想法塑造成独立的实体;而在此之前,我只能依靠直觉和模糊的心理图像来运作。

我意识到撰写有关工程的文章很难,因为好的写作需要好的思考。

现在,我以前写软件的时候已经很熟练了!我遵循直觉、经验和内心的秩序感取得了很多成就。然而,我无法轻易解释我的目标,也无法解释我为什么要追求它。

学习编辑

我写了很多东西。编程时我会做详细的笔记。散步时我会记录下我的想法。我一次就能确定整个项目的范围。但第二天我经常会回到一堆不成熟的胡言乱语。有一半的时间,我都记不清自己写了什么。我无法直接写下我的想法,以后再依赖它们。

这让我知道我是我的主要听众。

我必须修改我写的内容,使其更加简洁明了,并进行整理。我必须说服未来的自己,我的想法是合理的,或者至少是可以理解的。我为项目文档添加了更多结构。我开始命名我使用的模式,描述特定方法的优缺点,并探索替代方案。

事件驱动的设计可行吗?我们的数据湖能扩展吗?存储需要增长多少?

通过写作,我学会了将直觉提炼成连贯的概念。我能够清晰地阐述长期目标以及如何实现它们。我读了https://www.amazon.com/Good-Strategy-Bad-Difference-Matters/dp/0307886239,发现这叫做“策略”。

学习战略思维

撰写战略文章则更具挑战性。

好的策略需要清晰的目标愿景、对机遇和障碍的全面洞察,以及对技术格局的扎实理解。如果只编写代码和简单的项目文档,很多事情可能会被忽略。没有人会阅读拉取请求、JIRA工单、不完整的会议记录以及关于全局的论证。即使是详尽彻底的代码审查也无法暴露战略缺陷。

然而,策略恰恰是最需要仔细讨论和修改的。也许那些代码根本就不需要写!

一个糟糕的战略,即使执行不力也是无用的,而一个好的战略,如果执行不力,却能创造奇迹。

沟通策略

我一直能够有效地引导遗留代码库朝着有影响力的业务目标前进。但我永远无法解释我是如何做到的,无论是对我自己,对利益相关者,还是对团队成员。这意味着审查策略是不可能的。

相反,我们进行了漫无目的的白板会议和松散的线程;架构和实施工作朝着不同的方向发展;需要大量的粘合代码。

一旦我开始专注于写作,一切就都水到渠成了。经过几个月的练习,我写了一份简洁的三页战略文档,概述了我们的数据工程战略。其中几句关键的话阐述了如何将新需求与长期目标相结合,为更细致的工作指明了方向。

我开始编写类似的简短 RFC(参见https://dev.to/wesen/quick-tip-tuesday-writing-rfcs-for-fun-and-profit-3bo)。我坚持了几个月,写了几十份文档,才让这个流程被所有新开发项目采用。

为更好的工程而写作

如今,我从事的每一项工程任务都以写作为载体。它让我能够长时间清晰地思考,也让我能够做出并记录决策,赋予它们应有的深度和长远的眼光。

(封面:博罗季诺战役 - 勒琼男爵 - 维基媒体)

鏂囩珷鏉ユ簮锛�https://dev.to/wesen/how-i-learned-strategic-thinking-as-an-engineer-14aj
PREV
使用 NodeJS 中的多线程同时上传多个文件
NEXT
Python 中的简单依赖类型