次の方法で共有


思之以实,取之以略,行之以果

原文地址:高性能计算(HPC)中国团队

 

    注:宋代苏辙在其《新论中》中写道“居之以强力,发之以果敢,而成之以无私”,意谓国家平时要有实力,发动一件事要坚决勇敢,取得成功必须无私。这里借用该格式讲一下在Planning(思)、Design(取)、Execution(行)三个阶段的一点体会。

    【题记】 细想起来我加入高性能计算(HPC)中国团队做PM Intern(实习项目经理)已经是去年年初的事啦。在Wei Zhen同志(猛击这里)的不断鼓励之下,我把自己在工作中一些学到的、领悟到的东西分享出来,尽管正确性及普适性值得推敲,我仍然抱着美好的愿望希望将来的实习项目经理能在入职的时候有一个更高的起点,不要像我这样花了大半年时间才渐渐摸索出一些道理(>.<岁月不饶人啊)。

    什么是PM?我定义不了,不过我老板给出过描述(猛击这里):“PM做得最多的是设计和推动实现功能,确保自己负责的功能可以圆满地成为产品的一部分”。那我就做功能中的Plan(规划), Design(设计)和Execution(执行)三个阶段分享一下心得。

 

规划(Plan)

    规划阶段要解决的问题之一就是“做什么”。可能实习项目经理在规划阶段的参与比较少(因为一般来说,由于实习生对产品、产品的客户群、产品的市场并没有深入了解,总是老板叫实习生去考虑某某功能),所以就特别容易从用户使用情景(User Scenario)迅速跳到设计,这一跳的直接结果就是把为了有价值主张(Value Proposition)而做功能,变成了为了做功能而做功能。这种情况下,目标会定义不清且难以区分优先级,设计阶段不断评审功能规范的结果很可能变得不可控,最终虽然能创造价值,但是创造的不一定是正确的价值。历史上很多很酷很炫但是在商业上却很失败的产品就是因为没有被很好地PM(注意,PM在这里是动词)。所以,在规划阶段一定不要怕花时间弄清楚用户最核心的需求到底是什么,自己要做的东西到底是要创造什么明确的价值(>.<为什么听起来像风险投资者问创业者的问题)。

 

设计(Design)

    关于设计阶段,我们先考虑一个问题:假设你的城市在推动经济适用房,而你恰好是该市经适房申请政策制定者。你的顾问A帮你列了10条经适房申请标准,并建议申请者必须提供相应的10份证明材料。可是你的顾问B告诉你,由于申请者太多,从政府现有的预算、人力及效率要求来看,最多只能审查每个申请者的5份材料。你该怎么办呢?

    一个办法就是将证明材料数量减少到5份。这个办法看似是好的,因为它根据实际的资源限制,做出了调整和让步(就像软件开发工程师资源不够,于是砍掉一些功能)。但其实它是不可行的。为什么?因为只要求提供5份证明材料,就会让另外5条标准形同虚设,而显然,“只有满足标准的人才能申请经适房”这个目标就无法实现。

    那我们该怎么做才对呢?找正确的做法之前,先要知道错误。事实上,刚刚的想法错就错在它是一个典型的“全部或没有”思维:把“证明材料”和“审查”作为一个整体,觉得有一份材料,就该有相应的审查,没有审查,就索性舍弃对应的材料。

    抛弃“全部或没有”的想法在设计阶段也同样重要。某次功能规范的评审会上,我们的架构师(猛击这里)说过“每个PM心中都要有个路线图(注:译自Roadmap)”。当时我心中的感觉就是“醍醐灌顶”。 路线图的终点,可能就是那个“全部”,起点就是“没有”。千万不能因为资源不够,就停留在那个起点上。刚做PM,可能会为评审过程中部分功能被砍感到心痛,会觉得一些功能只有作为整体同时存在,才能达到设想的完美效果。作为PM,要舍得功能被砍,但是心里也一定要清楚,每次砍功能,让你从路线图的终点又退回了多少,让你的目标妥协了多少。毕竟一个产品会有多个版本,每个版本的开发中,又有多个里程碑,总归将来可以继续向终点前进,更何况很多情况下,达不到终点,也能满足80%的用户的需求。

    回到最初的问题,打破“全部或没有”的思维,我们就会想到解法:还是要求申请者提供10份材料,只不过审查的时候,忽略其中5份。规定了证明材料却去不审查,确实让证明材料的作用妥协了,但证明材料的存在,至少能让部分不符合条件的申请者望而却步,所以我们的目标没有完全妥协。至于忽略掉的5份材料,可以在将来成本能承受的情况下再去审查。

执行(Execution)

    执行阶段,我最大的领悟就是不要让自己的执行力在执行阶段下降——听起来很悖论。其实由于规划与设计阶段,自己相对明确自己该做什么,一切也只有靠自己去推动才能有进展,而到了执行阶段,很多事情都是开发工程师在做,我只是跟开发工程师商量一个计划进度,并不断关注实际进度。事实上,价值主张是承载在最终交付上的,所以PM应该要关注去交付产品,去把产品推向市场。同时,这个阶段中,很多实现上的小选择会影响到最终的交付,所以跟开发工程师一定要保持密切的沟通。现在想来,我的很多项目在执行阶段都可以做得更好。

    以上是我针对每个阶段选出的一点感悟,事实上在高性能计算团队近10个月的实习中,每天都在学习,总是逐渐体会、领悟到新的东西,以后会多贴出来与大家分享。

 

 

Ye

实习项目经理