时间。”
项目经理:“那就是4月5日可以提交啦?”
小王:“是的,经理。这个功能内容很多,还要实现一个邮件功能,4月5日能提交已经是我的极限了。”
项目经理:“那就4月5日吧。”
4月2日,小王发现:系统中已经有一个类似的邮件功能,直接使用就可以。
4月2日 18:00,小王已经把功能都完成了。
4月3日 9:00,小王把功能都测试通过,并且还私下请用户帮他进行测试通过。
4月3日 11:30,项目经理:“小王,那个功能做完了吗?”
小王:“经理,正在做呢。你看,昨天你又叫我修改另外一个Bug。不过,经理你放心吧,4月5日一定可以提交。”(小王已经做完工作,但声称没有做完。)
4月4日,小王专注的看着一本电子书,名字叫《The Deadline》。
4月5日 15:00,小王把代码提交,并向经理发邮件,主题是:XXX功能已经完成。
4月6日 9:00,项目组开会,项目经理表扬了小王,要求大家向小王学习。因为这次发布只有小王按时完成了工作。
简直不可思议,我们的程序员就是这样工作的。是的,我也认为不可思议!可是哪个程序员敢保证自己没有这么干过呢?这就是所谓的最后期限:人们总是在最后期限才开始工作
二、热衷于加班
在所有的软件项目组中,加班已经成了天经地义的事。甚至有些管理层认为,如果一个项目组不加班,说明项目组没有尽全力的去做事。我至今不明白这是什么道理,工作是否尽力与加班到底有何关系?工作的绩效又与加班有何种关系?
在笔者的项目组中,笔者的客户方也曾对笔者要求项目组必须加班,遭到了笔者的拒绝。在保证每个阶段在不加班的情况下按期完成,客户方才勉强同意。事实证明,不加班也是可以把项目做完的,而且可以做得更好。
在我的程序员生涯中,曾经两次长达4个月的封闭开发期,被要求每天从19:00-22:00集体加班。但实际情况是,每天都可能要在23:00之后才可以下班。因为项目经理没有走,所以其它开发人员也只能留下。痛苦的是,我在那段加班时间里除了看技术电子书外,找不到任何可做的事情。我相信,当时项目组有太多的人跟我一样。当我每天23:00回到宾馆时,已经完全麻木了。我无时不想那该死的项目早一天结束。在那段时间里,我最大的收获时进行了大量技术积累。项目结束时,我的加班记录累计长达30人天。
甚至有些程序员在正常的工作时间里也是不做事的,下班前开始忙碌,加班干活。想想这样的加班又有什么效果呢?
三、工作成熟度与团队成熟度
因此,我一直致力于研究提高个人工作绩效的方法和提高项目组工作绩效的方法。
在长期的学习、摸索、实践中,我发现全心的投入工作,干好4个小时就足以把工作做好。这种全心投入产生的绩效要比以前一周所干的还要多。如果每天努力干好8个小时,你会比周围的人产生2倍以上的绩效,当然也会非常疲惫。
在管理一个40人规模的团队时,我每天投入仅仅4个小时就足够。为什么会有这么高的工作效率?主要是长期坚持下面的方法:
1.日计划,列出工作清单(列出当天需要做的事情)
2.为任务划优先级(标出当天必须完成的事情)
3.只做最重要的事情,而不是最紧急的事情
4.绝不拖延,计划当天必须完成的事情就一定要做完才走。
笔者长期以来在思考,这个方法能否帮助团队提高工作绩效?能否让项目组提高生产率?能否使项目按期交付和提前交付?能否帮