“软件企业属于加工型,可以视作劳动密集型行业。它们以精确的专业化分工来实现高质量大规模的软件生产。”上海浦东软件园有限公司的人力资源经理刘红对记者说。
在比较成熟的软件加工企业中,人员就象流水线上的工人一样,被严格限定在自己的工作范围内。一般而言,这些企业采取“程序员———高级程序员———系统分析员———项目经理”这样精确的角色定位,根据不同层级把各类人员嵌入工业化生产的流水线中。
程序员需求最多
“毫无疑问,我们需求量最大的肯定是生产一线的程序员。”在甜甜的印度薰香和印度传统绘画所营造的异国情调中,萨帝扬亚太区高级副总裁阿革瓦(Ag?鄄garwal)回答了记者的提问。“就萨蒂扬而言,一线程序员的数量约占整个公司的30%。”他告诉记者,项目经理也是萨蒂扬目前急需的人才,“因为萨蒂扬在中国只有两年多时间,我们招聘来的程序员在这个时间内无法成为项目经理,因为从程序员到项目经理一般需要10年的时间。所以,我们只能通过总公司选派或者外部招聘的方式来解决这类人才的短缺。”
某软件技术服务(上海)有限公司主管人力资源的副总裁刘女士表示了同样的观点,该软件技术服务公司专门从事金融机构软件的开发与生产。“在招聘时,程序员与项目经理的确比较难找———应届毕业生缺乏编程经验,有几年编程经验的人员可能不安于做程序员,而能够独挡一面的项目经理更是一将难求。”
因此,程序员与项目经理就成为这些企业需求的共同目标。“这与企业的软件人才结构有关,国内传统的软件企业的人才结构是橄榄型的,两头小,中间大。”刘红说,“而那些外来和尚———比如印度来的软件工厂,其人才结构则是金字塔型,所以肯定会面临人才的短缺,基础的程序员缺口较大。”
要求到底如何
对大多数软件公司而言,相对学历,更看重的是经验,愿意为那些有经验的程序员付出更多的薪水。同时,也非常注重语言能力,语言能力优秀是获取更高薪水的重要筹码。
“萨帝扬大多数程序员是具有4年以上编程经验的大学本科生,仅有8%是毫无经验的大学毕业生。”阿革瓦介绍说,“人员招聘基本按这个标准。不过在中国,没有经验的本科毕业生比例可能略高,因为他们的稳定性稍微好一些。”“而那些相对高级的人员,如项目经理,还需具备敏锐的市场眼光,有创意的头脑。同时,要想保持金字塔上端的身份,必须不断学习,永不妥协。成为项目经理可能是一个刚毕业的新手的目标。”
其实,软件产品是针对某一类应用的需要,通过一定的开发工具,面对某些特定的运行平台而开发出来的。因此,从总体上说,一个好的软件工程师必须具备如下几方面的知识:
1、通用的软件工程知识。应懂得从产品需求书、项目规划、软件系统框架设计,到具体界面设计、编程、测试等一系列步骤,知道哪一步应做什么。
2、软件应用领域的专业知识。举例说,如果一个软件是为银行业所用的,那么懂得相关银行业务就会对软件的设计和修改有决定性作用。而如果设计的是java.net程序包,就一定要了解其他程序员怎样使用网络界面最方便,因为java.net是针对这一群“用户”的通用界面。
3、具体软件工具和环境的知识。在做一个软件产品前,要选定软件的应用平台、操作系统,以及编程所用的程序设计语言和开发系统。用Java开发一个运行在Solaris服务器上的企业级应用软件与用C++编写Windows XP上的个人应用软件,对工程师的专业知识结构有很不一样的要求。譬如,如何利用Java虚拟机的特点提高程序效率,如何利用CVS的特点更有效地管理开发,如果是开源软件,如何与开源社区协调等等,问题都因项目而不同。
上面这些知识大部分在软件班的课堂上学不到。只有通过大量实践,才有可能成为软件开发的专家。
酬究竟几何
在国内,软件人才属于“薪情”不错的群体,一位有几年工作经验的软件工程师,月薪心理期望值几乎都会达到1万元人民币。那么在软件工厂里,软件工程师的收入又是如何呢?“在印度,一线程序员收入约为年薪4万元人民币。如果他们勤奋努力,一般10年后年薪可达10万元人民币”,阿革瓦介绍说,“当然,在上海,开发中心人员报酬将参照中国的工资标准,也就是说,可能比印度稍高一些。在印度,年薪在12-15万元人民币的人最多只有20%。他们是金字塔上端的人。”
热门需求一览
上海浦东软件园是经国家计委批准、由国家信息产业部和上海市人民政府共同组建、国家计委和信息产业部授牌的国家软件产业基地。目前集中软件企业238家,从业人员近9000人。从这些企业的需求情况看,热门需求集中在四类。
第一类 能够用外语直接交流的程序员
对程序员的外语要求主要集中在英语和日语。虽然绝大多数软件工程师持有英语四、六级证书,但从实际情况看,并不能满足企业的需求以及岗位要求,因为他们无法用外语进行交流。园区许多入驻的外资企业,均要求软件工程师能有熟练的英语沟通能力,以便能正确领会外籍老板以及项目经理布置的任务,及时反馈工作情况。
日资企业在园区内也占一定比重,但大多数编程人员的日语停留在初级水平,对工作会产生不同程度的影响。因此,有些公司规定:员工若提高日语水平等级可给予一定奖金。尽管有激励政策,可日语能力滞后的局面还是无法改观。
岗位基本要求:
1、本科以及以上学历,相关专业毕业;
2、主要编程语言:JAVA,C++等,主要操作系统:LINUX,UNIX等;
3、2-3年相关工作经验;
4、能承担较强的工作压力,可以到外地或者国外出差;
5、适应能力强,有较强的团队合作精神。
目前市场平均薪酬:3000—5000元左右/月。
第二类 项目经理/主管
项目经理既要有丰富的专业技术知识和技能,又要有一定的管理经验。“技术”和“管理”相辅相成,缺一不可。园区内很多企业的HR认为,在招聘中经常会碰到“鱼和熊掌不能兼得”的事。如一个希望从事项目经理的应聘者不是专业技术没达到一定高度,就是技术可以满足要求,但管理思路上却没有一点头绪。企业很难找到位适其才的人。不是做过3年程序员,读过项目管理课程的软件工程师都可以成为项目经理。
岗位基本要求:
1、本科以及以上学历,相关专业毕业;
2、有3—5年编程经验,1—2年的管理经验;
3、有良好的团队合作精神和一定的协调能力;
4、有较强的中英文沟通能力。
目前市场平均薪酬:5000—1万元左右/月。
第三类 软件测试工程师
软件产品质量是关键。因此软件测试越来越引起软件企业的重视,成为软件产业一个必不可少的环节。软件测试工程师的甄选也就成为人事经理非常重视的一件事情。
随着软件产业的不断发展,软件开发的过程也日趋规范。企业认识到自己以及产品本身要被市场接受,就必须融入国际承认的质量认证体系。因此,熟悉CMM(软件成熟度模型)以及ISO9000质量认证体系的人才变得炙手可热。
岗位基本要求:
1、本科以及以上学历,相关专业毕业;
2、2年以上软件产品测试领域的工作经验;
3、理解软件测试的方法及其过程,并知晓软件开发过程;
4、能够独立撰写测试计划书,并完成测试任务,提交测试报告;
5、熟悉错误跟踪软件,并能建立及维护错误跟踪系统;
6、敢于承担责任,工作态度认真,具有良好的团队合作精神。
目前市场平均薪酬:5000—7000元左右/月。
第四类 软件支持工程师
除了具有丰富的编程经验以外,还需要有一定的行业背景,以及和客户良好的沟通能力。技术支持工程师首先要听取客户的需求、分析、提案以及企划等等,然后进行设计、编程、开发。这需要有很强的专业背景以及行业灵敏度,能够快速领会客户要求,并结合目前市场整体状况,使用各种工具进行开发。
现实中,能兼备以上这些素质的人非常难觅。所以,软件编程人员不要小看自己的编程工作,这其实是一个经验积累的过程,也不能忽略对行业的关注。另外,与客户沟通能力的培养也是必不可少。
岗位基本要求:
1、本科以及以上学历,相关专业毕业;
2、有3—5年编程经验;
3、熟悉各种编程语言、应用软件、操作系统等等的使用;
4、有相关行业的背景;
5、有良好的沟通能力。
目前市场平均薪酬:5000—6000元左右/月。
软件人才的培养手段
根据产业分析,到2005年,上海软件业至少需要10万名软件人才,方能满足产业发展的需要,可现在离这个数字还有一段距离。目前国内解决软件人才短缺的方法大致有两方面:
一是软件人员的培训。全国35所软件学院2003年秋季都已开始招生,有读硕士、博士的,也有读本科或第二学士学位的。有的班面向“蓝领”人才,即软件工程师;也有的班面向“白领”或“高级”人才,即软件结构设计师或经理级的管理人才。同时,许多脱产的或业余的软件培训班也应运而生,以满足希望转行的技术人员之需要。
二是软件企业的培训。更具体地说,就是通过CMM考试认证,来提高企业在开发软件方面的素质。一年前,通过CMM3级的企业还屈指可数。目前一些企业已达到CMM4级,而最近东软软件已则率先达到了CMM5级的认证。(程亮)
来源:市场报
|