大家好,我是阿桃,一个想成为被点赞关注的程序员。
工控行业、物联网行业、机器人行业软件开发可联系我
其实在小公司成为鸡头脱颖而出后,程序员将面临着第一次晋升,这时候很多公司的第一个提拔方向可能就是项目经理。工作这些年也认识很多经验或深或浅的程序员,很大一部分人对于项目管理了解不深,虽然他们的技术水平很硬,但熟悉软件开发过程是能够提高完成项目的效率、还能帮助你与团队更好的协同工作。
所以分享一下,在小公司如何做好项目经理。
项目经理一般从优秀的研发人员里提拔起来,虽然很多公司有资深专家的职位,但实际上,有优秀的研发人员,很多小公司考虑的第一个提拔方向就是项目经理。
不热爱技术,不真正沉到技术里面的人,不可能做得好项目经理。外行领导内行,在项目开发里面,不可能成功。
他必须对新技术、新趋势保持足够的敏锐,可以不会,但必须理解它的原理,合适的时候,可以引入项目。
因此项目经理要求的第一点:发自内心的热爱技术,能够把他做为一辈子的职业。
项目经理的的工作内容是半研发、半管理的。
项目经理的输出:以合适的人手,合适的时间,尽量高的质量,全力以赴的完成项目的实施。
因此项目经理必须要有比较强的进取心。必须能够为了项目,全力以赴的完成它。
但是,不要让你的进取心,掩盖了公司对项目的要求。
举例:不能为了个人的技术好奇心,使公司的产品处于市场风险之下。(大改动不鼓励,小改动大奖励。)
任何管理,首先是责任,然后才是权力。
你必须对整个项目的成败负责。
你必须面对工作环境的复杂性、不确定性和模糊性。
你必须做出决定,哪怕你只得到了完整信息的10%,哪怕这个决定是错的,你也必须在有限的时间内做出判断。很多决定往往只有你能做。
你必须对整个项目组负责。所有的成员都是你的兄弟姐妹,是你赖以成功的基础,是你能够调动的绝大部分资源。
项目失败不仅仅是项目本身失败,它带给个人和团队成员的挫败感是很强的,往往项目失败带来的就是离职潮。
没有人天生会项目管理。
没有人靠看书就能成为项目管理专家。
没有人不学习就能做好项目管理。
很多人是在项目管理的职位上,不断学习,不断积累,慢慢学会项目管理,慢慢学会管理,走向更高层次的管理岗位的。
我有个朋友说,他花了6年时间,才学会管理。
万里长征第一步,希望大家走得扎实。
项目管理的理论基础,来自于软件工程的概念。即:将成熟的工程管理的方法,用在软件项目的开发上。
DR0-DR5,套用在我们的开发项目上就是:需求分析-概要设计-详细设计-代码-测试-发布。
做任何项目,都可以用类似的概念套上去。
瀑布模型:瀑布模型是所有其它项目管理模型的基础。就是按照DR0-DR5的步骤,一步一步的走下来,走完一步,再走下一步。
敏捷开发:在瀑布模型基础上,强调快速原型的形成,及多次迭代。
V-模型:在软件开发的生存期,开发活动和测试活动几乎同时的开始,这两个并行的动态的过程就会极大的较少bug和error出现的几率
项目管理工具的核心,就是甘特图。
甘特图的作用,就是项目经理及组员,能够直观的每天衡量,每个人总的工作量,已完成的进度,未完成的工作量,其它组员已完成的进度。这个信息是所有组员共享的,很容易对大家形成压力。
其它的功能,都是锦上添花。
每一阶段的评审会议。评审会的作用,就是大家——包括组员,相关部门,项目主管,主管的主管,大家一起来对本阶段的成果进行挑刺。
因此,评审会之前的私下沟通特别重要。不要在评审会上被当众打脸。评审会前,应该分别举行几次小范围的通气会。大家都认可了,再开评审会。
项目例会,例会的作用是隔段时间,对进度进行检查。
每天站会,解决碰到的小问题,敦促大家的进度。
专题会,专题会上深入讨论。
把预研与开发分开。预研的工作量是不确定的,当立项的时候,工作量应该是已经确定了的。
不要满足于表面功夫。世界上没有相同的项目,更没有相同的团队,不同的项目、不同时期,你的团队的工作重点和关键路径都是不一样的。不是所有的文档都做好了,这个项目就算完成了。你必须不停的问:这个项目,我的贡献在哪里?我的团队进步在哪里?关注最终的输出:产品的整体表现,功能,健壮性,易用性,可扩展性。
项目管理是一门实践科学,跟开车一样,学习再多的理论,看再多的书,最终还是得上手试试。在实践的过程,不断体会理论的作用,不断加深对理论的理解。这个才是正道。不要被各种新的理论、工具弄得眼花缭乱,基础知识、基础能力最重要。在项目管理上,没有一劳永逸的做法,没有一成不变的范式。学了降龙十八掌,还要天天练拳,还要跟人对打,才能掌握真功夫。
项目管理能力的每一点提升,都需要长久坚持的练习与学习。
项目管理的核心是:DR0-DR5,瀑布模型,敏捷开发模型,甘特图,评审会,项目本身会议。需要在每天的工作和学习中,体验这些核心理论和工具的作用。
文章每周持续更新,原创虽短,确不容易,欢迎大家点赞关注,一起交流技术一起提升成长。