1 教训和反思
去年一年的工作中出现了很多问题,虽然有很多客观原因,但是反映出了我们管理上存在的严重不足,导致整体效率不理想。我把自己的经验和反思写下来,供大家讨论,希望达到项目组实质性提高的效果。
1.1 缺少规划,不知道自己的竞争力在哪
存在问题:
去年在开发工作中,本身的工作内容很简单,就是模仿别人的产品进行开发,按理说这个性质的工作应该比开发全新的产品简单的多,但是为什么感觉乱?!
首先,缺少一个人持续的考虑整个产品的规划和发展,这导致功能的开发计划都是别人已有的一个个功能点,缺乏高度。像我们现在自我感觉能称作优势的东西,要不就是客户还没真正用起来的上报下发的业务功能,要不就是还没实现的网吧、宾馆、广电数据的整合,去年一年的工作鲜有拿得出手的。
其次,就是我们总先着眼细节功能实现,很容易造成功能深化的持续推进,导致有些功能做完以后就没再深入考虑,最后就是留了一个没什么实质作用的功能。比如,视频搜索的功能引入刚开始确实是先把这个功能嵌入再说,但后来就真的再没改过,现在回头看看感觉和原系统几乎没什么关系,整合度很低。
个人反思:
我觉得近期一直在讨论产品的竞争力,并与市场结合起来通盘考虑,这就是一个非常好的榜样。明确了大方向就是指明了要攻占的山头,让各方统一了认识,也让大家工作目标有了轻重。研发的目的是服务于市场,能给市场提供有竞争力的产品这才是最终职责。
另外,做开发就是从整体再到细节,直接关注细节再考虑延伸的方法不是不行,但这个难度要高很多,也容易造成最后总体方向模糊。
解决方案:
1. 要找出自己产品的特色,然后制定发展规划,并与市场达成一致
2. 把发展规划进行细化,制定成版本指导研发
3. 与市场紧密结合,根据一线获得的用户需求来进一步规划产品发展
1.2 职能不清,导致工作安排不合适
存在的问题:
产品经理大部分精力花在售前和售后工作,希望研发经理来进行版本规划、资源协调、工作,但具体功能细节只能放到具体研发人员去考虑。这导致有些功能开发出来的。比如组合关键词舆情这个功能做出来真的感觉很难用,不得不屏蔽掉等以后想好再做。
个人反思:
去年开展工作是基于能者多劳的思想展开的,但后来的结果是兼顾的事情大部分完成都很不理想,特别是有些工作安排给了一个更不合适的人会产生很糟糕的结果,比如产品的具体功能希望具体研发人员考虑就极为不合适。
所以,每个岗位的职能不应该由于人的原因来迁移,而是要求所在岗位的人作为第一职责履行,由于客观因素不能完成可以有其他人协助,实在不行应该是换人。
解决方案:
1. 明确各个岗位应该完成的工作,用岗位职责要来要求和考核
2. 在每个岗位的职能范围内消化相应的工作,不能传递问题
1.3 沟通不畅、越级安排导致混乱
存在的问题:
每个领导都是自己领导,不知道该向谁负责,哪个领导说的都要听。这很容易越级指挥造成混乱。有时研发经理安排个工作,产品经理再安排一下,这就导致具体研发人员两头忙,更麻烦的是研发经理还不知道有其他安排,工作量势必难以把握。有时也能见到不同组研发人员之间商量工作,这也导致主管无法把控组内的工作内容。另外越级指挥的领导其实并不一定找的人就是最合适的人,拿到的结果也没有研发主管或研发经理把关,可能还是一个错误的结论。
之前还出现过技术主管之间沟通不畅导致进度缓慢的,由于大家都站在自己的角度看问题,都觉得自己没错,但没有把最终的结果当作大家的共同目标。这种情况就需要上级协调,不能因为自己无法推进事情而停止。这属于越级的反面典型。
个人反思:
既然划分了组织结构,每个小组的成员也是有一定的梯队,那沟通就要按这样的结构来。产品经理要传递问题就是应该到技术经理,他是研发部门的对外接口人,应该由他把任务进行分解、安排、跟踪。两个小组的研发人员沟通也一样,也是要找到对方的主管去反映问题,由他去推进实施。
这里我不是推崇官僚主义,但一个小组哪怕只有两个人,也要有一个牵头的,对整体的事情要有了解,对外作为统一接口人来进行沟通。这样这个组的信息才有了一个汇聚点,只有把握信息才有可能掌控整个组,更便于管理。
解决方案:
1. 坚决抵制越级指挥,每个成员只对自己的主管负责,平级间不能协调的可以向上级反映
1.4 开发的结果与预期不一致
存在的问题:
在研发之前对于设计就没有定义清楚,开发过程中跟踪检查较少,这基本上就等于研发人员的自由发挥,那等看到结果的时候已经是相差甚远。
个人反思:
研发的控制不是在结束的时候,而是贯穿整个研发周期。在设计阶段对功能的定义对最终方向有决定性指导意义,只有明确的预期才有可能得到期望的结果。在开发过程中的监督也不能少,一方面要尽早发现研发问题以减少返工代价,另一方面要监督进度确保按时完成,确实遇到困难也可以尽早采取措施。最后才是结果的验证,这需要有技术经理和产品经理从不同角度对结果进行审核,确保从技术实现和功能上达到预期要求。
解决方案:
1. 要求产品组所给出的功能设计要细化,双方沟通没有异议再进行研发
2. 技术主管全程参与研发,对最终结果负主要责任
2.5 研发质量不高
存在的问题:
对于已经发布出去的功能,出现了很多问题,中间不乏客户的投诉。刚开发的新功能没测试好有问题不说,有些发现的问题没找到真正原因,反反复复修改既耗费时间,又让大家心态更烦躁。通用舆情的开发去年一年由于研发问题导致的返工保守估计也有2个月。
直到年末调过来一个技术主管,很多线上问题得到比较理想的解决。
个人反思:
质量把关主要有两个环节,一是技术主管从白盒角度检查,一是测试人员从黑盒角度检查。但前者对深层次质量的把控更为重要,后者对边界情况、回归测试更有帮助。像去年采集组没有测试也能比较好的完成工作,但通用舆情组没有专职的主管就产生很多质量问题。
解决方案:
1. 每个组必须有主管对质量进行把控
2. 加强测试来覆盖边界情况和细节方面的检查,以及集成后的功能验证
2 总结
其实上面提到的很多解决方案都有重复交叉的地方,这也说明这些明明很重要的事情却没有做好。所以我总结一下,其实就是要把以下三个事情必须做好:
1. 先把整体的研发方向明确,找出优势,重点突破
2. 根据组织结构明确岗位职能,把自己职能范围的事情做好
3. 信息传递必须按组织结构层次来,禁止越级
4. 充分发挥技术主管对研发质量和研发结果的把控,把细节做好
转载于:https://blog.51cto.com/passover/775263