张传波(创新工场创业课堂敏捷课程讲师)

摘要1.需求不确定。2.技术不确定。3.工期限死。4.预算限死两大不确定和两大限死,你想不“挨踢”都难!

“无节操”的加班

某公司有个加班龙虎榜,每周按照加班的总时长进行排名,加班时间最多的就是状元,然后是榜样、探花。其实没有谁这么变态要打进三强,但大部分人不想自己经常出现在榜尾,因为让领导看见了不是很好,有可能会导致饭碗不保,所以只能“自觉”加班!于是加班成了家常便饭……

某创业公司的老板搞了个“奖罚分明”的激励制度,任务分派下来如果能提前完成,提前时间越多,奖励越多;相反,如果任务推迟完成,推迟越多惩罚越多。结果大家都懂的,这些任务基本都是 mission impossible,“提前完成”需要人品大爆发,“推迟完成”是正常现象,程序员们的薪金都被扣得差不多了,再推迟的话就要倒贴公司了!

一个人一天当中,能高度集中精神的工作时间有多长呢?你可以自测一下,我的答案是6小时,偶尔可以爆发到7-8小时。

如果不用加班,按一天工作8小时算,如果其中有6小时能高度集中精神工作,其实已经很不错了!

如果加班呢?我告诉你,原本还有6小时的高效工作时间,马上就会减少!加班越长这6小时减少得越多,如果加班时间家常便饭,那么这6小时就会变成零!

软件研发不是体力活,是高强度的智力运动,希望管理者要清楚明白这个软件研发的客观规律,我们不能违背这个自然规律。低效率的加班只能是一种心理安慰(这个心理安慰只对领导有效),只能带来更多的问题。

“奔放”的项目管理者

领导要K人,一般会把要K的对象叫进会议室,然后关上门来K,开门后就好像没有发生过任何事情一样,门外的人一律不知道发生了什么事情。(PS:这里说的K不是指打人噢,而是批评,俗称骂人。)

但是有些领导很“奔放”,直接当众K人,有些邮件K,但这个邮件会抄送项目组全体甚至全体员工!我运气比较好,还没有遇到过“奔放”老板,但万一你运气好,遇到了被领导“奔放”地K了一顿,你会怎样呢?当然你要这样想:这个领导其实算不错的了,在“阳光”下K你,如果他来“阴”的,岂不是更恐怖!

闷骚、腼腆、脸皮薄、心灵弱小,是程序员的特点,一般的程序员是接受不了“奔放”的管理模式的……

保命四招

如果你遇到“极端情况”,后面介绍的法则都不会适用,你要用的是这保命四招。

什么是“极端情况”呢?

那就是类似前文提到的“无节操的加班”和“奔放的项目管理者”这些情况,当然不限于这些情况,因为没有最惨只有更惨!

以下是保命四招:

1)抱怨有益健康。

有人说抱怨没有用,但如果不抱怨你会憋死,,所以你需要宣泄,你可以约朋友吃饭喝酒齐齐诉苦,这样才能有益身心。但要注意抱怨并不能解决问题,不要沉迷抱怨噢!

2)忍一时风平浪静,退一步死无全尸。

工作中遇到不公想发作,你一定要用第二招:忍一时风平浪静,退一步死无全尸!要忍但不要退,要用耍太极的方式来推挡一些事情,不要累死自己便宜了别人。

3)自我增值才是硬道理。

增加你的价值就是增加你的谈判筹码,这就是第三招。我曾经和领导直接电话对骂,我居然没事,因为当时公司需要我完成这个项目,我有恃无恐!你可以尝试在公司爆发一下,测一下你的价值,如果爆发完你没事,说明你对公司的重要性不错。但如果出事你不要找我噢!我当年敢干这些出格的事情,是因为我年少无知、血气方刚,并且自以为自己很牛B!自我增值让你有更多选择,能帮助你选择更好的工作。

4)我只想将工作做好!——这不可取,因为这是你辛苦的根源。

在“极端环境”下,好的工作态度是不受欢迎的,只能变成折磨你自己!做好工作不是你一个人的事情,我们没有这么强大,我们只能顺势而为。很多事情我们改变不了,但我们能改变自己。我不是鼓励消极的工作态度噢,这是在你因为各种原因还不能选择更好的工作机会时的过渡方法,有好的工作环境时,你就需要重新树立“我要将工作做好”的态度!

面对“极端情况”我也没有什么好招,前面的内容实在是太多负能量了,实在有点“儿童不宜”!

下面将会介绍“正常情况”,“正常情况”当然也会存在很多问题,但这些问题都是有机会解决的,后面的内容都是正能量滴,是“老少咸宜”滴噢!

牺牲质量能提升进度吗?

项目管理基础知识中提到,项目管理主要管成本、进度和质量,我们不可能用很低的成本、很快的进度和很高的质量来完成项目,也就算俗称的“多快好省”地完成项目是不可能的。我们的软件项目成本是卡死的,进度也是很紧的,所以我们只能稍微降低质量来保证进度,这样的逻辑合理吗?

实际工作中我们其实就是进度优先,但仍然有很多加班。忽视质量其实并不能带来更快的进度,而是更多的加班!

我们为什么会加班?我们的加班大部分原因是要返工,或者是前面没有发现问题后期问题才爆发,简言之就是前面工作质量不过关,导致后续更大的工作量。工作质量包括需求的质量、设计的质量、代码的质量等等。重视质量反而会加速项目进度!我们需要定下项目的基本质量要求,想清楚才动手,一步一个脚印地做好项目。

代码的重要性

我认为项目中是两类文档是必须的,那就是需求和代码!有人可能会更绝,必须的文档只有一种,就是代码!没有代码就编译不出软件,其他文档可以不要,但代码必须有。而程序员是写代码的,非程序员是写其他文档的,所以除了程序员,其他角色也可以一律不要。其实上述说法是成立的,我曾经试过只有我和另外一位程序员的情况下,不需要其他人就我们两个程序员,我们就能做好一个软件并且这个软件的销量还可以。

代码及代码的质量其实是相当重要的,但很多项目可能是这样的一种现状:不抓代码质量,软件问题多多,但一抓代码质量,项目马上就会死翘翘!

如何解决上述困境呢,下面的求生法则可能有用!

法则1:问题根源80%在于需求

程序员的工作职责是什么?这个是单选题,你选择哪个?

A)写代码;B)完成领导分派的任务;C)实现自我价值;D)实现客户价值;

标准答案是:D

客户价值就是通过需求来体现的,不要扎头就写代码,要弄清楚需求。需求文档其实是必须的,不过文档的载体和格式是不限的。

法则2:拒绝需求变更

此刻睡觉的口水将变成明天流下的泪水。

张传波(创新工场创业课堂敏捷课程讲师)

相关文章:

你感兴趣的文章:

标签云: