项目经理修炼手册 2.1.2 项目经理的基本功

具备以上素质的人,大体上可以算是具有基本的程序员素质了,但是想从程序员成为项目经理,必然还需要有一点进步,那额外的这些素质都有哪些呢?

 

曾经有人力资源的朋友问我要人,我介绍了几个技术上很不错的人,他也给做了推荐,但是用人单位面试之后反应不好,说这些人缺乏项目经理的经验和技巧。这时候我也才意识到,我推荐的都是程序大拿,或者说技术大拿,却从来不是项目大拿,更不是项目管理的良好人才。项目管理人才和高级技术人才的区别在哪里呢?

 

还是说回我踢球的那个往事,我们队由于有薛申这样的半职业球员在前场进攻,又有我这种铁闸后卫,在小组赛脱颖而出,但是到了复赛的时候,我们遇上了回民中学队,回民中学队是一批回民中学初二学生组成的球队,我当时已经上高二,薛申大概比我大一岁,总之在身体发育程度上我们队是绝对占上风的,但是比赛一开始就呈现一边倒的情况,对方凭借着娴熟的传接配合多次轻松洞穿我们的球门,我更因为防守动作过大被红牌驱逐出场,这是一段非常糟糕的记忆。我想通过这个例子告诉大家的是,在今天软件开发已经成为一种团队运动,个人能力在其中的重要性已经相当有限,作为一个新人,进入一个软件项目团队,最重要的事就是要了解和熟悉团队流程,尽快的和团队其他人员配合好,只有如此才能够体现自己的价值。

 

我在博客园和CSDN常常看到一些新加入工作的朋友抱怨公司的流程有多么的差劲,公司的技术经理“什么都不懂”,同事都只会“三,五年前的技术”,软件开发流程“一点也不正规”,然后抱怨自己进入了错误的公司,觉得自己在这里是蹉跎岁月耽误青春。每次在看到这样的帖子的时候,我都注意到另外一个有趣的现象,这些朋友通常都不能在文章中给出一点对公司有益的改进意见,也不知道那些“什么都不懂的”的技术经理们每天都在做什么,对那些“只会三五年前的技术”的同事们所做的工作内容也不完全不感兴趣,尤其是不能说出自己拿最新的技术怎么完成那些三五年前技术所完成的工作。

 

还有些人抱怨公司的软件开发流程不正规,没有需求文档,没有集中代码管理方式,没有软件功能说明书,没有全职的测试人员,却同时也说不出怎么写需求文档,用什么方法做代码管理,怎么去写功能说明书,又怎么去进行测试。我们在这些朋友嘴里只能看到抱怨,坦白说,这些抱怨就算全对,对抱怨者个人也没有任何好处,因为任何公司都不需要一个只会提出问题的人。公司需要的是能主动发现问题,同时能解决问题的人。以公司没有需求文档的事情来说,即使别人都不写需求文档,你也可以自己写,哪怕开始的时候格式很混乱,但是一点一点的记录软件功能的需求变化,每周汇总一次这周的软件需求并整理成文档,对自己来说也是一笔宝贵的财富,再比如说没有软件代码集中管理,你可以把自己写的代码放到一个自己的版本控制CVS服务器上,然后每次自己修改的时候做签入和签出,顺便练习了CVS服务器的部署和使用,还养成了代码编写注释的良好习惯。每件事情在抱怨的时候都应该相处解决方案,我们在这里不是说不能抱怨,而是要告诉你在没有实践过解决方案的之前,请不要抱怨。

 

一个新人如果只是按部就班的完成公司交给的工作,即使他再兢兢业业一丝不苟,在短期内也很难得到提升,得到提升的人不但是能被动完成交托工作的人,更是那些善于在工作中发现问题,并解决问题的人。一般来说新人想要迅速提升,就需要在工作之外善于观察,首先要观察公司的流程,无论何种公司,公司组织结构都是公司的基础命脉,不了解公司组织结构就无法开展任何工作。除此之外就要不断观察公司的与自己有关的业务的流程,作为一个软件项目开发人员,熟悉公司的软件开发流程,是至关重要的,如果能从这个流程中发现问题的话,那么可以说你的机遇就要来了,但是需要注意一点的是,要甄别那些问题是老板真正关心的问题,那些问题是书本上的问题。所谓书本上的问题是软件开发流程中与大学的软件工程教程不符的地方,很多刚刚毕业的软件开发人员都会把这些不符之处作为开发流程的问题,对其深恶痛绝,我建议遇到这种情况,广大开发着要保持审慎的态度,软件工程这门学问所适用的情况是有一些先决条件的,并非所有情况下都必须按照此类工作一丝不苟。我举个极端的例子,有个朋友在一家外地软件公司,给某地方上的某机构开发一个信息管理软件,这个朋友看到公司软件开发内部流程混乱不堪,代码质量低下,但是用户界面异常华丽,即使程序报错也都会给出一些漂亮的界面,这个朋友就很不理解,跑到老板哪里建议说增加一些代码测试人员,让程序少报错,UI不用经常更换。老板是我这位朋友的叔叔,笑呵呵听我朋友说完以后,告诉他这个事情已经知道了,让他回去以后安心工作,这个事情不用他过分操心。我朋友百思不得其解,后来偶然才知道,这里面的情况很多很复杂,因为软件项目预算是有限的,所以钱得花在刀刃上,这个用软件的机构对软件质量没太多要求,因为本来就是所谓个别人的“业绩工程”,只要界面好看,并且每年都更新一下界面,这工程就算大功告成,所以老板对软件的理解就是好看的界面就万事OK,再额外花钱弄内容上的东西,甚至优化代码一类,完全没有必要。这种特例当然不足取,但是不了解公司当前应用流程就盲目提建议可能画虎不成反类犬,给自己添麻烦。

 

老板关心的问题其实一点也不难挖掘,你可以换个角度想,那些方法能让老板多挣钱那些问题能导致老板少挣钱,凡是能让老板多挣钱的都是好办法,凡是能让老板少挣钱的都是严重问题。比如软件代码质量低下这个问题,如果公司不是那种营销特牛的公司,代码质量确实会影响公司的软件销售,这时候你要是有办法能提高软件代码质量,那老板就会看重你。但是要记住,在你跟老板说这个问题之前,你应该先有一个实践过的解决方案,然后再某些场合小心翼翼的提出这个问题,等老板觉得这个问题严重,让你去解决的时候,你才一下子拿出那个你早有准备的答案,这样一来老板会觉得你能力非常出众,当然他不知道你是早有准备的。可以如何引导老板,又怎么才能和老板沟通好呢,请看本章下一节,如何与老板处好关系。

posted on 2010-01-30 22:27  水果阿生  阅读(4659)  评论(14编辑  收藏  举报

导航