国民基金余额宝对企业研发效能的探索与思考

简介: 余额宝诞生于互联网,2013年发展至今,用户量已突破4亿,资金达万亿规模,针对这样一支如此年轻而体量庞大的基金,在IT层面无可避免碰到过各种各样的问题。其中之一便是如何提升整个技术团队的研发效能。在2017杭州云栖大会研发效能峰会上,余额宝首席架构师邱志鑫,讲述了他们在研发效能提升上的思路和解决方案。
余额宝诞生于互联网,2013年发展至今,用户量已突破4亿,资金达万亿规模,针对这样一支如此年轻而体量庞大的基金,在IT层面无可避免碰到过各种各样的问题。其中之一便是如何提升整个技术团队的研发效能。 在2017杭州云栖大会研发效能峰会上,余额宝首席架构师邱志鑫,讲述了他们在研发效能提升上的思路和解决方案。

c23a2a416736f2864f823896da0c44420e46cb8c

我们的IT系统发展到2015年已然成为了一个庞然大物, 下图是我们实际业务系统中的一环,大家可以看到这个局部流程对于整个研发测试团队带来的考验。自建系统、外采系统、按照监管要求建立的标准系统、同业合作系统以及跨平台(Windows、Linux)系统等各种不同环境的系统交织在一起,导致了业务上线前的测试环节工作量无比巨大,我曾经做了个大致的评估,这种传统研发协同模式下,我们的项目上线周期平均在3个月,这对于一个诞生于互联网的金融企业来说无疑是致命的,互联网讲究快速试错与创新,而这种传统的企业IT协同模式却正在成为创新落地的绊脚石。

b2a4b194a95ef850943fab7e1ab7407f22e917c8

我们也曾引入一些开源测试工具(Jenkins/github/ subversion/trac/testlink)快速建立CI:CD的分层模式,以期能够改善现状,然而在实践过程中随着工具越来越多,一些问题也显现出来。

第一:学习成本太高。近千人的技术团队使用了各种开发语言,Java、C++、div,而开源测试工具支持的语言较为单一,我们无法要求非Java领域的同学,使用支持Java的测试工具并且快速上手开发;另外一方面金融研发团队的人才其实分为两种类型,一类是技术开发型人才,还有一类为业务开发型人才,业务开发型的成员能够设计出全面的业务解决方案,能够避免因为触犯合规问题而引起的推倒重来,但是这类同学通常没有接受过深度的技术培训,使用这些技术工具学习成本非常高。

第二:系统间彼此独立,数据不能打通共享。即便是自建的一些系统要做到数据共享也是一件不太容易的事情,那采用开源框架自然就更难以达到,数据不能共享严重影响了团队之间的配合,也增加了操作成本。

第三:维护成本越来越高。个性化支持越来越差,每个系统都需要专人进行维护,使得仅仅就工具的人力投入越来越大,产生了额外的资源缺口。


工欲善其事必先利其器

参加今年的杭州云栖大会,非常认同阿里云副总裁李津的一句话,“今天的成功与失败也许跟一个人的做事方法相关,而跟努力与否无关。如果不能在最高效的平台上发挥创造力和想象力,那么越努力可能会越失败。这个新平台是数据与智能的平台、是互联网的思维和方法的平台。”

余额宝上线以来,随着业务的发展与阿里金融云展开了非常紧密的合作,对云的需求早已不仅仅局限于计算、网络、存储等基础资源的使用,我们通过引入EDAS、流计算、大数据等解决方案,解决了以往很多无法支持的业务问题。那对于提升研发效能的诉求,我们该使用什么样的平台?经过多方评估, 最终我们选定了阿里云的云效平台进行实践。云效于2016年正式上线部署,一年多的实践以来,云效带来的几大便利之处主要体现在以下几个方面:

1.支持绝大多数的开发语言,区别于引入多套开源框架后形成的“孤岛”模式,云效一站式融合平台形态,全面满足研发团队的个性化需求,在同样的时间和人员条件下,可以覆盖更多的测试内容,大大提升了资源利用率。

2. 支持多种开发环境满足持续部署要求,如上图所示,随着各类系统环境的复杂多样化,迭代开发和集成环境间的不匹配成为了业务上线的最后一道瓶颈,云效平台支持大部分标准开发框架,让研发测试团队不再受到环境兼容产生问题困扰。

3. 支持持续交付,云效平台所包含的研发测试流程各环节的自动化工具,提供了自动化编译打包、代码扫描、一键部署测试环境、自动化UI测试、接口测试等方面的功能,能够有效的帮助测试团队提高研发速度和测试质量。

除此之外,云效平台在我看来还值得一提的几个亮点还包括:系统平台化,不强制要求使用者变更自身的研发模式;规范引入,基于阿里标准的研发模式持续改进内部研发体系建设;整合对接了阿里云中间件产品,让阿里云的技术可以在企业内部更加迅速稳定的落地。

通过引入云效平台,目前余额宝研发项目中,贴近敏捷研发模式的项目平均上线周期在2周左右,瀑布迭代模式的项目平均上线周期在1.5个月左右。当然针对每个行业属性不一,云效平台难免也有一些需要完善的地方,在引入初期,对于金融行业特有的清算系统,云效团队定制开发了测试模型,在离线业务分离减少整体系统测试和集成环境搭建的复杂度,相信通过双方持续的磨合与探索,云效能为企业在研发效能方面提供更多价值。 

云效产品体验
(扫描识别图中二维码)
2e733c7fefcf9ca047ab025197d7f65eaf9fde00

云效WorkLikeAlibaba系列直播,为你揭秘双11背后的技术支撑!
 
  • 11月02日20:00:Mock平台让测试插上翅膀
  • 11月02日20:30:测试数据中心-互联网模式下新型的数据准备引擎
  • 11月03日15:00:玩转《阿里巴巴开发手册》 P3C插件
  • 11月09日20:00:智能运维——百万级服务器自动化运维怎么玩?


直播报名
(扫描识别图中二维码)
4e2415d9fcfa5c56f8b6f74d23d86e8f51674f9e


相关文章
|
JavaScript 前端开发 API
Vue 2 vs Vue 3:开发者之争,究竟选择哪个版本?
Vue 2 vs Vue 3:开发者之争,究竟选择哪个版本?
1337 1
ly~
|
网络协议 算法 关系型数据库
C语言的应用
C 语言因其高效性和对硬件的直接访问能力,在多个领域有广泛应用。在系统软件领域,它被用于开发操作系统(如 Unix 和 Linux 的内核)和嵌入式系统(如汽车电子控制系统)。在游戏开发中,C 语言常用于构建游戏引擎的底层部分(如 Unity 和 Unreal Engine 的核心模块)及性能要求高的独立游戏。此外,C 语言也用于数据库管理系统(如 MySQL 和 PostgreSQL 的核心功能)和网络编程(如 TCP/IP 协议栈和网络服务器的核心模块)。
ly~
639 3
|
安全 网络安全 Windows
网易邮箱显示附件上传不成功,请重试!(错误码:FR_INVALID_REQUEST) 的解决方法
网易邮箱显示附件上传不成功,请重试!(错误码:FR_INVALID_REQUEST) 的解决方法
|
算法 计算机视觉
图像处理之调整亮度与对比度
图像处理之调整亮度与对比度
583 6
|
JavaScript 定位技术
BIGEMAP地图VUE中引入
BIGEMAP地图VUE中引入
584 0
BIGEMAP地图VUE中引入
【JAVA学习之路 | 进阶篇】Record(记录)与密封类(sealed)
【JAVA学习之路 | 进阶篇】Record(记录)与密封类(sealed)
|
网络协议 安全 测试技术
一文带你了解Mock 技术体系
**Mock和测试替身简介** 学习Mock提升测试深度、效率和降低成本。示例:测试股票软件时模拟市场涨跌。Test Double包括Dummy(占位)、Fake(简化的实现)、Stub(预设回答)、Spy(记录行为)和Mock(预编程期望)。Fake如内存数据库,适用于测试。Stub用于预设响应,如Swagger接口。Mock确保收到预期调用。常用Mock工具有WireMock、Mitmproxy等。WireMock用于构建模拟API,支持stub和proxy模式。掌握Mock技术能更好地隔离和测试系统组件。
已解决E: dpkg was interrupted, you must manually run ‘sudo dpkg --configure -a‘ to correct the problem.
已解决E: dpkg was interrupted, you must manually run ‘sudo dpkg --configure -a‘ to correct the problem.
482 0
|
存储 C语言
C语言中的变量与常量:深入解析
C语言中的变量与常量:深入解析
600 0
钉钉API调试工具使用
钉钉API调试工具使用
805 0

热门文章

最新文章