写点什么

还在"创建" 离岸开发中心?你有更好的选择

  • 2016-06-20
  • 本文字数:3665 字

    阅读完需:约 12 分钟

关于离岸开发中心的运用,有几篇文章提到"拥有"比"租赁"更具优势。平心而论,这些文章写得不错,但是我并不赞成创建自己的开发中心要优于外包的观点。我在圣迭戈拥有外包公司以及附属的两个离岸开发中心,说“租赁”更好有屁股决定脑袋的嫌疑,所以澄清一下,这么说并非出于推销服务的目的,实在是因为成立离岸开发中心比想象中要困难。

将软件开发工作转移到海外,并不意味着一定要创建自己的开发中心。一般来说,在海外寻求四五十人规模的开发团队,务实的做法是花一二年时间去调研,外包然后维护,只需要按照流程不出纰漏就好了。但是对于那些要从头创建离岸团队的人来说,特别需要注意:这是在创建一个跨国公司,必然要碰到与之相关的法律,税收,基础设施等各种问题。

多数情况下,针对不同规模的企业,合适的外包伙伴意味着更少的风险、更高的效率和质量,也可以节省时间和配套设施。这可以理解为另一种形式的“云”,为什么要单独建立自己的电塔呢?为什么为了开汽车而去发掘石油呢?用现有的设施就好了!接下来我会分别说明外包开发团队相较于自己创建团队的几项优势。

投资

使用海外开发测试人员以及削减成本时,业内有“garbage in, garbage out”的说法。我们向其他大陆的开发中心投入资源(“垃圾”),结果吃惊地发现出来的并不是定制化的产品。或者我们雇佣了当地的优秀开发人员,沾沾自喜之余,却发现六个月后,他通过外国人工作签证离职去了微软。

在外包开发中,作为客户和企业我都有切身的体验。有一些客户因为商务联系、现有基础设施以及独特的文化背景,建立自己的开发中心相对容易。但是这并不典型,实际情况是:

  • 许多企业没有很强的海外联系;
  • 许多企业无力在海外创建品牌,基础设施以及进行人力资源管理,尤其是那些小公司或创业公司;
  • 许多企业试图减少管理相关的工作,将精力集中在代码质量、app、产品和性能上;
  • 多数企业运营海外设施时会付出额外的管理费用,而且维护这些设施复杂、昂贵、消耗时间;
  • 多数企业想避免复杂、风险和节省时间,但是如果创建自己的开发中心的话,这些是无法避免的。

创建自己的海外开发中心需要格外关注以上提及的五个方面。解决这些问题困难、琐碎并且花费不菲。我感同身受,因为这就是我的日常工作:提供人力给创业公司和中小企业,帮助他们解决宽带、人力、质量之类的问题。

我有两个离岸开发中心,并成立了公司去管理它们,员工们(超过 130 人)通过不同方式当天向我汇报。我们是个完整的公司,有专业的团队,业务扩展到了圣迭戈、阿曼和开罗。

客户可能在技能和人力上存在不足,我们将自己的团队集成进去,提升他们的能力。需要指出的是,我们并不是二流的团队,或者处于配合地位。我们是一流的,员工的技能和产出达到甚至超出客户的最好水平。

后面我会详细的解释如何吸引和留住这些高水平的员工(其实并不容易)。

但是我更想强调的是,客户应该利用海外人才的优势而不用承担背后的负担。除非他们本身是这方面的专家,在海外拥有公司,不然创建开发中心的劣势是全方位的。通过与我们的合作,客户可以减少许多麻烦。

基础设施

上个月,我们位于开罗的办公罗收到一笔物业账单,250000 美元。显然,物业公司认为我们钱没有给够。谈判过程开始后,出现了律师、文件、政治在内的各种问题。我是怎么解决的呢?跟创建海外开发中心碰到的其他问题一样,委托给了一个顶级的人力资源和法律团队,该团队熟谙竞争对手、规则以及业务。整个过程对我们而言很痛苦,却是开展业务不得不考虑的因素。客户感觉不到这些,他们接触的是我们的人力、高质量的代码、优秀的团队协作以及靠谱的承诺。若是硅谷的创业公司,突然遇到这类问题,可能就认栽了。

还有个例子。我的朋友,开了很多公司,有一家在墨西哥,曾经碰到了很有意思的问题。在边境南端,他的公司因为涉嫌故意不向“住户”提供足够的停车位而被开出 120 万美元的罚单。但问题的关键是,该项业务是处理 50 英亩的墓地,墓地也需要“停车位”。这是要丧尸出笼么?最终我的朋友通过当地的合作伙伴将罚款降低 4000 美元(不得不承认这很聪明)。这类问题除了带来潜在的风险外,也很容易分散注意力,以及可能的工期延误。

总体来说,国际规则、承诺、税法以及商业法,往轻了说是非常复杂,往重了说关系业务的生存。

品牌

(在建立外包团队时)不能指望随便走进当地的酒吧,就能找到合适的优秀工程师。首先,你的品牌得根植于当地的环境和文化,取得潜在员工的信任。当然,如果你自己熟悉或者来自当地,这个过程会简单些。然而,大部分人都不具备这个条件,即便具备了(比方说我),仍然有很长的路要走。建立品牌花费巨大,不仅包括广告和时间成本,还有雇佣不到合适员工的机会成本。

我的第一个外包开发中心设立于约旦安曼,我在当地有深厚的人脉,仍然很难招聘和留住合适的员工。

我的第二个开发中心设立于埃及开罗,开罗和安曼差不多隔了圣迭戈和旧金山的距离。虽然我自己来自并且活跃于这个地区,在成立开发中心亮出招牌时,仍然没有顶级的工程师应聘,一个也没有,只有一些差强人意的候选人。你可能会问为什么?其实在一些欠发达的经济体,稳定的工作机会非常有限,有家室拖累的开发人员很少愿意跳槽,除非确定新的工作机会稳定、有合理的经济回报以及上升预期。发展中国家的雇员们见惯了“明星”企业带着资金和愿景过来,然后又开始打退堂鼓的现象,如此这般,他们也变得精明和谨慎起来。,我们需要时间和资源,来建立能够吸引顶级工程师的招聘品牌,从而满足不同层次客户的需求。

建立招聘品牌非常重要,但是既不容易也不便宜。大多数情况下,最开始你都不知道目标国家的位置和地理,也没有时间和人手去布置展位或者去大会演讲,只好干等一到两年去获取人力市场的信任。

花费不仅仅是在市场推广方面,也包括基础设施的投入。举个例子,在开罗创建开发中心的时候,我估计一层楼就可以装下所有员工,但是我仍然租用了整个四层办公楼。我这么做只不过是为了向过来面试的候选人展示留在当地的决心,以及公司未来的扩展规模。(按照我的经验和务实的估计,即便在像班加罗尔这样的地方开设外包研发中心,花一年时间去招聘,最终只能招聘到四五人)。

吸引和留住人才

海外开发团队成功的关键是能够吸引和留住人才。理解当地的文化,尊重当地团队,用同样标准去运营海外团队,以及为工程师提供激励。

针对最后一项工程师激励。提升产品质量,需要多样化的开发测试团队。有人负责解决棘手的问题,有人负责重构和解决错误,有人负责选用合适的协议和文档规范,诸如此类的。与之对应,有人想要物质奖励,有人想要丰厚的年终奖金,额外一周的假期,或者商务度假性质的旅行等等。你得明白,没有一揽子的解决方案,不能依靠“棒棒糖”来打造伟大的团队。但是如果将团队管理委托给第三方,并且合作方靠谱的话,就可以节省很多精力,何乐而不为呢?

作为个体和团队成员,员工需要关心和呵护。这意味着,运营海外开发团队时,也需要有配套的人力资源管理、福利、财务、法律、设施。在硅谷,创业公司或者 SMB 中流行将支持性的工作委托给专业公司或者直接外包,那么在使用海外开发中心时就更没有必要亲自创建运营了。

机构,外包,第三方

并非所有的企业或者合作伙伴使用同样的方式管理员工、团队以及客户关系。多数企业会指定项目经理。我们提供的开发团队,会完全集成到客户的团队,具体的工作方式可以参见另一篇文章

另一种选择

没有必要从头创建海外开发中心,最好避免这种情况。然而,选择合适的海外开发合作伙伴也很重要。 不谦虚地讲,我自己的公司就不错。

举个例子,有个老客户,曾经是某大型电子商务公司技术部门负责人,他一直有个不错的想法,并为此离了职去创业,工程相关的工作包括最新的app 和插件。他第一时间找到我们,相信我们能够帮他组建团队、实现他的想法,虽然这次已不是原来电商公司的团队。

我们带他飞到埃及,参观我们的开发中心,面见团队成员。在那里他待了两个星期,之后除了发邮件感谢我们的款待外,还建议我们为他组建一个团队。他亲手挑选了那些自我驱动、勤奋、有想法的团队成员,接下来就不用再为亲手创建和维护海外开发中心而头痛。

不可承受之失败

百分之九十的创业公司会失败,创业者必须集中精力让自己的产品与众不同并且不犯错误。对大多数创业公司而言,从头创建海外开发中心是作死的行为。到时候,你一定会被团队选择、文化差异、沟通、妥协、规则搞得喘不过气来,这些本来是可以避免的。

就我自己而言,宁愿选择一家信得过的公司外包。这也是我们公司努力的方向。

关于作者

Yousef Awad毕业于加州大学圣迭戈分校,获信息系统科学学士学位,在可定制软件开发行业浸淫 20 多年,拥有编程、数据库管理和项目管理等领域丰富的经验。Yousef 1997 年加入 Integran 公司,Integrant 专注于定制化的软件开发,为客户提供外包团队、IT 项目管理服务等。Integrant 在阿曼、约旦和埃及开罗拥有开发中心,雇佣了全职员工 130 名。工作之外,Yousef 投入了大量的精力向青少年普及编程知识,让他们获得来自工业界的编程指导。

查看英文原文: Build Your Own Offshore Development Team - or Not?

2016-06-20 19:341555

评论

发布
暂无评论
发现更多内容

前端智能化的加速时刻:华为机器视觉的创新方程式

脑极体

区块链是一个有去无返的奇幻旅程

CECBC

区块链

甲方日常2

句子

工作 随笔杂谈 日常

Android |《看完不忘系列》之dagger

哈利迪

android

零代码简史

明道云

SaaS

面经手册 · 第7篇《ArrayList也这么多知识?一个指定位置插入就把谢飞机面晕了!》

小傅哥

Java 数据结构 面试 小傅哥 ArrayList

温故知新——Spring AOP

牛初九

spring aop ioc

《搞定1》读书笔记

超超不会飞

Apache Pulsar 2.6.1 版本正式发布:2.6.0 功能增强版,新增 OAuth2 支持

Apache Pulsar

消息队列 Apache Pulsar 消息系统 消息中间件

【Elasticsearch 技术分享】—— ES 查询检索数据的过程,是什么样子的?

程序员小航

Java elasticsearch 搜索 ES Lucene Elastic Search

第11周总结+作业

林毋梦

Redis系列(一):Redis简介及环境安装

简爱W

Flink-键值分区状态-10

小知识点

scala 大数据 flink

合约跟单交易系统开发,交易所一键跟单模式搭建

13530558032

OPPO互联网DevSecOps实践

OPPO安全

DevOps 安全

Java | 你知道快速搭建一个spring boot项目该怎么做吗?

简爱W

聊聊微服务

炜娓道来程序人生

架构 微服务 SOA

Redis系列(二):Redis的5种数据结构及其常用命令

简爱W

为什么中国出了这么多厉害的互联网公司,但没有自己设计过编程语言?

代码制造者

编程语言 低代码 企业信息化 零代码 编程开发

Woman、man、camera、TV:如何做一个完整的深度学习应用

LeanCloud

学习 程序员 互联网 容器 LeanCloud

月度工作汇报,为什么要全球直播?

赵新龙

TGO鲲鹏会 技术社区 开源社区

面试官再问你Http请求过程,怼回去!

架构师修行之路

HTTP TCP/IP

易观方舟Argo+CRM | 让企业数据发挥更大价值

易观大数据

解决数据指数级增长挑战,英特尔如何又快又好提供领导力产品?

最新动态

迎接物联网时代,区块链大有可为

CECBC

云计算 大数据 区块链技术

有选择才会有困惑

escray

学习 面试

Docker 镜像构建之 Dockerfile

哈喽沃德先生

Docker 容器 微服务

科普小知识:区块链与分布式系统

CECBC

区块链 分布式

使用 K8s 进行作业调度实战分享

后端进阶

学习 Kubernetes 容器 k8s 调度式分布

Luajit字节码分析之KSTR

whosemario

lua

难以遏制的人因差错-Go的日志工具之痛

田晓亮

微服务 Go 语言

还在"创建" 离岸开发中心?你有更好的选择_文化 & 方法_Yousef Awad_InfoQ精选文章