外包公司的成长史

    感觉csdn里比较鄙视做外包的,因为没啥技术含量。招募的也全是应届毕业生,一个工作2、3年的team leader带着一帮fresh用不停的加班了完成大量的代码工作。让我这个曾经也是fresh的人来谈谈我毕业之后两年在外包公司的生活。

    首先,谈谈在我所在外包公司对人才的要求。

    第一个方面就是语言。我想这是必然的,目前中国的外包市场主要是日本和欧美,必然的语言就成为了工作的一个重要标准。就我所工作的外包公司而言,对外就宣称全英文办公。虽然在日常工作中,全英文办公基本是不可能实现的,现在应届毕业生有多少个能够有英语讲话的。但是不可否认,这种在办公,文档,电话会议中造就的英语环境对所有人是很有帮助的。只要用心,必然是有收获的。

    第二个方面就是职业化。外包公司不是国企,不是研发机构,不是做产品的。所以每个外包项目都是有deadline的,这也导致了所有的项目组成员必须follow最初的project plan,而且从requirement analysis, design, coding, testing以及后期维护,都需要大量的文档。我有时候曾怀疑为什么我们那外包公司每年都是招聘很多应届毕业生,而不招一些熟练的代码人员。当然这有成本的考虑,但是另一方面,应届毕业生比较有可塑性。试想一个已经开发代码多年的developer,但从来没有培训过coding style,从来没有写过E文的文档,从来没有写过Unit test,甚至不知道瀑布开发,只是bigboom的人,如何让他融入这样一个有严格process的团队。有的人会说,外包团队只是根据别人的design来implement,没有技术含量,甚至别人的design已经细化到了interface级别或者class级别。或者有个别的大项目的确如此,但这有什么不好呢?作为一个新手,别说是design pattern了,就算是最基本的三层架构,OO原则,也不一定能理解之中的精髓。学习技术最好的方式就是看源码,现在有这样一个活生生的源码架构,你不抓紧学习,还想干什么呢?刚开始工作能够进入一个非常讲究professional的公司不得不说是我的运气。

    第三个方面是需求。外包公司不是帮自己做项目,而是帮别人开发。如果别人要什么都不知道,怎么可能完成这个项目。这里我不讨论如何做需求分析,这可能是咨询公司的事,也可以是PM,consultant,反正是high-level的人需要考虑的(具体看参考阿朱的blog)。所以你可以完全不关心需求,错!虽然你是底层的代码员工,但是我认为:

  1. 首先,你应该是最了解你所开发的模块需求的人。你开发的模块,不能你调用的上层开发着需要什么API,你就开放给他,你要了解为什么他要这样调,这样调用合不合理,能不能重用以前的API,需不需要重构,需不需要可扩展性。对你的下端模块,你要明确的知道你这个模块需要提供哪些功能,需要让下端模块给你那些支持。如果你现在不想清楚,最后集成时,上端要调你的API,你却连下端的API都没有,而开发下端的人可能已经开始忙于其他模块或者其他项目了,最后项目应你而delay。
  2. 其次,你应该是除了QA以外最熟悉这个项目或者子系统的人。当然我这里提高了对QA的要求,一般的QA都做不到这一点,整天的mockey test不能作为一个合格的QA的。你作为项目的一员,要求你了解项目是必然的。当项目需要做维护,需要二次开发,以前的项目成员可能已经闪掉大半了,这个时候需要你挺身而出,你有准备么?

    第四个方面是加班。OK,加班是不能不提的。加班重要么?当然重要,但是不会是最重要的。用一个人能否加班来决定一个人的能力,是不公平的。这里加班应该是一种责任心,需要你的时候,你能否为项目付出,你个人的利益和项目的成功哪个更重要一点。一个人的工作要拿60分,就像考试拿60分比较简单,大多数都能做到,但是100分呢,总是个别的。你为此准备好了吗?有几个人能对自己的代码百分之百的满意呢?回头看看我三个月之前的代码,我都觉得这不是我自己写的。

 

    写下这些留给那些准备进外包公司,刚刚进外包公司,还未下决心的外包公司的人,路有你决定,只是你准备好了吗?

    下次我写下一个好的外包公司需要那么素质。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值