[分享]解读软件外包

1、对大学生谈软件外包的原因

  中国软件外包行业这几年成为发展最为迅速的行业之一,无论你是在校的大学生,还是即将毕业的同学,都有必要了解这个行业。如果你是软件相关专业的同学,或者毕业后准备从事软件行业,那么更应该关注软件外包这个行业。

  尽管网上已经有很多关于软件外包的信息,但是这些信息很多都是媒体记者的报道,他们只是从旁观者的角度看待软件外包,缺乏一定的深度和实践感受。还有一些来自非软件外包的人士,基于他们主观的理解和推测,认为软件外包是很低级的工作,为软件外包工作泼冷水,影响了对软件外包工作的正确认识,造成了软件外包的“中国式误会”。

  大学生接受了系统的高等教育,具有牢固的知识基础,而且具有极强的可塑性和学习能力,是未来软件外包行业的主力军。但是,他们参加软件外包实际项目的机会和经验毕竟很少,对于软件外包有很多模糊的认识。由于教材的更新需要更长的周期,高校教师如果没有丰富的外包企业经验,很难把软件外包的实际知识传授给学生,因此,外包企业从业人员有必要向这些高校学生交流一些软件外包企业的实际情况。

  那么什么是软件外包?软件为什么要外包?中国软件外包的现状如何?将来做软件外包是否有前途?这些问题可能很多同学不是很清楚,如果今后打算进入这个行业,则从现在开始就需要先了解这些问题的答案。

  笔者具有多年的软件外包公司工作经验,对于软件外包行业一直积极关注,并且积极与国内外同行交流,对软件外包有些自己的体会,借此机会与个位同学进行交流。

  2、软件外包介绍

  软件外包就是软件开发商(简称“发包方”)将软件开发的一部分或者全部,发给别的软件公司(简称“接包方”)去完成。

  我们通常说的中国外包公司很多都是“接包方”,主要从日本和欧美等国承接软件外包项目的技术工作。现在软件行业比较发达的美国、欧洲和日本是最大的“发包方”市场。

  由于软件外包是软件全球性生产方式,所以存在很多关于外包的英文术语。外包的英文单词是“Outsourcing”。站在“发包方”的角度,把“接包方”成为“Vendor(外包服务商)”。站在“接包方”角度,把“发包方”成为“Client(客户)”

  软件外包与其他外包其实没有本质区别,就是双方合作把一个很复杂的、较大的软件项目分工合作,共同做好。其实在其他行业,外包已经实施了很长时间,例如汽车行业,生产汽车的公司(比如一汽集团)他们先设计好汽车的结构,完成主要部件的生产,把很多零件外包给很多厂家加工,然后采用完成整个车辆的安装和制造。

  现在人们很关注软件外包,就是因为外包在软件行业应用的时间还很短,而且软件生产存在很多不可见因素,软件外包的优势和好处,还没有被普遍了解和感受。

  总结一句话,软件外包就是软件生产的分工和合作,主要目标就是生产出好的软件。

  3、软件外包的理由

  同学们可能都听说了,现在印度和中国做软件外包“火得不得了”,越来越多的欧美大型软件公司都把软件外包给印度和中国。为什么会出现这种现象呢?

  要回答这个问题,不能简单的从发包方或者接包方一个方面寻找答案。因为“一个巴掌拍不响”,要实现软件外包,必须双方都有需求、有能力、愿合作才行。而且不能把目光只盯在中国一个国家,还需要从全球软件行业的整体来看待和理解。

  为什么软件外包能发展的这么快呢?主要原因在于通过软件外包,发包方和接包方都获得了可观的利益,非常具有现实意义。说得更简单一点,就是双方都获得了好处,大家是互相合作的伙伴。

  作为发包方,可以获得下列好处:

  ● 降低软件项目成本
● 提高软件质量
● 缩短软件开发周期

  怎么理解软件外包能较低软件项目成本呢?

  大家可能听说过,美国的软件技术人员的工资比中国同等水平的人员要高5到10倍,所以不少美国的软件开发公司都把软件开发和测试的工作,发到中国的软件外包公司来作,可以大幅度的降低成本。对于中国的软件外包公司,他们从国外客户承接外包项目,可以获得很稳定也很好的项目价格,所以很乐意做软件外包服务商(Vendor)。

 说到通过软件外包提高软件质量,可能很多人不理解。举个例子就明白了。

  美国微软(Microsoft)公司是全球最大的软件公司,现在正在开发的Windows Vista新操作系统,需要同时发布多个语言的本地化软件,例如英语、简体中文、繁体中文、日语、韩语、德语、法语、阿拉伯语等。这些语言的本地化版本的翻译、编译、测试,如果全部在微软公司内部完成,那么微软需要招聘大量的精通每种语言和软件技术的工程师,否则语言质量肯定不能保证。如果把这些工作外包给专业的软件本地化外包公司,软件本地化是这些外包公司的强项,所以可以显著的提高软件质量。

  软件外包能缩短软件开发周期的道理很容易理解,如果很复杂的软件开发工作都在一个公司内部完成,那么可能耗费1年甚至几年的时间。例如,如果Microsoft Windows Vista的软件需求分析、框架设计、详细设计、软件编码、软件测试、软件多语言本地化等工作都在Microsoft公司内部实现,那么微软可能需要招聘很多的内部员工,动用很多的项目经理管理这些人员,对这些人员进行技术、语言和流程培训,花费的时间肯定比外包更长。这样的软件即使开发出来了,等到能够发布这些技术可能过时了,其他竞争对手的相似产品肯定已经早已占领了市场。

  现在是网络信息时代,时间就是金钱,速度就是效益,“快鱼吃慢鱼”,实现抢先推出新产品,谁就可能占领更多的市场份额。

  4、做软件外包的前途是啥?

  俗话说:“男怕入错行”,如果你进入了一个没有前途的行业,即使你的能力再高,你的发展空间也很有限。对于,刚刚毕业的大学生,第一份工作非常重要,甚至会影响一生的职业生涯。

  软件外包是全球软件行业新兴的行业,是经济全球化和软件产业全球分工的产物。大家知道全球化已经深入到我们生活的每个方面,我国的改革开放就是顺应了时代潮流。

  对于中国而言,软件外包的发展更是如火如荼,属于典型的IT“朝阳行业”。每年的增长速度都在50%以上,特别对于中国的软件外包公司,他们每年的业务都是100%的速度增长,发展势头不可阻挡。

  从事软件外包工作的好处之一是可以在短期内获得职业提升的机会。现在中国软件外包行业如果具有5年以上的工作经验,就可以成为外包的有经验专才了。很多大学生进入软件外包公司工作2到3年,如果学习能力和交流能力好,可以成为项目经理或者部门经理。

  从事软件外包工作的好处之二是可以学习和培养国际化思维方式和工作方式。前面已经谈到,软件外包是全球合作的工作方式。做软件外包工作,有机会学习先进的软件设计和测试方法,学会管理大型的、多个团队协作的软件项目,要和多个国家和地区的技术人员和管理人员进行英语或者日语交流。这样可以提高语言表达能力,团队交流能力,遵守科学的生产流程,成为熟悉国际市场和技术的职业人士,对于将来的职业发展大有帮助。

  而如果毕业后到一个小的软件公司工作,由于中国的小软件公司很多都是10多个或者几十个人的手工作坊式公司,企业内部缺乏完善的流程,管理混乱,粗放式经营,依靠个别高手的能力,这样的环境很不容易学习到关键技术,而且还会养成随意的、不善交流的独立自我的工作习惯。这种习惯一旦养成对于今后的职业发展是大为不利的。

  因此,大学毕业生投身做软件外包,就是进入了一个发展前途十分可观的“朝阳行业”,通过自身的不断努力,有希望在短期内,成为熟悉国际化行业规则的技术和管理人才,成为职场上非常有竞争力的软件专家。

  5、外包公司是怎么工作的?

  进入软件外包企业后,为了尽快适应新环境,完成日常工作,需要了解软件外包公司是如何安排工作的。

  从外包的内容看,现在大多数中国软件外包公司从事两种内容的工作,第一是软件设计和编码的外包(即开发外包),第二类是软件测试外包。

  从工作的地点看,软件外包公司的员工的工作形式分为两种,第一是被派遣到发包方(客户)的公司进行工作,这种形式称为“On-site外包”。第二式在软件外包公司内部工作,称为“In-house外包”。

  如果同学们到人才招聘网站看看外包公司的招聘广告,经常能看见赴微软,赴IBM从事软件开发或测试的招聘职位。这种形式就是“On-site外包”。举个例子,软件外包公司A招聘了从事软件外包测试的同学小李到微软亚洲工程院从事微软的软件测试,虽然小李在微软的公司工作,但是他隶属于A公司,工作上受到A公司和微软公司的领导,A公司每个月按照A公司的工资标准给小李发工资。一般来说,“On-site外包”的工程师的技术水平要求的更高些。

  在笔者看来,“On-site外包”工作方式只是软件外包的初级形式,如果软件外包的服务模式成熟之后,越来越多的外包将以“In-house外包”的形式实现。下面介绍“In-house外包”的工作方式。

  所有的软件外包公司都是以“项目”的形式,组建项目团队开展外包工作。一个“项目”就是一个有着明确的任务,明确的开始和结束时间,以及明确的质量要求的工作。项目团队就是为了完成一个项目组建的有不同角色的多个人的小组,一般安排一个项目经理,一个或几个组长,多个工程师。

项目经理主要制定项目计划、资源安排、内部交流和外包的客户交流。组长为每个工程师分结和安排具体的任务,跟踪项目进度,解决技术问题。工程师根据组长分配的任务按照进度和质量完成每天的工作,并且报告进展和遇到的问题。

  项目经理负责周期性的向“客户”报告项目进展情况,同时把客户反应的问题和来自客户的最新文件和要求等传达给项目组。

  通常项目经理和组长都是由具有管理和技术经验的员工担任,对于刚刚加入软件外包公司的大学生来说,绝大多数都是从工程师的职位做起的,先经过外包公司的内部培训,然后进入项目组实习,转正之后称为工程师,负责具体的开发或测试工作。

  顺便说说,不少优秀的大学生,专业技术非常好,学习能力由特别强,善于思考和总结,也善于与其他人交流和合作,这样的学生很快就可以在项目团队中脱颖而出,经过一年或者两年可以从普通工程师晋升到测试组长甚至项目经理。我的不少同事就是这样过来的,这是因为软件外包发展得非常快,客户发来的软件外包项目越来越多,项目团队越来越多,每个项目都需要项目经理,所以从事软件外包具有很大的职业发展空间。

  现在总结一下软件外包公司的工作方式:

  ● “On-site外包”或者“In-house外包”方式
● 按照项目团队的方式工作
● 刚进入外包公司的大学生绝大多数要从工程师做起

  6、有哪些好的外包公司?

  对于正在找工作的同学来说,都希望到一个规模较大的公司工作,一般来说,大公司比较规范,待遇也较高,倒闭的风险小。对于软件外包公司来说也是这样子。

  同学们可以猜猜看,全球著名的高端软件外包公司有哪些?据媒体报道,比较公认的全球高端外包公司分别是IBM,HP和EDS,前两家同学们肯定耳熟能详,有些同学可能怀疑IBM,HP能算是软件外包公司吗?它们算不算外包公司不是我说的,反正做软件外包多年的老外都这么人为,人家可是全球知名的外包专家,可不是信口胡说的呀。

  有的同学经常问我,国内有哪些规模较大的外包公司?哪个外包公司最好?我一般都回答不好。为什么呢?因为每个人看问题的角度不同。比如,什么是“规模较大”?是按照正是员工的人数比较呢还是按照每年的总收入确定?什么样的外包公司是“好公司”?给员工发的工资搞就是好公司吗?给员工提供专业的技术培训,而且具有很大的职业发展空间的是否就是“好公司”呢?

  因此,在你问这些问题前,先要搞清楚你心目的好公司应该具有什么样的特征。

  我还是从国内外包公司的普遍特征来给出这个问题的一些参考信息。

  前面已经提到,我国软件外包公司属于新兴的行业,真正从事软件外包的员工如果人数超过1000人在中国就可以算是比较大的外包公司了。据了解国内最大人数的外包公司现在不超过3000人(这里需要说明一点,有些公司一开始是做系统集成的,最近才开始做软件外包业务,虽然他们的全体员工超过5000人,但是真正做软件外包的还不超过3000人)。所以同印度的某些大的软件外包公司项目,我国的软件外包公司规模普遍弱小。印度的软件外包公司超过10000人的很多,有些超过了5万人。所以有些国内的软件外包的朋友,把中国软件外包公司比作“蚂蚁”,把印度外包公司比作“大象”。

  如果同学们打算做软件外包,肯定要问哪个省市的软件外包公司最多?我要告诉大家的是,中国的软件外包在各个省市的发展很不平衡。大连、北京、上海、深圳、苏州、西安等发展的相对快些。其他各个地方今年开始从政府到企业都开始提出要发展软件外包了。

  关于国内软件公司的规模,同学们可以参考我国政府权威部门发布的“中国软件欧美出口工程”试点企业名单。这些公司都具有一定的规模和实力,有些记者把这些公司比喻成“中国外包的国家队”,言外之意其他的外包公司只能算是“地方武装”了。 。

  大连的软件外包发展的最为快速,特别是对日外包做的最为成功,因为大连的政府支持,地理位置靠日本很近,可以找到很多掌握日语的软件技术人员。北京和上海的软件外包发展的时间更长,这两个直辖市凭借经济和政治的影响,吸引了大量的国外客户,人才资源很丰富,所以外包做的很早,很多欧美的大型软件公司都在这两个城市成立的研发中心。

  说到外包公司,很多人首先想到的是中国本土的外包公司,其实出了本土外包公司,国外外包公司在中国的分公司也不可忽视。这些国外外包公司有的进入中国较早,有的最近一两年才在中国落户。他们凭借国外市场的良好客户关系,全球的专业品牌,先进的外包管理技术,丰富的外包经验,加上国际化的工作环境,良好的薪资待遇,吸引着很多大学生前去应聘。

  最后给同学们一点建议,大家在找工作的时候与要单纯追求规模大的外包公司,中小规模的外包公司有可能发展速度更快,有可能提供很大的职业发展空间。关键是通过各种方式综合了解软件外包公司的发展前景、工作环境和个人发展空间,可以通过打听在外包公司工作的同学、朋友、亲戚、老乡,也可以上网看看外界对这家公司的报道和评论。

 7、软件外包公司需要什么样的人?

  刚毕业的同学如果没有考研或出国留学,都有过找工作应聘的经历,不少同学都感觉找到合适的工作单位不是一件容易的事情。有些同学虽然得到了软件外包公司的应聘机会,但是面试后就没有消息了。

  而一些软件外包公司的招聘人员却为找不到合适的人员而苦恼,只好发动一切可以调动的因素,解决企业人才困乏的问题。所以有人把这种现象归纳为:“高校有人没事干,企业有事没人干”。

  这种现象的本质是大部分高校毕业生的综合素质达不到软件外包企业的用人要求。那么软件外包公司需要什么样的人呢?为了能够进入软件外包企业,在校学生应该如何学习和学习什么呢?

  说的简单一点,企业需要的是能马上融入外包项目团队,独立承担实际外包项目任务的人。所以很多企业在招聘启事中都有“x年软件外包相关工作经验”等的硬性指标,而这些都是在校学生欠缺的地方。

  现在一些外包公司都提供兼职岗位(Freelancer),这是在校学生(尤其是即将毕业的学生)参与社会实践的好机会,应该抓住这些实习机会,积累工作经验。另外,如果在这些企业实习期间表现优秀,毕业后有机会成为公司的正式员工。

  软件外包企业对待大学毕业生更看重学生的学习能力。刚毕业的大学生就像一块好的毛坯钢材,材质优良,如果这些学生有较好的主动学习能力,进入企业后经过几个外包项目的实践,积极思考,善于总结,成长很快。企业不欢迎凡事不经过大脑思考,大小问题都要向主管求助的“懒汉”员工。

  企业需要具有职业精神的员工。职业精神包括很多方面的内容,包括对工作的热情投入,积极与团队成员交流,具有合作精神,以企业利益为重。而不欢迎喜欢与企业讨价还价,抱怨企业提供的发展空间不够大的学生。

  由于软件外包服务行业是为客户提供服务的行业,很多外包项目的具体任务一般比较琐碎、枯燥,例如按照客户提供的软件框架进行编码,按照客户提供的测试用例执行软件测试。对于刚刚毕业的学生他们都需要从这些很基础的技术岗位做起,这是对他们职业精神和做事风格的考验。

  软件外包服务的很多工作就像生产流水线上的公司在拧螺丝钉,需要遵守严格的生产流程和一丝不苟的严谨精神。把这些基本工作做好了,才能取得企业的管理人员的信任,才有机会承担更复杂更大责任的工作。

  一些刚毕业的学生经常心高气傲,很鄙视这些繁琐枯燥的工作,感叹埋没他们的才华,这是没有摆正工作心态的表现。外包公司非常欢迎愿意做看似琐碎的工作同时有能力做好的同学。其实做好这些看似琐碎的工作,当好拧螺丝的工人,就是不简单,他的未来就会不平凡。道理很简单:基础打好了,万丈高楼平地起。

  总结起来,外包企业需要具有一定的外包工作经验,主动学习能力强,团队合作精神好,愿意从琐碎的技术工作做起,而且有能力做好“小事”的人。

  海尔公司总裁张瑞敏有句名言说得非常好,对于准备到软件外包公司工作的同学非常有启发,他说:“把一件简单的事做好就是不简单,把每一件平凡的事做好就是不平凡”。

  8、哪些人不适合做软件外包技术人员?

  大千世界,无限精彩。作为软件行业的新领域,软件外包吸引着越来越多的人投入这个行业。每个行业都有行业的行规和准则,并不是任何人都适合从事软件外包行业的。

  哪些人不适合从事软件外包呢?由于本文的读者针对即将毕业的大学生,也适用于准备加入软件外包公司的新人,所以我们可以把问题缩小范围:哪些人不适合做软件外包服务的技术人员?

  回答什么人不能做软件外包,也就是哪些人做不好软件外包,需要先了解软件外包服务行业的工作性质和对人的综合要求。软件外包是为客户提供专业技术服务的行业,而且现在的软件外包企业的客户大都来自国外,客户对外包公司人员要求比较严格。另外,外包公司的工作非常具体和琐碎,需要一丝不苟。

  软件外包行业的这些特点,决定了以下三种类型的人不适合做软件外包的技术人员:

  第一种人是外语不过关的人。

  语言是交流工具。如果客户是欧美客户,英语交流是必不可少的。如果客户是日本公司,对日语要必须熟悉。作为初级的外包技术人员,需要阅读和写作大量的文档和邮件,这些都需要良好的英语能力。很多英语不过关的人员不容易通过外包公司的笔试。对英语的要求,需要达到熟练阅读英文文档,写作专业的测试缺陷报告和日常邮件写作的程度。

  外包公司强调英语的重要性,这是做好工作的基础,因此,请在学校里、公司里利用一切条件自觉学习英语,养成习惯,从阅读理解学习。把英语阅读和写作养成一个习惯,终生受益。

 第二种人是痴迷于钻研软件高深技术的人。

  软件外包服务的很多工作都是非常琐碎的,看上去没有多少高深新技术的事务性工作。例如,对日软件外包的项目,客户已经编制好了程序框架,需要变成人员根据他们的规范编写代码和每天工作进度日志。不少外包编程人员抱怨客户限定的过于严格,没有足够的自我创造的空间。对于软件外包测试人员,最常见的工作就是执行客户编写好的测试用例,报告软件缺陷,很少有机会从软件项目的全局高度制定测试计划,确定测试方案和策略,安排资源和进度。

  如果你对软件编程的各种新技术无限热爱,习惯于一个人无拘无束的从事软件产品的开发,最好不要去软件外包公司,否则很难发挥你的聪明才智。这样的人更适合自己创业开发独立的软件产品,或者到中国中小型软件公司当软件开发工程师。

  第三种人是大事做不来,小事不愿做的人。

  正如前面说过的,很多软件外包工作非常具体和琐碎,需要非常好的做事态度,满足客户各种合理的和不合理的要求。有些同学到软件外包公司工作不久就感到失望了,抱怨工作枯燥,看不到前途。这些都是刚参加不久的人容易产生的错误认识。

  在任何软件外包公司,如果个人的工作能力非常突出,很容易被领导赏识和提升,因为软件外包发展太快了,对人才的需求非常强烈。但是如果不从具体的琐碎的小事做起,并且把小事做好,怎么能证明你可以把大事做好呢。

  任何公司之所以能够生存、发展、壮大,必尤其成功之处,不要觉得你必老板高明很多。比较聪明的同学会放平心态,从学徒学起,把每一件工作都做好了,自己的长处得到发挥,对自己的前途发展大有帮助。

  总结起来,不善于外与交流的,痴迷于钻研软件高新技术,不能踏踏实实工作的人,不适合到软件外包公司从事软件技术工作。

  9、如何通过软件外包公司的面试?

  如何通过软件外包公司的面试?这是很多同学都很关注的问题。面试成功来自于应聘者自身的综合实力和运气。为了提高面试成功率,请按照以下几个方面进行准备。

  (1)制作有吸引力的求职简历

  外包公司的招聘专员每天都会收到几十封甚至上百封求职简历,如果你的简历很平淡,可能很快从招聘专员的眼下溜走,失去了面试的机会。

  什么是有吸引力的简历? 简单地说就是让看到你简历的招聘专员相信你就是他们正在寻找的最合适的人。因此,你的简历要简明扼要,列举出符合他们要求的条件和相应的客观证据。要明白求职简历目的就是获得面试的机会,否则你的水平再高,也不可能进入招聘专员的“法眼”。

  如何写出具有吸引力的简历,现在很多资料都比较详细,但是最重要的一点是实事求是,反对夸张和吹嘘。把你的技能和经验按照招聘职位的要求进行内容和形式的组织即可。

  (2)准备面试

  ● 了解要去面试的公司,可以浏览公司的网站,媒体报道,同学和朋友的介绍。
● 了解公司的行业,规模,现状和发展概况。
● 技术准备,准备应聘职位要求的技能
● 模拟面试场景(包括英语自我介绍和书面答题)
● 准备自我介绍、各种证书、笔试和面试解答问题
● 计划乘车路线和穿着打扮等外表形象

  (3)参加面试

  ● 准时
● 诚实
● 积极
● 友好
● 不必不亢
● 注意细节
● 沉着冷静
● 避免争论
● 小心“陷阱”
● 充分发扬长处
● 展示个人综合能力





本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

你可能感兴趣的:([分享]解读软件外包)