本文共 1402 字,大约阅读时间需要 4 分钟。
在软件研发部门,软件人才的培养一直是一个很头痛的问题。在一个项目团队中,我们把软件人员分成三类:一类是技术高手,这部分人员大约占整个团队的10-20%,一类是技术骨干,大约占40%-60%,第三类是技术菜鸟,大约占20-40%。技术高手对项目的贡献大约到40-70%,技术骨干的贡献度是30-60%,技术菜鸟的贡献度差不多是<0。
我们都说软件人员都是在项目中成长的,做项目就是在积累经验。项目经验越多,在项目中承担的角色越重,说明你的技术能力越强。这就形成了我们面试开发人员两个重要的内容,项目经历和项目角色。通过面谈,我们可以基本了解他们的经验和能力。而这不是笔试可以做到的。
一个软件开发人员的成长最好的方式是经历项目,但项目经验本身也是多种多样的,有好的有坏的。也不是所有的开发人员可以经过项目开发就能成长起来的。我们看看他们是怎样成长的。
现在有一个新的项目,是基于.net框架开发一个化妆品的电子商务平台,这个项目需要10个开发人员,两个月的开发时间。首先我们已经指定了一个项目经理王涛。王涛是一个有5年开发经验的资深开发工程师,有两年的带项目的经验。公司对王涛的能力比较放心,所以指定他作为这个项目的项目经理。我们看看项目经理王涛所面临的问题。
首先是项目团队的组建。王涛当然希望所有的开发人员都是经验丰富的中高级开发人员,但是公司不可能给他这样的配置。在三月份的时候,一些有经验的开发人员跳槽去了,公司也招进来一些有经验和没经验的人,这样,经过种种波折,项目组终于组建完成,项目组的最后组成如下:
项目经理:1人
系统架构师:1人(还身兼其他职责)
高级开发工程师:2人(其中新进公司1人,3-5年工作经验)
开发工程师:4人(其中新进公司1人,1-2年工作经验)
新兵:2人(全部为新进公司)
合计:10人。
至此,我们建立了一个项目组的基本框架。在下面的我们将一步步分析不同角色在项目组中的诉求,责任,成长。
王涛作为项目经理,他首要的目标就是如果完成按时完成并能通过客户的验收。手上的资源已经确定,就这么10个人,有技术强人也有新兵蛋子,如何合理分配任务就是他现在要做的事。
一个项目可以分为需求、设计、开发、测试这么几个阶段,每个阶段对人员素质的要求是完全不一样的。在需求阶段,需要的是有经验的人,能够很好的把握用户需求,并能够以合适的方式表达出来。这个阶段人并不需要太多,但素质要求很高。在现有的团队中,只有项目经理自己和架构师具备这种能力。但只凭这两个人显然是完不成的,他们必须要有助手。王涛考虑,这个助手可以从有经验的高级开发工程师和开发工程师中挑选。这样就可以组成这么一个需求小组:
组长:项目经理 王涛
组员:系统架构师,李帅
两名开发工程师。
不能把所有的工程师都放进来,因为还有别的事情要做。对,是系统架构和一些可以预知的技术难点的摸索。如果是有些积累的公司,一般在架构上都会有一些成熟的东西,但针对新的项目以及目前技术的进步,可能会做一些调整。这些问题在进入开发阶段都必须解决。这种事情一般都是由系统架构师来领导,并以两名技术能力突出的开发工程师为骨干。那么这样就形成一个技术组:
组长:系统架构师 李帅
高级开发工程师,1名
开发工程师,1名。
进行到这里,我们基本上已经搭起了一个软件项目开发团队,我们将拭目以待项目经理王涛是如何领导这个团队来完成他的使命的。
转载地址:http://mrqzx.baihongyu.com/