来源:首发自——51CTO程序员
一个技术精湛的程序员,只要有机会,就有可能被公司提拔为项目管理人员,掌控项目中的一切。但所谓权力越大责任越大,要想成为一个合格的项目管理人员,我认为最重要的首先是扭转本身的思想。工具
正如老子说的“道为体,术为用。”咱们的思惟模式改变了,各类管理的方法和工具天然的就会去学习使用了。正所谓“有道者术能长久,无道者术必落空。”学习
因此在本文中,我就要和你们聊一聊管理中的道
。聊一聊咱们程序员如何修炼管理思惟。咱们先懂得了道理,再去学怎么作。测试
不少兄弟刚转型管理的时候,更多的关注事,而不是关注人。不断的把任务分派下去,到点验收,期待获得一个好的结果。遇到任务出问题,立刻跳出去指责。“你为何又没完成!”,“怎么这点东西都作很差!”。这样只能致使一遍又一遍的出问题。你想一想,你多是由于业务精湛才被提拔为项目经理,其余同事业务上没有你那么娴熟,无可厚非。而任务分派下去之后,你是否须要和同事聊聊难点,说说你的想法,有问题给予一些简单的指导。设计
出问题的时候,首先应该引导而不是指责。code
有的兄弟刚转型管理的时候,一旦遇到同事完不成的任务,遇到的难点。立刻跳上去三下五除二一顿敲,解决问题后,不留下一片云彩,挥袖而去。这些兄弟总会替代同事作他们本身本应该作的事情。致使同事得不到成长,而本身则搞的很疲惫。项目管理
我想有一点咱们须要明白:项目经理是团队中的指战员,掌控着整个团队前进的方向和打法。你不是一我的在战斗,你的行为影响着整个团队的战斗力。开发
做为程序员,咱们习惯了单兵做战,不断的钻研打磨本身的技术,就能高效的完成任务,提升战斗力。而项目经理,是须要指挥一群人,去打赢一场又一场的战斗。直播
因此我想说的是:软件
作了管理之后,你会发现本身被各类事情同时缠身。你不只仅是要处理技术那点事了,你可能同时在处理多件事情。你要维系干系人、要作任务WBS(工做分解结构)、要沟通需求、要项目演示、要协调团队关系、要处理各类紧急状况、甚至于要填报材料、要写合同、要解决客户乱七八糟的问题等等。总之刚开始的时候你会发现,你事情多的作不完,被各类事情缠的脱不开身,但这又是你的工做职责,必需要去处理。
咱们程序员最擅长的就是抽丝剥茧,把一个复杂的需求逐渐理清,结构化后编写成代码。一样的,你也须要在这些纷乱的任务中抽丝剥茧,有章有法的去处理开来。
这些事情若是处理很差,你会发现本身的一直处于忙碌之中,而不知道本身到底在忙些什么。久而久之,你会对本身失去信心,项目也会一塌糊涂。但从另外一个角度来讲,若是你能有条有理把这些杂乱的任务整理清楚,你必定会有质的飞越。
因此我想说的是:
咱们程序员总认为:码代码才是正事,其余事情都是扯淡。但你别忘了,你确定也经历过需求改来改去致使的痛苦、设计稿一改再改带来的重复劳动、没有设计就开发致使的各类问题。
既然咱们身为程序员的时候,已经经历过这些苦楚,那为何要让咱们的同事再经受一遍呢?因此,请重视项目前期的阶段。去搞定干系人、去敲定需求、去定稿设计、去指导代码设计。这些工做完成的越好,开发过程越顺利,项目进度越有保障。
身为项目经理,你须要额外作不少事情,保障项目的进度。不少事情等到开发阶段再介入,你会发现为时已晚。莫要坑了同事也坑了本身。
因此我想说的是:
咱们程序员啊,老是亦或者是习惯了别人说什么,我就作什么。但其实咱们也应该多问问为何。
而项目经理我认为
透过表象发现本质的能力
需求来临的时候,你可否透过现有的需求发现客户更深层次的须要?
某同事任务完不成的时候,你可否透过平常点滴发现他完不成的缘由?
测试团队和开发团队起冲突的时候,你是否能透过平常的交流发现矛盾的根源?
团队士气低落的时候,你可否透过你们的表现悉知团队状态低落的问题所在?
首先,要想作到一步到位透过表象发现本质我认为是很难的,须要大量的锻炼。但我认为咱们保持一颗好奇之心,就能把问题的本质掌握的八九不离十。
不断的给用户提出新方法,同时挖掘他更深层次的想法。
举个例子:
客户:“我想造一架飞机” 项目经理:“您为何想造一架飞机呢?造完飞机还须要建飞机场才能飞呢。您是要去什么地方吗?” 客户:“我是想去西班牙,以为有架飞机比较方便。” 项目经理:“您去西班牙作什么呢?是旅游吗?去西班牙的话,能够搭乘现有航班和渡轮也能够。” 客户:“我这不是想去巴萨罗那看看比赛吗。” 项目经理:“咱中央五台不是有直播吗,也能够看的。去巴萨罗那成本比较高。” 客户:“我以为去现场看比较有气氛,这点成本我能负担。” 项目经理:“好的,那咱搭乘国际航班去能够把?” 客户:“好的,没问题。”
以上,客户的最根本需求是要到巴萨罗那现场去看球赛。而他的想法大概是要过去得有飞机,因此提出了造飞机的需求。而项目经理在不断的交谈过程当中,一次次的给出新方案,以探寻客户最须要的东西和摸索客户的想法(例子中为性价比和体验,客户更想要体验)。
这就叫作发现本质。
咱们程序员每天和机器打交道,习惯了非0即1的二进制生活。
但项目经理是须要和人沟通的,与人打交道。因此面对咱们的同事,面对整个团队。应该多考虑人,以人为中心。
因此我想说的是:
我相信大多数程序员都有个毛病,追求完美。代码格式要最舒服,代码逻辑要最简洁,细节一扣再扣。就想强迫症同样,追求本身代码的完美。做为程序员来讲,这是一个很是棒的习惯。
但做为项目经理来讲,咱们最须要的是平衡。一味的追求完美,会致使项目成员压力大增,成本不可控制。
做为项目经理来讲,咱们都但愿本身带的项目细节无可挑剔,功能包罗万象,代码质量无懈可击,团队氛围融洽得体,项目质量高的无以复加,项目周期如约达成。但其实项目里,全部事情都是互相平衡的。工期和细节打磨之间的平衡、成本与需求开发的平衡、批评与赞赏之间的平衡等等。
平衡是一方面,另外一方面是迭代。保持迭代,一步一个脚印的把项目逐步推动。
因此我想说的是:
以上都是针对项目管理说的,而这最后一条,是为了引发各位的警戒。
咱们上面说会有不少杂事缠身,可能致使你几乎没有写代码的时间了。这是正常的也是正确的,你的工做不是去当机枪手,你的工做是指挥你们战斗。
但这就表明咱们要脱离技术了吗?我认为不是这样的。咱们能够少写代码,但咱们不能抛弃技术。我有个朋友告诉我说:不要过早涉足“纯管理岗位”。我想他的意思,就是告诉我技术乃是一个软件开发的项目经理安身立命的根本。
咱们程序员作项目管理,最大的好处就是,不会出现外行指导内行的状况。因此咱们即使转型了,也要时刻保持对技术的敬畏和对技术的关注。你可能不须要对各类技术的细节了解的特别透彻,但要心理有底,知道各类技术的适用范围、使用条件、优点劣势等等。保证在项目须要的时候,可以快速选型。
而做为一个项目经理,最大的一个好处在于。可让团队同事去学习,让他学习整理后来教你。以达到快速学习的目的。
因此我想说的是:
咱们的项目经理道理我都懂就写到这里。明白了道理以后,你们再去练习工具练习方法,才会著有成效。
总结下来,咱们要锻炼的管理思惟以下:
以上,就是我想和你们分享的内容,但愿愈来愈多志在管理的程序员,可以顺利走上管理岗位。