管理项目风险从识别加班开始

如今国内互联网行业的风气是,加班之势越来越盛,

加班虽然能够延长工作时长,但并不一定能有效的创造更多价值。


因为开发软件是一项知识生产活动,

我们可以让员工加班工作,但除非他们自愿,

却没有办法让他们加班思考。


想让一个员工坚持思考,需要达成以下几个条件:

  • 热爱自己的工作,且团队氛围轻松愉悦

  • 时间不能被占满,留有一定的空余

  • 思考能得到的奖励,从思考到成果之链路畅通


加班还会带来另外的一个问题,可能会更加严重,

那就是,掩盖了项目预算超标的事实。


如果项目开始时,设定的就是只能通过加班才会完成,

那么就得考虑,我们是否值得付出这么多的资源,

能否少付出一些,只得到原计划交付的最重要的那一部分产物。


如果项目开始时,没有想到会加班,

那么就说明,我们用了比预算更多的资源,却勉强达成预期。

那是否就说明,这件事情就不是料想中的那么划算了。


所以,不论当初是否设想了会加班,

总之都是项目管理者,没有考虑清楚这件事情。

下文我们来调正思维方式。

总有更重要的部分

遇到资源吃紧时,不要延期,而是要做到交付更重要的部分。

这是软件开发,比起其他工程项目而言,非常独特的一点。


因为整个交付过程不是一蹴而就的,也永远做不到完美,

我们只能通过不断迭代来修正自己,逐渐逼近最优解。


所以,当我们拿到一个复杂软件需求的时候,

不应该考虑的是,怎样加班才能在最短的时间内做完,

而是应该考虑,如果做不完,我们应该优先交付它的哪些部分。


不提倡加班做完的原因有两个:

  • 仓促完工,可能会导致质量下降

  • 原始需求中,不重要的那些部分可能价值并不高


综上,我们应当学会,用排优先级的视角来考虑需求,

用尽量少的人力,高质量的完成最有价值的那一部分需求。

从而快速的收集反馈,进入下一轮迭代。

控制预算

如果计算资源是无限的,那么算法优化就失去了意义,

因为如果不需要考虑时间和空间复杂度的话,什么算法都无所谓了。

也正是因为我们需要在限定资源的情况下,要达成尽量好的效果。

所以才需要寻求更好的算法。


项目管理也是如此。如果人力投入是无限的,工期也是无限的,

那么,管理项目风险和进度,也就毫无意义。

正是因为我们只有这些人,只有这么少的时间,却需要完成那么多的功能,

才需要对项目进行管理。


所以要想成为一名合格的项目管理者,首先要明确限制条件,

不要任由预算上涨。

  • 设定必须要交付的截止日期(DDL)

  • 对于加班现象,要警惕、敏感


设定 DDL 就是限定工时(在人数确定的情况下,就是限定人日)。

到 DDL 必须要交付,强迫大家识别出什么是最重要最该交付的内容。


此外,加班就说明工时超出预算,那么就该警惕了,

我们是否将时间,花费在了不重要的事情上,或者优先做了不重要的事情。

还是说我们对待交付的结果,预期太高了,应该降低预期。


往往问题都是出在这两点上,于是进入了如下的加班死循环,

加班,领导高兴,证明员工很努力,

延期,领导不高兴,是不是加班太少了。


而事实上,加班正是预算出问题的第一声哨响。

我要工作我不想加班

上文说的加班,是从项目管理者角度来看的,

但从实际工作角度来看,加班还会分为不同的类型。

  • 内卷:因为别人没走,所以我没办法走

  • 事情没做完:白天各种被打断,晚上终于可以安静工作一会了

  • 我想做的更好:有自己的愿景,想快一些实现


我们应当摒弃第一种「内卷」,警惕第二种「事情没做完」,

鼓励第三种「我想做的更好」。

上文项目视角所说的加班,更倾向于是第二种。


现在我们来说一下「内卷」和「我想做的更好」。


内卷不会创造价值,只会消耗自己的生命,会使人对工作产生反感。

一旦对工作产生抵触心理,员工的创造力和主动性就会大幅度下降。


想要做的更好,是由自己内心的使命和愿景来驱动的,

这就是平时我们所说的事业心。


如何才能达成从「内卷」到「我想做的更好」的转变呢?

那就是控制在公司工作的时间。

到时间就得离开公司,想要工作可以选择远程上班。


这样别人不会因为你在公司,而不敢走,

如果你真的有内驱力,哪怕回家后也会工作。


另外一个办法是,早上早点去公司上班,

因为别人不知道你几点去的,所以拼命早去 别人看不到也没意义。

如果你真的有内驱力,早上会被梦想叫醒。

小结

本文从项目管理角度介绍了加班带来的问题,

管理项目风险从识别加班开始。


往往经常加班的团队,项目交付也容易延期,

因为平时上班也已经习惯了拖延。

这是,优先级识别紊乱综合征,总是把时间用错地方。

也是,价值识别混乱综合征,总是优先交付不太重要的功能。


我知道在某些公司某些团队,上述言论太过匪夷所思。

加班不加班,一线开发也无法自己做主。


如果影响不了别人,那么先改变自己,

频繁的跟别人对齐预期,努力识别功能的优先级和价值,

才能当你自己成为项目管理者时,不让团队遭殃。


这正是:渡人如同渡己,渡己亦是渡人。