写点什么

沃尔玛尝到了推行 InnerSource 的甜头

  • 2016-08-04
  • 本文字数:1929 字

    阅读完需:约 6 分钟

自从 CTO Jeremy King 上台后,沃尔玛对开发团队按 InnerSource 的方式进行了重新整合。经过磨合期,大家已经认可了这种新的开发方式,而且 InnerSource 带来的各种好处开始不断显现出来。最近,Clint Boulton 对沃尔玛采用 InnerSource 的情况进行了进一步报道

InnerSource 仅仅是一个名称, 它是一种在企业内部应用开源软件实践的软件开发方法,也叫 Enterprise Source 或 Internal Open Source。InnerSource 实际上就是在公司内部,在各个不同开发团队之间以开源方式开发软件的工作方法。它可以带来的好处包括更快提交项目、团队之间合作更顺畅、自主创新、高质量的代码和文档等。已经有许多大公司在内部实施了 InnerSource,包括 Autodesk、BLoomberg、Bosch、Capital One、 PayPal 和 SanDisk 等。InnerSource 对于那些有着上千人规模开发团队的公司尤为重要。

身为沃尔玛 CTO 和 WalmartLabs 负责人,Jeremy King 认为:

我们对这种内部开源的模式实践得越多,我们的组织就越有弹性,我们也就能越快地将代码上线为用户所用。
建议你们也采用开源软件和开发方式,因为这样可以开发更快、成本更低和质量更好,但我们也希望你们也能为开源做出贡献,因为这样对整个社区是有好处的。

沃尔玛实施 InnerSource 采用的是企业版 GitHub,用法和免费公开版大致相同,唯一的关键不同是它是部署在企业内部、外部不可访问的,因为有一些关键算法还是不能公开的。

自从 King 从 2011 年由 eBay 跳槽过来之后,沃尔玛就加速了对开源的推进。King 说他们已经把许多传统软件换成了开源产品,比如 Cassandra 之类的 NoSQL,还用 Kafka 替换了消息总线。也引入了许多开源开发工具,如 Node.js 和服务器端 JavaScript 环境等,并用 OpenStack 重构了它的电子商务平台。

沃尔玛的研发团队有一千多人,他们每个月要做约 30000 次代码部署,但是 King 仍认为他们只是“世界上最大的创业团队”而已,因为有的公司做一个项目可能就会要上千人了。沃尔玛的一千多名研发工程师分布在约 100 个小组中,每个小组有 10-20 人,开发、构建、测试和部署等全部由小组自行负责,以 DevOps 模式工作。尽管大家的工作模式都是持续集成、迭代开发,不可避免地有时候某些团队会由于任务过多而成为瓶颈,这样在小组之间可以共享、开发和贡献代码就非常重要,可以在某种程度上避免这样的“单点故障”了。King 举例道,比如某个工程师需要能连接到支付网关上,但负责支付网关的团队手上已经堆积了 5 个更重要的项目了,没时间做这个。在这种情况下这个工程师可以自己把相关功能实现了,然后再请支付网关团队的人审核通过,就可以了。或者比如说一个支付团队的工程师对于购物车等功能忽然有了什么新想法,那他就直接简单的作出原型来,然后通过 GitHub 提交给对应团队就好了。

当然 King 也提到了一些困难,InnerSource 并不是完美地适合每一个项目的。要能成功地跨团队提交代码的话,你就必须对对方项目的代码框架和逻辑等也熟悉,这是一个大门槛。

King 说沃尔玛推行开源的开发方式之后,对开源社区成果的使用和回馈行为还帮助他们吸引了许多技术人才。在他们准备录用的候选人中,50% 手中还握有 Google、Apple、Facebook、LindedIn 或其他硅谷著名公司的 Offer,可是最终这些人中有 70% 还是选择了沃尔玛。King 把争夺人才胜利的原因归功于两点:一是小而专的团队,二是开源。“大家都对我们已经取得的成就非常赞赏,同时也希望如同在创业公司工作一样。”

在大数据概念引爆流行产业界之前,沃尔玛已经开始了网站数据库整合迁移和Hadoop 集群扩展工作,收购Kosmix 并在其基础上建立Walmart Labs,并在近年着手收购专注于数据挖掘或移动社交的初创公司如OneOps、Inkiru,Tasty Labs,OneRiot,进军互联网。

沃尔玛于今年早期发布了开源项目OneOps,这是一个让程序员们可以测试各家不同公司的云平台,并在它们之间自由切换的平台,它的功能对于使用了多种异构云模型的公司非常有好处。OneOps 可以在任何基于云的平台上,在整个生命周期内,帮助用户管理关键的应用程序负载,同时可以让用户从一家云供应商迁移应用、数据库或整个云环境,到另一个云供应商,以便争取更好的报价。OneOps 强大的云技术,可以帮助工程避免被限制一个云供应商上。OneOps 的开源,对于把应用程序部署在云、需要持续管理和监控的技术人员来说,绝对是个好消息。同样,这对想要更换云服务商的公司也是喜闻乐见的。

最近沃尔玛又发布了新的开源项目 Electrode ,使用反应式开源组件的程序员们可以用它轻松地为移动 Web 和 App 开发页面。


感谢李建盛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-08-04 19:002370
用户头像

发布了 152 篇内容, 共 74.5 次阅读, 收获喜欢 64 次。

关注

评论

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

京东API接口深度解析:如何高效获取商品SKU与关键词搜索商品信息

代码忍者

京东API接口 京东评论API接口

字节还是那么喜欢考算法

王中阳Go

字节跳动 面试 go语言

AI安全的挑战:如何让人工智能变得更加可信

天津汇柏科技有限公司

AI安全 AI 人工智能

京东商品评论数据接口(JD.item_review)丨京东API接口指南

tbapi

京东API接口 京东商品评论接口

资源规划管理系统(源码+文档+部署+讲解)

深圳亥时科技

QT 软件项目的外包开发

北京木奇移动技术有限公司

软件外包公司 QT外包开发 QT开发

openGauss Summit 2024在北京圆满落幕,中国科学院院士钱德沛发表开场致词

极客天地

开源即时通讯IM框架MobileIMSDK的鸿蒙NEXT端开发快速入门

JackJiang

网络编程 即时通讯 IM 鸿蒙OS MobileIMSDK

由 Mybatis 源码畅谈软件设计(四):动态 SQL 执行流程

京东科技开发者

纯配时效服务-双Redis集群设计

京东科技开发者

阿里巴巴1688 API接口深度解析:轻松获取商品详情与高效执行关键词搜索

代码忍者

1688API接口 关键词搜索1688API

原生APP开发的特点

北京木奇移动技术有限公司

软件外包公司 APP外包

HarmonyOS Next 元服务新建到上架全流程

万少

鸿蒙

HarmonyOS Next 实战卡片开发 03

万少

鸿蒙

AIP智能体人才市场:构建未来软件开发的新模式

大东(AIP内容运营专员)

人工智能

京东供应链创新与实践:应用数据驱动的库存选品和调拨算法提升履约效率

京东科技开发者

HarmonyOS Next 实战卡片开发 01

万少

鸿蒙

HarmonyOS Next 实战卡片开发 02

万少

鸿蒙

远程软件怎么选?ToDesk、向日葵、Parsecd、TeamViewer评测结果公布

-亦世凡华、

为 PowerShell 配置 Emacs 模式

mazhen

macos emacs Linux PowerShell windows 11

从源码构建 Linux 内核

mazhen

Linux kernel

【免费送!免费送!免费送!】DuoPlus云手机携手kookeey可壳赠送双旦福利!

kookeey代理严选

跨境电商 海外社媒运营 亚马逊运营 跨境电商网络 Tiktok shop

轻松上手!PyCharm安装全攻略,编程效率翻倍!

测试人

软件测试

什么是数字化转型?

万界星空科技

数字化转型 数字化 制造业 mes 数字化工厂

沃尔玛尝到了推行InnerSource的甜头_GitHub_足下_InfoQ精选文章