--前言
“关键任务的甄别”这个短语是我从梁宁老师《产品思维30讲》中学习到的,原来只知道“关键任务”这个词。东仔虽然是做技术的,但是对产品非常感兴趣,就认真学习了,并做了一套思维导图笔记,梁宁老师这个课真的非常值得一听,建议大家可以听听,能开阔你的思维模式。东仔在这门课中学的东西有些就能投射到生活和工作中,接下来我要叙述的就是我们工作管理中可能存在的倒霉事情:人员离职+事情紧急+领导压迫+市场战略+三方公司阻碍共存的小故事。
--背景介绍
当时我们接了一个项目,这个项目是属于战略性的,前期是没钱的,得做好后,领导认可满意后,才能签合同。这里的市场战略其实不光是这个项目的钱,而是涉及到这个项目后期的市场。相信很多公司肯定也有这种战略性的项目。特征就是既没钱,你还得必须做好做扎实,对吧?如果没做好,人力白费,市场还可能丢。这里我说的领导压迫其实有点夸张哈哈,只是这个项目压力大,领导基本上隔三差五的问,而且不是一个领导,所有高层都比较关注,你中午坐个电梯碰到了问一句:东仔,XXX项目怎么样?上个厕所碰到:东仔这个项目进展怎么样?时间很急哦,一定不要出问题!要不就在群里直接@我:东仔,这个项目必须保障,今天我喝酒了,你要是保障不好,我把你拿火烤....当然我的老大更惨,哈哈。所以当时我们这边不管是我还是研发团队工作压力+心里压力都挺大的。
不过更恶心不在这儿,是有一个三方公司在里面作为我们项目的成果评审公司,这个三方公司是怎么存在的呢?(⊙o⊙)…就是我们从这个公司嘴里抢下来的项目,然后这个公司就申请免费作为客户方的评审公司。既然人家能够拿下这个项目,商务上肯定还是有一定的关系。所以后期这个项目受到的阻力还是挺大的。
这个项目分为两个阶段,第一阶段我们是按照正常节点开发完成进行交付的,第二个阶段的开发工作基本上就是三方公司那边搞出来的。开发时间1个月,在原有功能基础上加上动态流程和动态报表引擎。如果是懂技术的小伙伴应该知道,动态流程和报表引擎的开发其实是比较费时间的。当然我们想到了使用第三方,比如activiti流程引擎和三方的报表引擎;但是...这项目我之前也说了,还没签合同呢。没钱!而且activiti的动态表单和会签、加签是比较麻烦的。
--梳理任务,换实现方式
这里由于报表引擎前期一直在开发,所以在原来基础上进行优化改进是基本满足的,是由另外一个开发完成的,这里就不细说了,东仔专门说下动态流程的开发,真是一波坑坑坑。
这个项目的负责是由另外一个业务产线负责的,前期他们考虑是用activiti的,由于非常担心工作的进展情况,所以就去了解了下,结果......还没开始动!好吧,既然没动,总的动起来,至于为什么没动,先不去过问(关键任务甄别A),拉着研发经理,开发人员开始梳理,小组项目比较多,参与这个项目二阶段的后端开发只有1个。由于原来我使用过activiti,知道单纯1个开发时间肯定来不及,集成、业务改造、流程图,还不说那些复杂的会签规则、加签、回退、后期测试、BUG修改等。
那怎么办?动态流程主要功能不外乎流程是可以自己创建的,让某个业务使用的时候跟着制定好的流程进行审批,加上会签、中途临时节点的增加、条件判断。那么根据他们的业务判断,肯定能满足,那就这么干,自己开发动态流程!接下来,我就拿着草稿纸,从业务、数据表、包括字段在内的给他们梳理,把流程面临的情况在纸上给他们画出来,拉着开发一起参与讨论,尽量保持细节的点能够匹配业务。不知道用了多少张草稿纸,初稿定下来了。
--坑来了
本以为这个事情定下来了,研发改造工作已经开始进行了,谁知道,负责的研发在两天后告诉我,身体不舒服,医生要求在家卧床休息,需要请假半个月!批不批?不批,人家是生病,万一在工作中出什么事儿怎么办?给公司会带来影响的!批吧,这个工作推进就困难了,毕竟时间那么紧,前期也一直是她负责,她最熟悉业务,但肯定得批,不怕一万就怕万一!OK,工作得继续(关键任务甄别B),继续拉着研发经理,盘点工作的优先级,调配一个刚到公司差不多一个月的开发来接手,这个开发能力还是很优秀的。让上一个开发和接手的开发把业务讲清楚,工作交接清楚,并且和她达成共识:任务紧,虽然你请假了,但是肯定有些业务不清楚的,可能会打电话咨询你。她也说OK,没问题。心里总算落了一半,起码工作开始做起走了。
小伙伴们是不是以为坐等时间节点验收成果了。NO!请假的开发第二天完之后才离开公司,接手的开发在第二天给我提出了离职!理由是他前女友怀孕了,而且是真实的!我那时候已经来不及思考是不是自己问题了,离职理由肯定不光是什么前女友怀孕啥的。我想的是如何推进工作,这前前后后一折腾已经浪费了1个周的时间了,还有3周啊。领导才不关系我有啥理由呢,要成果!
继续去找产线研发经理商量,拉着这2个开发一起到了洽谈室,研发经理把情况给他们2个说明了,也把任务的紧急都说了,希望他们把事情做了再离职请假什么。我没说话,一直在想工作咋推进。等研发经理说完后,我也说了几句挽留的话,不过他们理由都是医生说必须回家什么的、前女友要求必须回去什么的。当然那时候我是已经当他们不在公司了(关键任务甄别C)。让开发回到岗位后,我问研发经理:如果他们两个都不在了,盘点现有人力情况和工作优先级,你觉得你现在还有谁能接手这个工作?他思考了下,说了2个人,1个后端,1个前端。和我内心想的人一样,好!立马把他们两个叫来,在加上之前的负责该项目的开发。
在接下来的2个小时,我又拿上草稿纸从头到尾、结合之前开发梳理的一些细节进行了全盘讨论,让新接手的2个开发知道具体做什么,也从前端到后端整个流程进行了画图的模拟,并和大家达成初步方案的一致。至此算是告了一个段落了,接下来就是把控整体开发进展和加班加点的事情了。3天后,请假的开发回来了........具体为什么回来我这里不细说了,个人隐私,总之请假延后了。哎!折腾!三周后,我们的主流程经过质控已经能够跑通了,还有一些细节需要优化,在交付的那天,我们也成功的汇报,领导认可,三方公司也没再为难!攻坚的两个小伙伴在后期我们也进行了奖励,毕竟人家是加班加点的赶出来,特别是我们前端妹子,还有小宝宝。当然,他们加班的时候,我和研发经理基本也在加班忙自己的事情,毕竟,人家加班加点的赶,领导还回家睡大觉吗?
--总结
关键任务甄别A:那时候研发经理刚上任,是原产线提拔的,本身自己也有开发任务,他那时候基本上每晚都在加班赶,团队问题也多。管理工作和一些任务的跟踪没赶上我也能理解。工作启动才是最关键的任务!
关键任务甄别B:人不在有人不在的做法,就像周星驰的一个电影《百变星君》一样,钱少有钱少的做法。我们在工作中肯定会遇到很多极端的情况,在情况发生的时候,与其去抱怨别人怎么怎么样,不如好好思考下自己该怎么提高,怎么完成任务。而且东仔在工作中,如果一个人提离职的时候,我基本不会留的。我会立马去思考他走了,工作怎么安排,谁来接,接多久;同时立马启动招聘工作,尽快补充人力进来。
关键任务甄别C:其实研发经理去留他们这件事本没有错,东仔在工作中遇到优秀的人,我也会努力的挽留。但是我个人觉得他更应该去思考如何在有风险的情况下把工作做着走,以最坏的结局来思考如何交付成果才是最重要的。
其实关键任务的甄别在东仔理解就是不管在任何时候找准问题的切入点,找到最重要的任务,预估最坏的打算,想尽一切办法的把任务完成。
东仔整个叙事比较啰嗦,有些话可能表达的不是特别好,如果有一些不对的地方,有前辈看到了,可以提出来,东仔虚心改进。文章并不针对任何人或事,只是东仔想把它记录下来作为回忆的地方。
离职的开发来了一个月就走,在这件事情上我也反省了,团队还是有些问题,这里就不再细说了...