陈皓:加班与效率

开发 项目管理
认为加班是公司的核心竞争力,或是超越对手的手段,是一种相当 Ridiculous 的想法。这说明管理者们已经想不到自己公司的核心价值了。

微博上看到了这么一个贴子,就像以前在《腾讯,竞争力 和 用户体验》中批评过腾讯说自己的核心竞争力是员工加班一样,我顺着Winter的回复也批评了一下这个微博——

靠加班超越对手?!劳动密集型么?我要是对手的话,我就来趁机挖人了,直接摁死你……//@寒冬winter: 当一个管理者的智慧无法衡量一支团队的产出的时候,他就会把“工时”当做最后的救命稻草,死死抱住——这是他唯一听得懂的东西了。”

然后,@玄了个澄的在微博里at我说,他在微信里看了@Fenng 关于加班的言论,希望我评论一下。我看了一下大辉的文章,虽然写得有点散乱,但是我和他的一些观点还是很类似的,我主要在这里加强一下我的看法。

关于加班

认为加班是公司的核心竞争力,或是超越对手的手段,是一种相当 Ridiculous 的想法。这说明管理者们已经想不到自己公司的核心价值了

是的,这些靠堆功能没有灵魂的产品的价值就只剩下比谁跑得快了。他们愚蠢和思维有限的大脑里已经区分不出来,“跑得快”和“跑得好”的差别了。产品的发展不是短跑,而是长跑,甚至更像是登山,登山比的不是快,而比的是策略,比的是意志,目的是登顶。并不是谁一开始爬得快谁就能最先登顶的,你往往被超越的时候都在后半程。对于一些危险的雪山来说,登顶的人通常都是要做好非常很充分的准备,并且在登山的过程中学会如何保留体力,学会如何步步为营的,从来不强行登顶。

《Rework》摘录及感想 中提到过两点

  • 条件受限是好事,因为条件受限可以让你小材大用,让你没有办法再用蛮力来完成工作,让你必需去思考使用知识密集型的解决方案来更聪明的解决问题
  • 工作狂往往不得要领。他们花大把大把的时间去解决问题,他们以为能靠蛮力来弥补思维上的惰性,其结果就是折腾出一堆粗糙无用的解决方案

就像人肉手动的织布机一样,当面对大量订单的时候,一个简单粗暴的方法就是拼命地加人和拼命地工作来换取更大的生产力。只有你在人手不够或是人力成本太高的情况下,你才会去想是不是可以优化一下工具,制造一个更有效率更有生产力的工具。

在中国,劳动力的成本不高,而管理者们的智力和能力有限,所以,在这个环境下,尤其在KPI和数字的重压下,管理者们是非常非常容易想到需要靠加人或是加班来提高产能的。所以,他们放弃了知识密集型的创新,而采用了劳动密集型的简单粗暴的方式,长期下来,导致了自己再也不会思考,导致了只会使用人肉解决问题。

于是,当全自动化的织布机出现的时候,这种劳动密集型的公司分分钟就成为了历史。这样的例子太多太多了,看看历史就知道了。

当然,有时候,我们需要冲刺还是要适当偶尔加班的,但这绝对不应该是常态和长期的,不然,这必然是一种饮鸩止渴的行为。

另外,我还要多说几种情况:

1)如果你的员工就像在《软件公司的两种管理》中所说的,像Widget Factories那样,净是些X型的人的话,那么,你也只有使用加班和加人这种方式,就像长城和金字塔的建设过程一样,就像富士康一样,你的团队本质是不会思考只能用鞭子去抽他们的方式去管理。于是,你也只能用“狼性”来呼唤你的员工像那些低智商的野兽一样的行事。

2)有时候,我们需要去“卡位”,需要很快地去实现一个东西占领市场,这需要加班。就像 Win95和Intel的奔腾芯片的浮点数问题一样。但是千万不要忘了,你在卡完位后,得马上把你产品的质量搞上去,不然,你一样会死得很难看。(Windows是有两个团队的,一个团队是用来占领市场的,另一个团队是安心搞发展的)注意:“卡位”从某种程度上来说应该是一种有价值的事,但我们依然要思考是否在用蛮力行事。

3)另外,有的人工作就是生活,生活就是工作,所以,对他来说,这不是一种工作,而是一种事业。我认可这样的精神和热情,但是,我还是想让这样的人反思一下自己,有没有用一种更为聪明的方式来从事自己的事业?而不是用蛮力。

无论上述的哪种情况,我们都可以看到,只要你进入了劳动密集型,靠人和靠加班来解决问题,并沉迷并深 陷其中不能自拔,那们,你终有一天会玩到尽头的。

关于效率

很多人不知道什么叫效率,他们以为效率就是:单位时间单位人数下干更多的活。这是错的!效率不是比谁干的活多,而是比谁干得活有更大的价值。效率的物理公式是:有用功/总功换句话说,效率就是:单位时间和人数产生的价值。所以,提高效率,并不是加人,也不是干更多的活,而是,你这么多人干出来了多少有价值的东西。

有了公式,我们也就知道怎么来提高效率了。

1)增加有用功

  • 你得多问问你的需求方,为什么要加这个需求?干这个事到底有多大的价值?能让多少人受益?
  • 你得多问问你的需求方,能不能稍微简化一下需求,这样可以让我付出的努力更少一些?
  • 你得要多去思考一下,你是在干一个建筑队的活呢?还是在干一个装修队的活?
  • 你得要多去思考一下,业务上和用户的最大的痛点是什么?

关于增加有用功,再说两点:

  • 像乔布斯那样,告诉你的产品经理或是业务方,你现在提的10需求,我只能做3个,会是哪3个?为什么是这3个?有用功的来源不是拼命做需求,而是砍需求。
  • 关于创造价值,我们要干的不是像百度的“竞价排名”那样,把钱从别人口袋里搬运到自己的口袋里,而是要像“英国工业革命”或是“硅谷”那样,把价值真正的创造出来

2)降低总功

  • 你得多问问自己,你有多少时间是在干一些支持性而不是产出性的工作?
  • 你得多问问自己,有没有残酷无情地减少重复劳动的劳动密集型的工作?
  • 你得多问问自己,自己的管理者和员工的能力和素质有没有在降低你的团队执行的成本?

3)形成合力

有一个很不错的产品经理对我说,他看了南京那两个小女孩被饿死的消息,感到很震惊。与之有关联的每一方都说自己尽力,但是最终结果人还是饿死了,你几乎不敢相信这是真的。

但是,类比一下我们的项目,这种事似乎又发生在我们的公司当中,尤其是大公司中。每一个团队都说自己尽力了,结果项目就是没做好,底层团队说自己只干底层,已经尽力了,前端说自己只负责前端,也尽力了,后端说自己只管后端,不管前端和底层,运维说对于这样的设计和部署自己也尽力了,产品经理,运营都这样说,自己尽力了。你会发现,你几乎很难批评他们,因为他们的确如他们所说的那样,把他们自己的那块都做得很好了,而且的确做得很好了。但是,最终的结果却是:整个产品问题很多。

所以说,效率不是每个团队各自的效率,而是整个团队对整个产品负责的共同使命,这样才会现整体的效率。没有整体的效率,只有个体的效率,最终也等于没有效率

T-Shirt Size Estimation

Amazon用一种T-Shirt Size 估计的方式来做项目。

  • 产品经理会对每一条需求评估上业务影响力的尺寸,如:XXXL 影响一千万人以上或是可以占到上亿美金的市场,XXL,影响百万用户或是占了千万金级别以上的市场,后面还有XL,L,M,S,这样下来。
  • 开发团队也一样,要评估投入的人员时间成本,XXXL表示要干1年,XXL干半年,XL干3个月,L干两个月,M干一个月,S干两周以下。等等。

于是,

  • 当业务影响力是XL,时间人员成本是S,这是最高优先级。
  • 当业务影响力是M,时间人员成本是M,这是低优先级。
  • 当业务影响力是S,时间人员成本是XL,直接砍掉这个需求。因为是亏的。
  • 当业务影响力是XXL,时间人员成本是XXL,需要简化需求,把需求简化成XL,时间人员成本变成M以下。

大家感受一下吧。

好了,我就说这么多,欢迎大家讨论。

原文链接:http://coolshell.cn/articles/10217.html

责任编辑:林师授 来源: 酷壳
相关推荐

2012-07-16 01:20:09

代码效率

2014-06-12 08:53:01

团队团队效率

2012-06-21 09:43:45

2012-02-02 10:35:12

C++

2012-08-16 13:31:06

陈皓架构师

2012-09-03 13:51:43

测试软件测试单元测试

2012-07-25 10:16:59

2012-04-27 10:24:07

2014-02-24 10:45:00

2012-10-15 16:13:29

2012年度IT博客大陈皓

2012-10-25 17:56:43

陈皓云计算架构师大会

2014-04-15 10:13:01

2012-08-02 09:36:58

fork面试题

2012-01-16 09:58:26

2021-12-22 10:49:42

架构运维技术

2014-07-29 11:35:34

2014-08-20 16:37:51

2012-10-25 16:07:33

云计算架构师

2023-05-15 15:10:25

开发技术

2015-06-04 10:29:16

程序员工作效率
点赞
收藏

51CTO技术栈公众号