“从程序员到项目经理”,这个标题让我想起了很久以前一本书的名字《JavaScript从入门到精通》。然而,JavaScript从入门到精通充其量只是工具的更新,而从程序员到项目经理,却是一个脱胎换骨的过程。从程序员到项目经理,却并无捷径可走,必须从内而外的改变和提升。
一.为什么要当项目经理
1. 问题本质
如果我对一个老程序员说:“有必要转项目经理啦”,很多人第一反应是“为什么一定要当项目经理?!”,反问很给力,基至会让人哑口无言。但反问成功的结果可能只是使自己麻醉,暂时忘却现实中面临的烦恼和压力,这无异于把头埋进沙子中的鸵鸟。只有理智的分析,才能作为自己行动的指南。
首先申明,不是每个程序员都需要当项目经理,也不是每个程序员都想当项目经理,更不是每个程序员都能当项目经理。因此,当不当项目经理,可以说是一个“需不需要、想不想、能不能”的问题。
想不想,是一个意愿的问题。这是前提,毕竟强扭的瓜不甜嘛。显然,富二代一般是不想当项目经理的,因为他们想直接当总裁。还有些人,只想钻研技术,不想钻研人,他们也是不会想当项目经理的。如果你没有意愿当项目经理,也就没有讨论的必要了。什么,你不知道想不想?呃,那就继续往下读吧,也许读着读着,你就想当了。
能不能,是能力的问题。这是不关键,因为只要有意愿,能力是可以培养的。程序员连复杂得让人琢磨不透的软件都能搞定,还有什么搞不定的?
因此最后落实在需不需要这个问题上。这个问题很棘手,需要从程序员自身以及外部环境等方面进行分析。要讨论这个问题,就要弄清楚它和想不想的关系。想和需要是紧密相关的,但并不是一回事。想不想,主是感情的因素,而需不需要则要进行理智的分析的了。理智与感情,并不总是一致的。有些东西,是你需要的,但你未必想要。比如,被困沙漠的时候,有时被逼喝自己的尿液,这是理智战胜了感情。电影《色戒》中的汤唯,则是感情战胜了理智,爱上了敌人,最后造成了悲剧的结局。因此,我们还是少说气话了,不要冲动,冷静的分析自己的处境吧。
2. 鸭梨山大
当我从网上看到码农这个词时,觉得网民很有自嘲精神,后来我看到了码畜和码奴这个两个词,不禁从心底涌起了深深的悲哀,为这个行业,也为这个社会。
看看智慧的网民对IT人士级别的划分:
我知道你想问什么问题了。不要问哥赚多少,哥只是一个普通的IT人士而已。前面三级都是牛人,是成功人士,他们的作用不是让去成为他们,而是激励我们自己。你现在读到的也不是一篇成功学的文章,而是和你一起分析程序员的处境、以及怎样缓解压力的文章罢了。
言归正传。看到这个表,是不是有鸭梨山大的感觉。找到了自己的位置吗?什么,不好意思?没关系啦,园子里面不是很多人称自己为程序猿或者猴子吗?那大概也就是相当于码畜吧。我想能读到这篇文章的,大概都是“IT工程师(高级经理)”以下,他们的主要特征是“生活压力大”和“混日子”。如是你是前面四级,建议你果断退出本文。
我在上一篇博文中提到30岁现象,有些人认为车到山前必有路,这是杞人忧天。不错,程序员确实可以干到30多岁,甚至四五十岁,但他们面临的压力却可能是“不足与外人道也”。
我经常与30岁以上的程序员交流,他们流露出来的对现状的不满、无奈、无力、对安全感的缺乏,让我感同身受。
虽然谈压力并不是一件愉快的事情,但我仍然必须要说出来,因为我宁可清醒的痛着,也不要在麻醉中睡去。那就让我们拿着手术刀,对自己进行痛苦的解剖吧。
下面是一个简单的“危机评估表”,总共有30项。在“是否认同”后面打出分数,每一项如果认同为1分,不认同为0分。
(说明:此表并不精确,仅供参考)
如果总分小于10分,那要恭喜你,说明你生活稳定幸福,让人羡慕。我觉得这篇文章你也不用往下看了。
如果你的总分大于20分,说明你承受的压力过大,可能面临职业方面的危机,应当寻求改变了。
如果总分在10-20分,说明你生活比较稳定,收入方面可能是中上等水平,但职业发展方面仍有风险。
3. 另一片天地
所谓“穷则变、变则通”,如果你还是普通的老程序员,并且还在为自己的职业彷徨和苦闷,那就应该寻求变化之道了。
如果你愿意,转向项目管理乃是上上之策。
当然转项目管理只是程序员很多选择中的一个。显然不是每个程序员都需要当项目经理。一般每个公司都最少提供了技术和管理两条职业发展通道,如果你技术超牛,你完全可以从程序员做到系统分析师,一直做到技术总监。如果技术方面你信心不足,转项目管理就是一件自然而然的事情了。
技术和管理,这是两条绝然不同的路,虽然“条条大路通罗马”,但沿途的风景却是完全不一样。一旦你从事了项目管理,你将看到不同的另一片天地。
(1)在管理的天地里,你将不再有职业瓶颈。
程序员虽然也可以干一辈子,但工资水平是有天花板的,不要问我为什么,行业就是这样。项目经理则有无限上升的空间,不但工资更高,职位上也可以升至部门经理、副总经理甚至总经理职位。
(2)促进项目经理内在成长,心智更加成熟。
美国项目管理协会PMI认为,项目经理75%-90%的时间应该用在沟通上。沟通的对象显然是人,因此,项目管理主是要一项与人打交道的工作。如果说解决技术问题人主要是靠一个人的智商,那么与人打交道,则是要靠一个人的情商。
虽然不当项目经理也可以发展情商,但在项目中锻炼是自我成长、自我完善的捷径。
(3)项目管理知识可以用在生活中的各个方面。
生活中的许多事情,我们并没有称之为一个项目,但可以用项目管理的方法来对待。例如一次婚礼的组织,或一次自助旅游。你在项目管理中培养起来的情商,更是让你面对生活中的各种问题游刃有余,你的家庭也会更家和谐,就像范范的一首歌里唱的:“好像什么困境都知道该怎么办”。当到达这种境界时,你会有一种海阔天高,一览众山小的感觉。
因此,即使你不想从事项目管理,也建议你学习一下项目管理知识。有一本书叫《不懂项目管理,还敢拼职场》,虽然觉得内容一般,但对标题深以为然。
二.项目管理倒底难不难
程序员问:“我现在想当项目经理,但心里没底,不知道项目管理到底难不难?”这个问题确实不好回答。俗话说,“会者不难、难者不会”,很多事情都是如此。
有些人觉得不难,他们好像天生就具有管理的才能,他们举止得体、八面玲珑,具有很强的个人魅力,可以把大事化成小事,把坏事变成好事。这样的人,想不成功都难。
大部分人还是会觉得难。在PMI的知识体系里,项目管理有九大领域,五大过程组,44个过程,有数不清的工具和方法。项目执行中方方面面出了问题,都是项目经理的责任,项目经理又不是超人,怎么应付得过来。项目管理确实有点难。
你若问我,我会说项目管理既难,又不难。对于愿意改变自己的人而言,它不难;对于性格偏执的人而言,项目管理确实太难了。
很多人无法意识到自己的偏执。上级只要提出一点批评,他们就要拼命的辩解和反驳。他们的保护壳太厚了。
项目经理最重要的素质,就是心智的成熟,一个心智成熟的人,不会是一个偏执的人。
毕竟,人无完人,项目经理必须从善如流,才能完成自己角色的转变。对于从程序员转过来的项目经理,做事的方法与以前应是翻天覆地的不同,必须迅速审时夺势,改变自己。否则,那你不还只是个有项目经理职位的程序员么?
因此可以说,项目管理难就难在项目经理要改变自己。这个改变,不只是知识体系的扩充,更可能是性格的改变,而一个人要改变性格是极其困难的。
程序员习惯于与机器打交道,通过严密的代码和逻辑来控制机器;而项目经理是跟人打交道,人是有感情的,绝对不是你给他输入1+1,他就给你输出2。项目经理必须时时用心去思考、体会,然后改进。几番回合下来,项目经理会惊喜的发现自己变了,有种脱胎换骨的感觉----那是当然的,因为变得更成熟了。
只要你愿意改变自己,假以时日,你一定会成为一个优秀的项目经理。
三.程序员应克服的障碍
程序员与项目经理之间,往往有一条鸿沟。对技术钻研越深的程序员,这条鸿沟可能越大。这是由程序员的性格特征决定的。
程序员普遍有非常多的优点:例如聪明、逻辑思维强、学习能力强、创新能力强、直率等。但优点往往也是弱点之所在,例如:
(1)太讲逻辑:与人相处时容易忽视人际关系、感情等方面的因素。
(2)过于直率:说话直来直去,容易伤害他人感情。
(3)自傲:总觉得自己技术不错、比周围的人要强一点。好比一只鸡看到同类觉得自己最大,看到鹅觉得跟自己差不多,看到火鸡才觉得比自己大一点。
(4)固执:在自己的逻辑中不能自拔,无法听取别人的意见。
(5)沟通能力较弱:大部分程序员在口头表达、写作、汇报、交流等方面存在不足。
而这些缺点,也是心智不够成熟有表现,这是项目经理的大忌,往往会成为程序员晋升项目经理的障碍。因此,必须要克服这些障碍,给自己制定符合项目经理要求的行为准则,时时提醒自己,每日进行反省,坚持下去,必然会成功。
来源:博客园 西西吹雪