软件开发:项目经理比你想像的更重要!

阅读 99  ·  发布日期 2021-06-28 19:25  · 

近几年,全世界对于互联网创业的风潮越来越盛,以软件公司而言,产品经理(Product Manager)、工程师、设计师和运营人员都是不可或缺的要角,相较之下,项目经理(Project Manager)似乎就不是必要的存在,这篇文章主要探讨的是,到底一个好的项目经理的重要性在哪?




之前有人把产品经理和项目经理做过比较:PM:Project Manager v.s. Product Manager,每次别人跑来找我讨论PM工作的时候,我都会反问他们比较想做哪份工作——Project Manager还是Product Manager?


通常我都会得到一样的答案:


“恩,项目经理吧,因为感觉学到比较多,而且感觉比较重要一些。”



这里必须要强调的是如果各位觉得项目经理是产品经理的老板的话,那我想这篇文章可以先跳过了,因为这篇文章,不是说给上下级管理的思维的人看的。




项目经理与产品经理的定位

在创业公司里面,讲求角色责任与扁平化管理,项目经理跟产品经理其实是有共同存在的必要的,项目经理讲究的是规划产品策略与质量方向,技术其实只是其中一环,而产品经理讲究的是技术方向的确认与如何执行。




很多人理解成项目经理跟产品经理是主管与下属的关系,其实他们专注的面向不同,项目经理大多是整理的项目管理以及产品质量和过程化开发把控,而产品经理更多的是面向程序员、设计师等等各个环节的开发者,良好的产品开发仰仗的是项目经理跟产品经理完美配合。




为什么不把两个角色放在同一个人身上?

很多创业公司碍于公司人手的问题,会用同一个人来做项目经理与产品经理的综合体,我必须说,这只能是救急的方法,绝对不能是常态,因为项目经理跟产品经理有一个先天本质上的不同,项目经理需要顾虑的,是客户的沟通,需求的归纳,甚至进行需求的可行性分析,以及整体的项目流程和质量把控,考验的更多的是一个人的综合实力。




而产品经理又不一样了,产品经理需要梳理整个产品的功能点,根据用户增减功能点需求,并且确保整个开发团队迭代任务的顺利完成,所以需要做产品的原型设计和用户情景分析来明确需求定义,如果这些都不懂的产品经理,会被程序员打死,你以为我在开玩笑吗?




很多时候好的项目经理通常都是和产品经理吵完架以后,才会列出明确的开发需求给程序员开发团队去做,如果一个人同时兼职项目经理和产品经理两个职位,很容易人格分裂,太偏向技术思考容易忽略很多用户体验,太偏向用户体验提出不合理的想法需求又会被程序开发团队讨厌,总之经常两边都不讨好。


怎么做好一个项目经理该做的工作呢?

作为一个好项目经理的不二心法当然就是:让工程师可以专心快乐去写代码。不过,在问这问题之前,我们还是先来来看看现在软件开发的状况,现在的软件产品开发,讲究的是拼凑而非原创,用很多的开源产品或是第三方的服务就可以做出产品,所以快速的构架通常会比较讨喜一些,这也是为什么Agile的理念在近几年发展得比Waterfall更为热烈的主要原因。




所以作为一个好的项目经理,要做的可说是包山包海,因为需求统筹完后,要沟通产品经理做原型设计跟用户情景分析,做完这两者后,整理开发需求和功能点开发计划,然后再分派任务给程序员,这时候可能还要兼着做Scrum Master,然后程序员开发完还要兼着做产品测试,最后做上架的管理,这些都是项目经理一条龙管理完成的。之后项目经理最重要的工作,其实是把所有过程文件化。




很多时候我跟程序员朋友在聊,他们都说在他们公司这些事情都是程序员在做,而没有请专业的项目经理负责。但事实上,如果这些事情都是程序员做的话,只会有两个结果:浪费程序员的专业写代码技能、很多环节都会出问题,例如文件写的很烂。




怎么做到良好的风险管理?

很多人问我说项目经理是否需要具有超强的技术能力?其实不一定,虽然好的项目经理在开Ticket的时候甚至可以把一些演算的逻辑都写进去,还可以做Code Review,不过这种人超级难找,所以能够把上述的事情做完的项目经理,已经算是相当厉害。




我认为真正好的开发管理,是必须要分工明确,也就是认知项目经理其实是一门专业。而项目经理的专业主要在于做好项目的风险管理。什么是风险管理?就是当程序员跑不见人或是项目开发出问题的时候,项目经理必须要有能力让伤害减到最低。很多人也许无法真正体会风险管理的重要,但是只要被程序员坑过一次的创业者,看到这段恐怕是会痛哭流涕的。




风险管理的目的,最大的目的是让每一段工作可以阶段性的「保留结果」或「告一段落」。举个例子来说,把API规格定好后,交给程序员去做,如果原先的程序员功力很差,写的代码构架不好,这时候项目经理能做的事情便是,保留原有API规格,把可用的API拿来用,再请一组新的程序员去改进那些写不好的API,然后再逐个Review API,这样的一个淘汰程序员的过程,既不会影响太多原有的开发进程,也不用怕程序员一个API做不好,就要全部砍掉重做,然后整个开发的时程就会因此延误一到两个月,错过一次还好,错个两三次恐怕对于一个互联网创业公司来说,已经把资金烧得差不多了。


一定要明白项目管理的重要性

谈项目管理跟谈软件技术开发的项目管理,可能有些不同,尤其对于创业公司,一个良好的项目经理,绝对比找到一个程序员来得更为重要,也希望大家重视项目经理这个专业,这个专业,并不是写代码写不动的程序员才来做项目经理的,项目经理处理的很多事情,是很多程序员不愿意做的苦活累活,但是随着产品的技术范畴越来越大,这些所谓的苦活累活往往可以救你一命。




我不会说产品经理比较不重要,更不会说程序员或是设计师比较不重要,我想说的是,如果你正在互联网创业的话,请务必搞懂每个工作程序背后的重要,然后让各种不同专业的人来处理,最后养出的这个环境,才会是公司的核心价值。


码掌科技拥有强大的产品研发团队,团队开发、设计、运营成员均有多年经验。为客户提供手机APP开发,小程序开发,微信公众号开发,OA系统开发,ERP系统开发,CRM系统开发,UI设计,网站建设,服务器托管,系统集成等业务。码掌科技始终坚持以诚信经营为原则,以技术创新为支撑、以品质服务为核心。提升企业动力,创造更多价值。