写点什么

Spotify 移动工程平台迁移:将 Android 和 iOS 代码库迁移到 Bazel

  • 2023-02-27
    北京
  • 本文字数:944 字

    阅读完需:约 3 分钟

Spotify移动工程平台迁移:将Android和iOS代码库迁移到Bazel

最近,Spotify 移动工程团队详细介绍了他们最近的平台迁移经验。根据移动工程战略计划,该团队将他们的 Android 和 iOS 代码库迁移到了谷歌的开源构建系统 Bazel 上。


来自 Spotify 移动工程团队的 Mariana Ardoino 和 Raul Herbster 在一篇博客文章中探讨了从迁移中获得的经验教训。迁移工作影响了 Spotify 的 100 多个团队。团队认识到,不同规模和复杂性的迁移将成为未来的“常态”,因此该团队通过强调定义迁移范围的必要性来设定上下文。


通常,当迁移的范围未知时,关注价值并理解迁移的目标是有意义的。 该团队建议从概念验证 (POC) 入手,并与利益相关者一起验证,而不是在一开始就确定所有可能的场景。 通过这些早期阶段与利益相关者的合作,对了解涉众对迁移的需求也是有用的。


当有大量的团队受到影响并且进度缓慢时,大规模的基础设施和架构更改似乎是不可能的。这样的情况需要利益相关者更大程度的参与。通过 Slack/ 电子邮件组与利益相关者保持联系,并通过通讯和工作场所的帖子分享进展,可以再次强调迁移的重要性。在迁移过程中,寻找自动化的可能性可能会有所帮助。为研究高峰预留时间也是一个不错的选择,其中可以包括与团队一起进行迁移。


另一方面,Puppet 的首席技术官 Nigel Kersten 强调了敏捷(Agile)/DevOps 转型背景下的协作,他说:


从根本上讲,问题在于所有这些转变都包含了大量的人际互动成分,而你作为一个组织,你的规模越大、历史越长,改变人际互动方式就越困难,你必须要去到更高的链条上来创造组织变革。


Spotify 移动工程团队提到,对于参与迁移的任何平台团队来说,相互竞争的优先级都是“现实”。无论迁移是否涉及采用新技术还是减少技术债,团队的动机水平都可能因迁移进展缓慢而受到影响。团队建议持续评估迁移进度,通过展示迁移的积极影响来激励团队,并调整方法以实现某些迁移目标。


最后,在讨论问责制方面,Spotify 移动工程团队建议,不要期望在一段时间内推动变革的内部 / 外部一致性。使用仪表板、维护迁移时间表以及使用数据或趋势图可能有助于可视化进度并突出显示所需的调整。

原文链接:https://www.infoq.com/news/2022/12/spotify-plat-migration-lessons/
相关阅读:

Spotify 高质量工程生产力实践

Spotify 如何可视化系统架构图

Kratos 微服务工程 Bazel 构建指南

Spotify 系统架构

2023-02-27 10:085728

评论

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

您有一个MatrixOne Beta Program专属权益待领取

MatrixOrigin

MatrixOrigin MatrixOne betaprogram MO企划

基于Prometheus和Grafana实现对SpringBoot 应用的监控

皮特王

监控 Grafana Prometheus 大屏展示 告警平台

关于 OAuth 你又了解哪些?

API7.ai 技术团队

api 网关 Oauth APISIX

RESTful API 为何成为顶流 API 架构风格?

API7.ai 技术团队

API APISIX REST API

代码分享 | 情人节表白黑科技

鼎道智联

代码 情人节 爱心代码

压力测试、并发测试实践,后端工程师必看

爱研究代码的极客人

Jmeter 压力测试 并发测试 测试工具

Elasticsearch 利用 Enrich Processor 实现 MYSQL Join 的操作,支持 Nested 类型,具体应用。

alexgaoyh

MySQL elasticsearch ES 多表join enrich processor

【SpringBoot】简述springboot项目启动数据加载内存中的三种方法

No8g攻城狮

springboot spring-boot

高性能网络SIG月度动态:SMC 与 IBM 就扩展协议达成一致,virtio 支持 XDP 新特性

OpenAnolis小助手

开源 高性能网络 virtio 龙蜥sig smc

携手共进丨九科信息入围PKS体系生态企业展播

九科Ninetech

软件开发如何做好需求管理?方法+工具

PingCode

产品经理 管理工具 软件需求管理

自动驾驶过冬,需要点燃“降本增效”的炉火

脑极体

自动驾驶

腾讯架构师极力推荐:Java多线程与Socket实战微服务框架

小小怪下士

Java 程序员 socket 多线程

参加大数据培训有什么好处

小谷哥

广告商、影视剧和晚会用的流行歌曲,版权都是怎么买的?

HIFIVE音加加

音乐 三体 版权 影视 热点

如何通过极狐GitLab 平滑落地 Java 增量代码规范?

极狐GitLab

Java DevOps 代码规范 极狐GitLab checkstyle

线下学习前端培训机构怎么选?

小谷哥

文本数据标注已上线,支持文本分类、实体识别|ModelWhale 版本更新

ModelWhale

人工智能 机器学习 云计算 数据分析 编程建模

架构训练营模块五作业

gigifrog

架构训练营

热点面试题:协商缓存和强缓存的理解及区别?

控心つcrazy

JavaScript https 面试题 HTTP 前端面试题

设计模式-组合模式和建筑者模式详解

C++后台开发

数据结构 设计模式 组合模式 后端开发 Linux服务器开发

为什么工厂要投资设备智能维护管理技术?

PreMaint

设备管理 设备预测性维护

大数据培训的方法有哪些

小谷哥

初学者前端培训机构需要注意什么

小谷哥

软件测试/测试开发 | Web测试方法与技术之JavaScript 讲解

测试人

软件测试 自动化测试 测试开发 Web自动化测试 web测试

《自定义工作流配置,springboot集成activiti,前端vue,完整版审批单据》

金陵老街

私有化即时通讯软件可以保证员工的通讯安全吗?

WorkPlus

打造IM生态,WorkPlus个性定制让企业业务管理再升级

WorkPlus

找 ChatGPT 写 SQL? 不如试试 PromQL,三行解决复杂时序场景查询

Greptime 格睿科技

sql 云原生 时序数据库 PromQL 可观测

为什么选择免费文件共享方法上的托管文件传输

镭速

java培训与线上自学哪个比较好?

小谷哥

Spotify移动工程平台迁移:将Android和iOS代码库迁移到Bazel_移动_Aditya Kulkarni_InfoQ精选文章