- A+
领500g书库,关注公众号:程叫兽的宝藏 (长按可复制!)
热门下载区==>点此链接进入<<<
本文节选自《卓有成效的工程师》
用指标推动进展
度量工作进展和疆效似乎是上级职贡范围的事,但它实际
上也是我们评估自己的效率和确定工作优先级的有力工具。正
如彼得.德鲁克〈Peter Drucker) 在《卓有成效的管理者》中指
出的,“如果你不能衡量它,你吏无法改进它。辣在产品开发
中,经常有这样的情况: 产品经理构思一些新功能,然后软件
工程师构建并及布这些功能,最后团队庆祝新功能上线一一这
整个过程中没有采用任何机制来度量新功能是否真的改善了产
品体验。
好的指标可以实现许多目标。第一,它们可以帮助我们专
注于正确的事情。借助于这些指标,我们可以确认产品的变更
以及我们付出的努力是否达到了目标。怎么知道在产品中添加
的新奇组件是否提高了用户参与度? 或者速度优化后是否解雇
了性能瓶颈问题? 又或者新的推荐算法是否为用户提供了更好
的建议? 在回答此类 保持自信的唯一办法是定义一个
与目标相关的指标 尼指标是每周用户活跃度、响应时
间、点击率,还是其他什么指标一一然后度量变更所带来的影
啊。如果没有这些指标,我们就只能根据直觉行动,但几乎没
有办法能确定直觉是否正确。
第二,好的指标有助于防止问题复现,对其在东段时间内
的值可视化,就可以发现问题。软件工程师都知道在修复bug的同时编写回归测试的价值: 它可以确认补丁真的修复了bug,并
检测这个bug将来是否会复现。好的指标有类似的作用,但其在
整个系统范围内发挥作用。假设产品注册率下降了,在调查中
你可能会发现,是JavaScript库最近的变更导致正浏览器出现
bug,而你很少测试这个浏览器。如果应用程序的延迟激增,这
可能是在告诉你,新添加的特性给数据库带来了太大负载。如
果没有一个展示注册率、应用程序延迟和其他有用指标的仪表
盘,就很难识别这些已修复的问题是否复现。
第三,好的指标可以推动进步。在Box,软件工程师们非常
关心应用程序的延迟,这是一家为企业市场营销构建协作软件
的公司。一个专门的性能团队为了将主页的加载时间缩短几秘
而努力工作了三个多月。但是,其他应用团队推出的新功能
把这几秒的时间加了回来,导致页面加载速度并没有得到提
高。Box的工程副总裁山姆席拉斯 《Sam Schillace) 在与我的一
次交流中,介绍了一种称为“性能环轮”的技术,他们现在用它
来解决这个问题,并对性能指标的提升施加压力。未轮是一种
机械装置,它允许边缘有许多此的轮子朝一个方向旋转,同时
防止其向相反方向运动。在Box,他们使用指标来设定一个效
值,称之为性能环轮。任何会导致延迟或其他关键指标超过严
轮的新变更都不能部署,除非将其优化到冰值内,或者其他一
些功能得到平衡性的改进。此外,每次性能团队进行系统级的
改进时,他们就会进一步降低性能环轮的值。这种做法保证了
产品性能朝着正确的方向发展。
| 一名合格的工程师 | 成功的工程师 |
| 卓有成效的工程师 epub | 成为一名优秀工程师 |
| 卓有成效的工程师mobi | 工程师成果业绩 |
综上:《【工程师的贡献】用指标推动进展度量工》值得推荐阅读

