首页 > 技术管理, 杂项资源 > 加班与效率

加班与效率

2013年7月24日 发表评论 阅读评论 108,070 人阅读    

微博上看到了这么一个贴子,就像以前在《腾讯,竞争力 和 用户体验》中批评过腾讯说自己的核心竞争力是员工加班一样,我顺着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以下。

大家感受一下吧。

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

(全文完)


关注CoolShell微信公众账号可以在手机端搜索文章

(转载本站文章请注明作者和出处 酷 壳 – CoolShell.cn ,请勿用于任何商业用途)

——=== 访问 酷壳404页面 寻找遗失儿童。 ===——


本广告收入已由广告主捐给Wikipedia

好烂啊有点差凑合看看还不错很精彩 (71 人打了分,平均分: 4.85 )
Loading...
  1. 2014年9月2日16:05 | #1

    @haibo
    人肉+2

  2. 2014年9月2日16:12 | #2

    @xyz

    精辟~~~~~~~~~~~~~~~~~~~~~~~~~

  3. 2014年9月6日20:33 | #3

    说的太好了!我是一个高中生,听了您的话受益匪浅!

  4. 骨汤鸡蛋面
    2014年9月22日09:24 | #4
  5. zz
    2014年9月28日10:47 | #5

    程序员是最不能加班的吧 因为思考是需要休息的 加班不会脑子乱成一团 效率探底么 而且容易引起反感 那就效率更差了

  6. 2014年10月12日22:36 | #6

    大部分加班都会降低效率。自己深有体会,有时候敲上一天代码,中间不怎么休息的话,思绪就会乱。本人思绪清晰的时候一般是上午10-12。然后晚上睡觉之前的思路也比较清晰,话说好多的功能的实现都是躺在床上睡着之前想出来的。

  7. waterz
    2014年11月9日20:48 | #7

    @OMG
    用华丽形容不合适,应该说严谨、朴实

  8. 2015年4月9日11:09 | #8

    @haibo
    +!

  9. 2015年7月10日16:15 | #9

    皓哥表达的非常到位。可惜看到这篇文章的都是咱们这帮程序员,领导看不到。即使领导看到了也未必认可,哎哎,期待咱们这帮程序员早日当上领导,实践这些智慧之言。

  10. 兴浩
    2015年7月26日15:09 | #10

    表达非常到位,万恶的kpi

  11. toney
    2015年8月11日22:05 | #11

    我现在正在慢慢的往管理走 我一直在思考如何提升组队成员的效率 看了这片文章还是有不少感触的

  12. 潘大大
    2015年9月7日11:20 | #12

    关于加班,我还是觉得应该实事求是而不是理想主义。

    在我看来,目前团队内常有的加班情况会发生在:

    1. 资浅的程序员无法很好的在工作日内完成自己该完成的任务,在团队进度的压力氛围下自愿加班。对于刚入行尤其是其实从毕业后才开始写代码的新人,我觉得这个是很自然的。公司不是学校,选择了一个行业后就应该需要适应行业的压力(游戏行业)。一个熟练程序员1、2天能完成的功能如果你一周都无法完成还不加班去自我学习以及改善,那么你会被淘汰。我一向鼓励在团队中磨练新人,但是磨练不仅仅只是个客气话,没有天赋就应该努力,有效代码数量真的是要靠不停的写和重写的。

    2. 进度没有按照预期进行,BUG数量超过预期,复杂度超过预期后为了赶上预定节点而集体加班。在已经尽可能透明化所有任务,并且明确目标的前提下,提前把高风险的任务通过设置节点在项目真正deadline到达之前完成是最有效的方法之一。集体加班是为了团队整体效率最高化,毕竟程序完成的内容能马上被策划验收并且QA校验的话可以大幅提高效率。

    总之,在我看来,团队和个人,如果加班能达到双赢,那么这是很正常的一种时间管理方式。

    不过从文中所述,把目标和手段搞反了,就是SB。

  13. advice
    2016年7月7日17:17 | #13

    最近浏览你的网站发现一个小问题,在首页点击浏览全文,进入文章全文,然而直接定位到你浏览的下一行,个人觉得应该定位到你浏览位置的上两行,因为在跳转的时候人的思维是有短暂性的消失,如果定位到上两行,有助于对思维的快速恢复,保持浏览的整体性,这只是一个用户的体验。。。。。

  14. 仙人掌
    2016年7月8日15:35 | #14

    目前来看,这类观点老板写得比较少,干活的人写得比较多,这是一个有意思的地方。

  15. 2016年8月23日15:46 | #15

    清晰明了,可惜国内能做到的公司太少了

  16. fwin3000
    2016年9月2日15:07 | #16

    最后砍需求和t-shirt估值亮了!可是大多数boss都喜欢高大全,短小精才是王道

  17. Bobdeng
    2016年10月21日10:10 | #17

    @Jcdroid
    所以,编程一个小时,起来上个厕所,喝点水,溜达一会儿,有利于提高编程效率。

  18. langzi
    2016年11月6日13:32 | #18

    加班这个事情呢,我是拒绝的,特别是熬夜的,人要努力,但是我认为努力是去学习,并非努力去工作!

评论分页
1 2 3 4 10217
  1. 2014年9月25日19:49 | #1
  2. 2015年3月5日19:58 | #2
  3. 2016年1月8日19:24 | #3
  4. 2016年7月26日18:31 | #4
  5. 2016年8月19日13:15 | #5
  6. 2016年9月18日16:29 | #6
  7. 2016年9月18日18:49 | #7
  8. 2016年9月20日11:01 | #8