PM到底要不要编码?
今天在一个技术群里看到大家在交流PM要不要编码,大家各抒己见,讨论得很热烈,基于我20多年的工作经验在群里分享了一下,得到大家的认同,引起了很大反响,先整理出来与大家共勉。
首先,PM是一个专业岗位,美国专门有个认证叫PMP,对于海外业务的项目经理一般是要有认证证书的,对项目过程的相关管理动作都有具体应知应会的内容;分成了五大过程组,启动阶段、规划阶段、执行阶段、监控阶段、收尾阶段都有应知应会的知识内容,建议骨干都应该学习一下,不管有没有做PM的想法,其实项目无处不在,每件事都可以看作一个项目,项目管理可以作为一个通用工具。
在PMP中对PM强调的是管理,PM岗位定义没要求干具体技术的活;从岗位的定义是必须懂技术和业务,不然没法管项目。
PM这个岗位实际很不好,如果晋升不上去,就会脱离业务,变成找工作都困难的人;同事,因为PM岗位晋升机会多,又算基层管理岗,所以绝大部分人乐意做这个岗位,“宁做鸡头,不做凤尾”朴素思想影响下,很多人都把做PM作为了发展目标。
我个人的经历分享如下,想做PM要一步步来,技术基础和业务基础要打牢,要坚持不脱离业务,给自己留一个可进可退的资本。
程序员应该什么时候转管理岗?
我认为在技术路线晋升中比较好的岗位是小组长,十个人以内,既能评审所有方案,又能写核心代码,还能评审所有代码,还能带人、管子项目,既不脱离业务和技术,又能锻炼带兵打架。
20人左右的PM很多就脱离业务了,其实可以不脱离业务,可以评审所有方案,走读核心代码,亲自写比较难了,只能偶尔炫耀一下技能啦。
30人左右就只能事件性的参与一下技术和业务了,这样的岗位晋升不上去就比较麻烦了,久而久之就只能管理了;管理也是个不归路,管理做过了,再让他回去写代码能写住的人就不多了,技能弱化是一个,心理门槛也是一个。
综上我建议:对于技术擅长的程序员,建议干个十年再转管理岗,至少干个五年,大家知道为什么?如果真能扎实干十年以上,技术就不会丢了,融会贯通了,几乎没死角了,新的技术基本上都能弄懂,新的业务也可以做到一听就懂;就不会出现前面的尴尬啦。我是从管几个人,十几个人,几十个人,几百个人过来的;写过平台中间件、写过编译器;从零起步做了5产品,都做到世界级的。总结经验下来,我一直没脱离技术和业务,对于新的技术和业务都可以做到理解和掌握,可以做到啥都能做,啥都能做好,说走就走的洒脱;所有的自由都是汗水换来的,捷径是没有的。
很多PM过早脱离业务,变得对业务不懂,只会管理,管理做的专业还好,可以到大公司做PM,如果PM也不专业,就很难找到工作了,自己创业,不懂技术业务创业更难,只能做非技术类创业。干啥都得懂行,不懂行干成太艰难了,非技术的也得补新行业的课,原来放弃的学习和努力都得加倍补回来,有时历史不能从来无法补了。
以上总结跟大家共勉,时间仓促可能不少表述错误,喜欢的就认真看看吧;个人的浅显理解,多有不正确的地方,欢迎大家拍砖指证,我当虚心接受,共同进步。
作者简介
蒋国文,华为云全球合作伙伴生态部副部长、CTO,华为云全球合作伙伴生态部 AI伙伴俱乐部总经理。
22年IT/互联网软件研发,19年华为公司软件研发经验,13年华为研发部门主管经验,8年华为云服务研发经验。作为华为云早期员工参与了组建了华为企业云业务部,负责技术中心的研发管理工作、从零起步的带领团队完成华为企业云早期的版本研发工作。擅长架构设计、产品设计、互联网运营、解决方案设计工作。历任开发部经理、开发代表、项目办公室部长、产品部部长,华为企业云技术中心部长,企业云业务发展部部长,华为云生态解决方案部部长。