从程序员到项目经理(16):你不是一个人在战斗--思维一换天地宽

程 序员和项目经理是两种完全不同的岗位,工作方式也大不一样。以前是一个人单干,现在是团队一起干,以前是自己亲自干,现在是指挥别人干,这是一种巨大的变 化。要适应这种变化,首先必须要转换思维模式。思想决定行为,思维模式就好比在陌生城市找路用的地图,拿着过时的地图,自然无法到达想去的目标。思维不换 走老路,思维一换天地宽。

1.从单干到群干

从程序员到项目经理,不只是职位的变化,其工作性质也发生了根本性改变,简单的说,是一个从单干到群干的过程。

严 格来说,程序员并不是单干,他们也是在团队中,需要具有团队合作的精神,但其实程序员的工作具很强的单干的特征。在项目中,程序员的基本工作,也就是完成 项目经理分配的开发任务,而这些开发任务,是项目经理或团队进行工作分解后的小的工作包,是一个确定的功能点,一个人足可以胜任,因此程序员只需要自己构 思、自己编码就可以了,并不需要很多人一起来合作完成。

项目经理不一样,他面临的不是某个确定的功能点,而是整个项目,无法一个人完成,必须要整个项目组齐心合力一起来做,这就是群干,也就是团队作战。项目经理不只是自己需要团队精神,更要能够激发其他人的团队精神。

我们看一看程序员和项目经理两种角色的比较:


角色


主要特征


目标


主要工作


合作


技能要求


程序员


单干


完成项目经理安排的开发任务


编码


要求具有团队精神,能与其他人合作完成任务


开发能力


项目经理


团队作战


“快好省”实现项目验收,并使各方满意


制定计划、指导和安排工作、项目监控、团队建设等


使团队更具有合作精神,建设凝胶型团队


领导力(管人)

执行力(理事)

正如黄健翔的名言说的一样:“你不是一个人在战斗!”项目经理要时刻记住这一点,不要只顾自己闷头编码。只有学会发挥团队的力量,才能管好项目,成为一名真正合格的项目经理。

2.为什么软件企业人难管

从单干到团队做战,项目经理最大的变化就是以前只需要管自己一个人,现在你要管一个团队,以前独善其身就可以了,现在要兼济他人了。可以说,项目经理最重要的一项工作就是管人。

但是软件企业的人是出名的难管。软件公司的经理管人有两难,一是留人难,人才流失成了很多公司的心病;二是用人难,要把程序员用好,把大家的潜力发挥出来,决非易事。

1)留人难

每年春节过后大约三月份,是很多软件公司的人力资源部经理最“兴奋”的时候,一方面他们要大量招人,另一方面,大量程序员辞职流失,让他们叫苦不迭。

程序员的离职率高,一直是行业的普遍存在的问题。据前程无忧网站2012提供给《中国经济周刊》的信息表明,IT行业人才流失率高居所有行业的首位。另外据CSDN的一份调查显示,43.6%的开发者在5年内换了3份以上的工作,这么高的跳槽频率真是让人瞠目结舌。我们不禁要问,为什么程序员这么“喜欢”跳槽呢?

我曾经接触过数以百计的人员离职,根据对他们的分析,我将程序员离职的主要原因分为三种:

表 程序员离职原因分析


类别


原因


分析


行业原因


程序员就业情况比较好


既然选择多,也就没有必要担心离职问题了。


行业不成熟


很多软件企业生存艰难,大部分软件企业给员工提供的薪资福利有限。


行业内“贫富差距”大


少数优秀的公司如阿里巴巴的高薪,导致程序员这山望着那山高,影响了员工作稳定性。


公司原因


人际关系紧张


人人都向往愉快、和谐的工作环境。


对公司前景没有信心


如果说公司是大海中的一条船,没有人愿意待在一条没有方向,船身也破破烂烂、摇摇晃晃的小船上,不如趁早离开,找一条更大更坚固的船。


晋升机会少,个人能力得不到发挥。


?   良禽择木而栖,既然英雄无用武之地,那也没有必要在一棵书上吊死。


工作压力太大,或长期出差


要钱也要命啊。为了工作可以忍一时之苦,但长期搏命,那就要考虑值不值得了。很少有公司真的把员工当作家庭成员,那只是说说而已,同样也不要指望员工真的把公司当成自己的家,把公司的事当成自己的事


个人原因


期望获得更高的薪酬


跳槽是公认的涨薪最快的方式。


想换多换几个公司,多学一点东西,开阔视野


自己有一身武功,到哪里都会吃亏。在一个小环境中待久了,不了解外面的世界,能学到的东西也有限。


有些人抱着“此处不留爷,自有留爷处”的想法,不认真对待工作


既然这样,公司也不会认真对待他们,更加不会委以重任,最后他们也就边缘化为可有可无的人物了,跳槽也就成了唯一的出路。

以上枚举显然不能穷尽所有的问题,但能抓住主要原因就可以了。

这么多问题中,最重要的还是薪资问题。据《北京青年报》的调查显示,“职业收入高低”是促使人们跳槽和选择新职业的首要原因。然而在这一问题上,公司其实也有其苦衷。

很 多人从学校毕业,对开发基本上一无所知,经过在公司一年多的培训学习,取得了巨大进步,个人能力提升很快,此时必然对薪资要求也比较高,这是可以理解的。 然而,站在公司的角度,这一年你基本上还谈不上什么贡献,公司却付出了较大的成本,大幅加薪一时难以接受,难道我把你招进来就是为了培训然后再涨工资干活 吗?你也许会认为公司非常短视,这样的公司不待也罢,殊不知,软件行业看似光鲜,其实大量的企业挣扎在生死线的边缘。据工信部统计,2011年上半年我国软件行业利润仅占软件业务收入的1.28%,这么低的利润率,能活下来就是成功,对公司提出过高的要求也是不现实的。

在这一场博弈中,没有谁对谁错,但公司肯定是受伤的一方。真正将员工利益与公司利益统一起来的凤毛麟角,大部分公司里,公司和员工就像一对冤家,虽然互相需要,却又矛盾重重。

当然,其实公司也应该转变思路,不要总抱着我培养了你、你应该感谢我的心态,在程序员进步巨大的情况下,还是要给员工相应的薪酬,真正留住人才,毕竟软件项目禁不起人员剧烈变动的折腾,从长远来看,公司还是划算的。

2)用人难

留人难,用人更难,要把程序员用好,则是难上加难。员工用得好,每个人都奋勇当先,以一当十。用得不好,员工死气沉沉,没有朝气和干劲。在我所见过的软件项目中,虽然有不少程序员工作主动积极、富有效率,但更多的是缺乏激情、消极怠工、甚至不服从项目经理工作安排情况。

为什么软件开发人才就这么难用呢?这是由多方面的因素所决定的:

●软件开发的特点

软 件产品有一个非常显著的特征,就是它是一种无形的东西,在生产过程中看不见也摸不着,完成以后可以看到运行效果,但你还是无法知道它是不是一个“豆腐渣工 程”。它里面暗藏的问题也许若干年后才能看到,也就是说它的质量评价非常困难。这与传统的制造行业有着非常大的差别,比如你是造一栋房子,生产过程中我们 就能看到它的结构设计是怎样的,它的地基是不是够牢固,它有没有用“牙签钢筋”等等。

第二个重要特点是对人的依赖性非常大。同样的一个功能点,由不同的程序员来做,所花的时间可能会相差很远,比如有经验的人来做可能只要1天,没经验的人来做,可能1周甚至1个月都完成不了,做出来的质量也可能有天壤之别。即使是同一个人,由于其工作状态的差别,也会产生巨大的差异,如果主动积极做,可能只要1天,消极怠工的做,就无法预期了。这样的情况,在传统行业是无法想象的,只要按规定的程序和规范来做,即使换一拨工人,也可以在同样的时间建造出来,建出来的房子的质量也不会相差太远。要知道,再烂的挖土机也能挖出一个大坑。

总之,软件开发存在非常多的不确定性,非常依赖于每一个开发人员。虽然管理专家们发明了很多方法企图来减少这种不确定性,减少对人的依赖,让软件开发像传统行业一样变得可控,但迄今为止,仍然没有一个通用的行之有效的方法,专家们也不得不无奈的发出“没有银弹”的感慨。

● 程序员的个性比较强

不得不承认,与其它行业人员相比,程序员显得更加内向、不合群,有些人自视甚高,看不起别人。他们做事冲动、不服管,也就不足为奇了。

●程序员的想法比较多

程序员都很聪明,对自己的期望值也很高,不会满足于现状。有想法本来是好事,但人人都很有想法时,经理就没那么好当了,没有高超的领导技能是难以应付的。

综上所述,软件企业对人的依赖性非常强,却又面临着留人难和用人难这样两难的困境。要解决这些问题,一方面要求软件企业真正要做到以人为本,另一方面也对管理者提出更高的要求。

3.转换思维提升领导力

留 人难、用人难,难道我们真的就无能为力了吗?这两难困境中,有行业原因、有公司原因,对于这些,作为项目经理也许力不从心;但也有程序员的原因和项目经理 自身的原因,对于这一类问题,项目经理并非无能为力。即使在同一个公司,不同项目组中的人员流失情况、团队士气也会有很大的差别,这说明项目经理完全是可 以有所作为的。对于有强大领导力的项目经理而言,人员的流失率会更小,工作效率会更高。要提升领导力,首要的是转换思维。

在前面博文中曾介绍了管理的五大思维:以目标为中心的思维、整体思维、平衡思维、以人为中心的思维、团队思维。其中前面三项与理事有关,而后面两项与管人有关。下面我们对这两种思维进行详细的解析:

表 管人的两大思维


思维


主要观点


分析


以人为中心的思维


软件产品主要取决于人


虽然流程、规范也很重要,但软件产品的质量,项目的进度、成本等因素,更多取决于每个人的技能与投入程度。


人的潜力是巨大的


一个人的能力就像海上的冰山,项目经理无所作为,你得到就只是露出水面的那5%。一个优秀的项目经理可以通过其领导力,将员工的潜力挖掘出来。


人是有感情的


员工绝不是木头,可以随便搬来搬去,搬到哪里都是一块木头。首先项目经理不可以做伤害下属感情或面子的事情,进一步可以利用这一点,适当使用感情牌,提高团队的凝聚力。


人是有动机的


员工可以努力工作,但这有动机的,要学会分析、利用员工的动机,并采用合适的激励手段。


人与人之间是有差异的


每个人在能力方面和思维方面均存在差异。这一方面要求项目经理不能吹毛求疵,要容忍员工的不足,另一方面,项目经理不能一味以己之心,度人之腹,要尊重人的个性思维。


团队思维


团队的力量可以是1+1>2,也可以是1+1<2


“三个和尚没水吃”,这是典型的1+1<2,其根本原因是他们之间没有建立坦诚相待、团结合作的关系。一个项目团队也是如此,不要以为人多就力量大,那还要看项目经理会不会领导团队,会不会用人。


团队成员之间相互影响


近朱者赤,近墨者黑。正面的情绪也会给别人施加正面的影响,不好的因素同样会扩散,而且会更快、影响更大。因此,项目经理必须要带动正能量,并注意将那些负面的东西扼杀在萌芽状态。


团队之间的协用程度是团队战斗力的关键


团结就是力量。一个木桶能装多少水,不仅取决于每块木板的长度,还取决于木板之间结合是否紧密。项目经理的领导力,就是木板之间缝隙的粘合剂。


项目经理在团队中起着至关重要的作用


一头狮子领着一群羊,要胜过一只羊带着一群狮子。项目经理是团队的核心,他在团队中起着协调作用、激励作用、榜样作用,可以说他直接决定了团队的战斗力。

可以看出,这种以人为中心的思维和团队思维,真正体现了以人为本的思想。它们与程序员的机器思维、单干思维大相径庭。许多项目中的问题,就是由于项目经理的思维还停留在程序员阶段造成的。

管理学之父彼德.德鲁克说:“管理是一门反映人的内心,与人性息息相关的科学。”项目经理只有跳出程序员思维的局限,实现思维的转换,尊重人性、遵循人的社会法则,才能真正把人留住、用好,项目团队才能具有更强的战斗力。

4.项目经理也是人事经理

在管人的方面,除了要建立上面两大思维之外,还要提高一项认识,那就是项目经理其实也是整个团队的人事经理。

很多项目经理对下属关注的重点往往是他有哪些具体技能,比如他有几年工作经验,他会用JQuery吗,熟悉NHibernate吗等等,而对于项目组成员培训、薪资、离职这些事情,则认为统统是部门经理或人力资源经理的事情。如果将问题交给人力资源部,需要跨部门协调,比较麻烦,因此干脆直接全部推给部门经理。

我担任部门经理的时候,曾无数次遇到这样的情况:

项目经理找到我说:“经理,某某要辞职了,帮我安排一个人。”

“你跟他谈过没有?”我问道。

“还没有。”

“他为什么辞职?”

“还不清楚,可能是工资问题吧。”

我 找员工沟通过之后,原因自然是五花八门,有要求加薪的,有抱怨环境的,还有跟项目经理合不来的,不一而足。经过多轮沟通,该开导的开导,有合理要求的尽力 帮助争取,还有一部分可以承诺延迟满足,或者用前景来“诱惑”等等,采取这些方法之后,还是有不少人愿意留下来继续做的。其实,大部分辞职的人并不是喜欢 换工作,而是有一个心结,需要上司来帮他打开。

其实我做的这些工作,项目经理一样可以做。项目经理与员工朝夕相处,要时刻关注员工的动态,发现异常情况,及早介入沟通,也就不需要其上司费尽心力了,而且员工可能根本不会走到辞职这一步,沟通效果会更好。

项目经理还有一个普遍存在的误区,就是在评价下属时,习惯于说某某不听话、不好管。殊不知,一个员工好不好管,其实也取决于项目经理本人的态度和做法。一个看似不好管的员工,经过引导,同样可以成为项目的骨干,这样的例子屡见不鲜。

所 以项目经理在碰到管人的难题时,不要再总是想“这个我管不了”、“那个我没办法”,而应该抱着“我也是人事经理”这样的心态,主动沟通、想办法。如果经过 分析或者努力后,确实需要上司出马的,才去请上司来帮忙解决。直接把问题丢出去,当然是最简单,但这样做一方面你在团队中的威望会受到影响,项目的凝聚力 下降,另一方面你的个人价值也大打折扣。

5.打造“凝胶型”团队

著名职业经理人唐骏说,管理的任务就是“造一条船,然后让船划起来”。对项目经理而言,我们已经有了一条船——就是项目团队,现在的任务要把它划起来。

软件质量之父沃兹.汉弗莱曾经提出,一支高效的团队应该是一种“凝胶型”的团队。在这样的团队中,大家有着清晰的共同目标,彼此合拍,每个人都全身心投入,团队显示出超常的战斗力。

我曾有经过一次项目灾难拯救的经历,这一段时间我真正体会到了凝胶型团队的力量。项目上线后发现软件运行效率极低,故障不断,人人疲于奔命,客户发出最后通牒,三天之内搞不定就下线。在这种情况下我临危受命,临时接管项目。接手后我主要做了以下几项工作:

1.找出当前影响最大的几个问题,采用头脑风暴法一起找出解决方案,在短时间内让客户体验有较大改善,让客户重拾信心,然后不失时机安抚客户情绪;

2.每天客户下班后开会,与项目组成员一起进一步研究项目存在的问题,按轻重缓急做成任务列表,制定阶段目标,并检查上一阶段完成情况,更新任务列表;

3.向公司申请了充足的经费,保障后勤,改善工作环境和吃、住条件,解除后顾之忧;

4.与团队一起加班加点,一起分析问题,并亲自完成一些力所能及的功能修改。

有 随后一段时间里,项目团队的状态让人难以置信。项目组虽然夜以继日的工作,却没有一个人说出一句怨言。其中一位同事才刚当上爸爸一个星期,就驻现场无法回 家;还有两位同事的女朋友半夜打电话过来,他们只能躲在一边苦苦安慰;还有一位同事,由于个人原因早先已经申请了离职,仍然与我们一起奋战到最后一刻…… 经过一个多月辛苦修改完善,项目总算彻底摆脱了危机,项目组高高兴兴打道回府。

在这一次经历中,虽然大家都很辛苦,但每个人都过得很充实。大家同心合力,每个人都贡献了自己全部的智慧和力量,也都做到了以前难以想象的事情。

我 为什么举这个一个非正常项目(陷入灾难)的例子呢?这是因为要建设一个真正的凝胶型团队非常不易,不只是依赖于项目经理和每一位成员,还与公司的制度、氛 围、项目的任务特点等多方面的因素密切相关。在这个例子中,项目灾难显然也是激发大家战斗力的一个重要因素。不过,即使是不能完全做到,但通过项目经理努 力,还是可以近似实现的。

根据项目经理团队中充当的角色和发挥作用的不同,凝胶型团队可以分为两种,即星型和网络型,如下图所示:

图 两种“凝胶型”的团队

● 星型

项 目经理处于中心位置,好比一颗红太阳,把大家吸引在自己的周围,整个项目组依靠项目经理领导力团结在一起。这要求项目经理个人能力极强,富有魅力,具有绝 对的权威。星型团队的决策方式常常是这样的:项目经理收集意见,项目经理决策,再反馈给大家,或者由项目经理单独决策,再分发给大家。

● 网络型

网络型的团队中,项目经理看似在其中不占主导地位,项目经理的权威被弱化,实则项目经理的对团队的控制已经内化到每个人的潜意识之中,达到了一种近似于“无为而治”的境界,因此对项目经理的要求更高。

这种团队的决策方式一般采用民主制或民主集中制。把大家联结在一起的不只是项目经理领导力,更是富有挑战性、具有吸引力的目标,以及共同的认识和价值观。项目经理往往是外柔内刚,能够不动声色,于无形中实现对项目掌控。

能够建成星型团队的项目经理已经寥寥,能做到网络型更是可遇不可求。不管有多难,目标不能丢。我们就好比是一群已经出发的登山者,来到了山脚下,怎么能够因为看到山太高太难爬就放弃攀登呢?

时间: 2024-10-24 19:23:30

从程序员到项目经理(16):你不是一个人在战斗--思维一换天地宽的相关文章

程序员到项目经理:从内而外的提升

转自:http://www.cnblogs.com/watsonyin/archive/2012/09/10/2679528.html 目录 从程序员到项目经理(一):为什么要当项目经理 从程序员到项目经理(二):升职之辨 从程序员到项目经理(三):认识项目经理 从程序员到项目经理(四):外行可以领导内行吗 从程序员到项目经理(五):程序员加油站,不是人人都懂的学习要点 从程序员到项目经理(六):程序员加油站 — 懂电脑更要懂人脑 从程序员到项目经理(七):程序员加油站 — 完美主义也是一种错

【转】从程序员到项目经理--西西吹雪

处男作<程序员第二步—从程序员到项目经理>分娩记之一 也谈谈程序员职业规划的几个问题——我的一些故事 从程序员到项目经理(29):怎样写文档 从程序员到项目经理(28):该死的结果导向(只看结果,不问过程到底行不行?) 从程序员到项目经理(27):怎样给领导汇报工作 从程序员到项目经理(26):项目管理不能浑水摸鱼 从程序员到项目经理(25):对绩效考核的吐槽 从程序员到项目经理(24):慎于问敏于行 - 忠于工作不等于奴性 从程序员到项目经理(23):你真的尽力了吗?--从“月饼税”中我们学

从程序员到项目经理(二)

被任命为项目经理,是职业生涯的第一次飞跃,既惊喜又紧张.从现在开始,你要思考怎样才能胜任项目管理的工作,否则等着你的,很可能是一场悲剧. 一.升职之辨 1. 为什么是我 不是每个人都能当项目经理,程序员中只有一小部分能成为项目经理,大部分人会随着岁月的流逝,成为了“资深程序员”. 那为什么领导要选择我呢?一般人对自己所拥有的东西都会很快习以为常,认为这是自己应得的.一点也没错,这就是你应得的,原因也很简单,那是因为你比别人优秀一点. 其实领导挑选人才的标准很简单,那就是你比别人优秀,而且只需一点

从程序员到项目经理

“从程序员到项目经理”,这个标题让我想起了很久以前一本书的名字<从Javascript到Java>.然而,从Javascript到Java充其量只是工具的更新,而从程序员到项目经理,却是一个脱胎换骨的过程.从Javascript到Java,是一个取巧的方法:而从程序员到项目经理,却并无捷径可走,必须从内而外的改变和提升. 一.为什么要当项目经理 1. 问题本质 如果我对一个老程序员说:“有必要转项目经理啦”,很多人第一反应是“为什么一定要当项目经理?!”,反问很给力,基至会让人哑口无言.但反问

从程序员到项目经理(1)

被任命为项目经理,是职业生涯的第一次飞跃,既惊喜又紧张.从现在开始,你要思考怎样才能胜任项目管理的工作,否则等着你的,很可能是一场悲剧. 一.升职之辨 1. 为什么是我 不是每个人都能当项目经理,程序员中只有一小部分能成为项目经理,大部分人会随着岁月的流逝,成为了“资深程序员”. 那为什么领导要选择我呢?一般人对自己所拥有的东西都会很快习以为常,认为这是自己应得的.一点也没错,这就是你应得的,原因也很简单,那是因为你比别人优秀一点. 其实领导挑选人才的标准很简单,那就是你比别人优秀,而且只需一点

从程序员到项目经理(一)

“从程序员到项目经理”,这个标题让我想起了很久以前一本书的名字<从Javascript到Java>.然而,从Javascript到Java充其量只是工具的更新,而从程序员到项目经理,却是一个脱胎换骨的过程.从Javascript到Java,是一个取巧的方法:而从程序员到项目经理,却并无捷径可走,必须从内而外的改变和提升. 一.为什么要当项目经理 1. 问题本质 如果我对一个老程序员说:“有必要转项目经理啦”,很多人第一反应是“为什么一定要当项目经理?!”,反问很给力,基至会让人哑口无言.但反问

《从程序员到项目经理》读后感-职业瓶颈

瓶颈这个说法特别贴切,脑子里想象的是这样一个场景,一条鱼很小的时候,通过瓶口把它放进去瓶子里,后来它越长越大,在瓶底还能游动自如,但是想游出来确是不可能了.这条鱼看着特别悲剧,怕是要老死在这瓶子里了,好在鱼的记忆时间都不长,貌似只有三秒,所以也想不了那么多了. 但是人要是遇到了职业瓶颈,可就真的好好想想了,什么时候算是瓶颈了呢,可以举几个例子,比如说某个人在一个职位已经做了十年了,新人旧人都换了好多茬,就这个人一直没有挪窝,这多半是遇到瓶颈了.还有个另外的例子,比如说,爬长城的时候,你前面有好几

从程序员到项目经理(27):怎样给领导汇报工作【转载】

如果有一天领导叫你汇报一下项目状况,你会怎样来回答呢?在项目汇报方面,我总结有三种类型的项目经理,看看你是属于哪一种: 第一种,报喜不报忧.这种项目经理就像和珅一样圆滑,传达给领导的永远是好消息:进展总是顺利的,团队一定是和谐的,客户必定是满意的,天下永远是太平的,仿佛天气永远是晴空万里,永远不会刮风下雨似的.领导听了往往也是眉开眼笑,点头赞许. 第二种恰好相反,总是显得忧心忡忡.也许是由于项目经理有很强的危机感,每次汇报必然是听上去大问题套着小问题,项目危机重重,好像天快塌下来了似的.这种项目

《从程序员到项目经理》读后感-项目经理的TO-DO LIST

从本篇开始,不讲程序员了,专心讲项目经理. 人家说相声演员肚子里是杂货铺,其实项目经理才是,接触的人数量多,种类多,自然接触的事情也是数量多,总类多,这个角色就是一个大总管的角色.项目经理每天的TO-DO LIST都能排一大堆,如果不能好好规划和管理,那真是要累死牛了. 拿我自己为例,我需要接触的人,包括产品支持部门的人,测试部分的人,产品部门的人,运维部门的人,销售部门的人,当然最主要还是开发部门的人,这六大部门的人,每个人都可能给你的TO-DO LIST带来一大堆事情. 为了限制我的LIST