失衡的中国软件职业结构

发表于:2008-02-03来源:作者:点击数: 标签:软件职业结构
IT168发布的《中国IT应用技术蓝皮书2006-2007》,其中关于软件人才的部分,以独特的视角,从职业结构方面进行了统计分析。笔者尝试按照传统 软件工程 理论的思想去解读这些数据,结果发现中国软件行业的职业结构是严重失衡的。 1. 独特的视角:职业结构 近日
 IT168发布的《中国IT应用技术蓝皮书2006-2007》,其中关于软件人才的部分,以独特的视角,从职业结构方面进行了统计分析。笔者尝试按照传统软件工程理论的思想去解读这些数据,结果发现中国软件行业的职业结构是严重失衡的。

  1. 独特的视角:职业结构

  近日IT168发布了《中国IT应用技术蓝皮书2006-2007》(以下简称蓝皮书),全书凡二十多万字,计两百六十余页,论及人才、应用以及过程等软件开发行业的方方面面,又囊括了Java、.net、数据库、企业应用和中间件等主流软件开发技术,更兼附录了十几篇优秀论文,内容不可谓不详实。热心的编辑给我发来文档链接,赶紧下载,拜读之后,获益匪浅,感慨良多。不敢藏拙,试与读者分享之。

  蓝皮书的第二章《中国IT技术开发人才现状分析》是关于软件人才的,其中第3节《职业结构》中,将接受调查的开发人员按职责进行了分类,并给出了各个职业类型所占的比例。鉴于统计数据来自近万份样本,而且接受调查的都是真正的软件从业人员,因此,可信度颇高。说实话,笔者在IT行业滥竽充数十多年,虽然时时关注中国软件行业的发展,却未尝留意过开发人员的职业分类,蓝皮书的这一章另辟蹊径,不落俗套,读来颇有新意,给了关心中国软件行业的人们,一个不同于官样文章的视角。

  中国软件行业风风雨雨二十年,笔者有幸经历了这二十年中的大部分时光,目睹了软件行业的几番起落兴衰,其中酸甜苦辣,不能尽言。那些人,那些事,有如过眼云烟,业已随风飘去,唯有存诸于中国软件行业的种种弊端,始终耿耿于心,无法释怀。从后面的分析可以看出,蓝皮书给出的这个独特视角,将中国软件行业的某些弊端暴露无遗。

  开发人员职责的划分,随着软件应用范围的扩大,越来越呈现多样化,体现了分工朝着精细化方向发展的趋势。例如,网页设计人员,在传统的软件工程理论中,并不存在这样一个角色,不过,由于互联网的普及和互联网应用的大量涌现,网页设计人员已经成为软件项目中不可或缺的角色。

  角色的增加,给开发人员职业结构的分类带来了一定的困难,不同的软件工程理论,其分类标准也不尽相同。虽然现在是软件工程理论百花齐放的年代,不过,上个世纪60年代由IBM公司倡导的传统软件工程理论,依然根深蒂固,不管软件开发的生命周期如何突发变异,经典的瀑布模型还是不可动摇的基础。因此,我们不妨按照传统的软件开发过程理论,将开发人员的职责范围划分为四种,即项目经理、系统分析员、高级程序员和程序员。结合技术蓝皮书的统计数据,按照上述职责分类方法,可以对开发人员职业结构的统计数据进行归类合并。

  2. 项目经理和系统分析员

  先从项目经理开始。也许项目经理这个角色,是软件工程理论中争议最少的,关于项目经理的职责,各种理论惊人地一致,那就是想方设法在规定的工期和成本预算内,以可接受的质量完成项目的任务,具体到软件项目,那就是实现软件的功能。在项目管理理论中,项目经理一方面有着极大的权力,可以决定项目开发人员的升降去留。

  另一方面,项目经理又是各种矛盾的焦点,被称为项目的“受气包”,老板的压力、客户的刁难、开发人员的抵触以及来自同级的掣肘,项目经理都必须无条件地承担、接受、适应和化解,在错综复杂的项目环境中,心惊胆颤,如履薄冰,不断寻找最佳的平衡点,谁也不敢得罪,和公公婆婆眼皮子底下逆来顺受的小媳妇,很有一比。

  项目经理这个职业,在调查中所占比例为11.7%。

  接着是系统分析员。系统分析员是客户和程序员之间的一座桥梁,起着沟通双方的作用。系统分析员必须具有两方面的知识,一是业务方面的,二是计算机方面的。客户不懂计算机,不知道如何用计算机术语表达自己的业务需求;程序员不懂业务,不知道代码和业务需求之间有什么联系;只有系统分析员,既明白客户的业务需求,也理解程序员的计算机术语,因此,他通过需求调研获取用户需求,然后编写需求规格说明书,告诉程序员做什么。

原文转自:http://www.ltesting.net