管理学大师史蒂芬·柯维代表作《高效能人士的 7 个习惯》是商业书籍的经典之作,产生了积极而深远的影响。如果我们把《高效能人士的 7 个习惯》的理念应用到软件工程师身上,又会怎么样呢?
资深软件工程师 Luthfur Chowdhury 根据职业生涯中见过的优秀软件工程师的常见习惯,整理出以下清单——
7 Habits of Highly Effective Software Engineers(高效能软件工程师的 7 个习惯):
1. 快速将想法打造出原型,进行概念验证
许多想法和新技术概念听起来很棒,但现实往往会有所不同。
为了更好地了解想法的可行性,优秀的工程师会更快地投入原型设计和概念验证。原型设计是一个很好的学习和探索工具。你会发现自己想到的方法是否可行,是否真正解决了你原来的问题,或者是否存在你之前没有想到的限制。
2. 有效评估工作量
工作量评估会影响产品路线图、技术方法和交付给终端用户的价值。
拥有良好评估能力的工程师的团队会给他们的工作带来信心。经常延期的团队会产生压力和不确定感。优秀的工程师通过跟踪他们的估计和工作实际花费时间之间的差异来更好地做到这一点。
3. 快速且及时地 review 代码
审查 PR 的速度越快,代码改进的速度就越快,并且投入生产的速度也就越快。快速的代码 review 可以向开发者提供反馈,同时代码和相关概念仍然记忆犹新。
4. 主动记录代码、设计和流程,形成文档
优秀的文档将帮助未来的工程师维护和构建工作。
放弃现有系统的一个关键原因通常是周围没有人知道它是如何运行的,或者不了解技术决策背后的背景。优秀的工程师通过记录他们的工作来确保他们留下坚实的基础和遗产。
5. 坦诚地参与技术讨论
构建出色的软件需要一个对技术想法持开放和坦诚态度的团队。
每个人都应该坦诚说出自己的想法,并营造一种邀请其他人也这样做的氛围。提出一个好主意并继续重复它以使其变得更好。
如果看到了想法中的缺陷,就公开地指出来,并解释你的理由。
6. 完成“狗屎”工作
只有完成工作才能取得成果。你需要把事情做好并交付生产。当一个项目接近完成时,我们都有过能量减弱的经历,当时间不够,终点线仍然感觉很遥远的时候。这就是需要集中注意力、缩小功能范围、保持强度水平并推动项目完成的地方。把事情做好是伟大工程师所体现的一种技能和习惯。
7. 保持好奇心
伟大的工程师往往具有天生的好奇心。他们不止对解决长期业务问题的新技术、新技术方法感兴趣。因为他们的好奇心不仅限于技术,还会经常进一步了解他们所做工作的用户和业务背景,以及他们可以产生的影响。
原文:https://makingsmallercircles.com/