写点什么

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:088532

评论

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

Mysql安装

Sakura

9.hooks源码(想知道Function Component是怎样保存状态的嘛)

全栈潇晨

源码分析 React React Hooks

【回溯算法】经典题:求目标和的组合方案 ...

宫水三叶的刷题日记

面试 LeetCode 数据结构与算法

2021抖音面经分享:Java进阶核心知识集/算法刷题宝典(金三银四必备)

比伯

Java 编程 架构 面试 程序人生

工作三年,小胖问我:什么是生产者消费者模式?菜到抠脚!

一个优秀的废人

Java 多线程 阻塞队列 生产者与消费者

Elasticsearch Analyzer 分词器

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

12.手写迷你react(短小精悍就是我)

全栈潇晨

源码分析 React React Hooks

10.scheduler&lane模型(来看看react是暂停、继续和插队的)

全栈潇晨

源码分析 React React Hooks

(28DW-S8-Day13) 在线教育班型和角色

mtfelix

28天写作

科技强国梦的百度式注脚:扎根土壤、拥抱变局、眺望星空

脑极体

聊聊园区网中的专网架构

冯骐

运维 网络 VRF 虚拟路由表

关于写作的一点小想法「Day 13」

道伟

28天写作

11.react concurrent mode(并发模式是什么样的)

全栈潇晨

React React Hooks

程序员成长第十九篇:要不要转管理岗?

石云升

程序员 28天写作 职场经验 管理经验 3月日更

聊聊我对SCRM的理解

boshi

CRM 七日更

Kubelet从入门到放弃系列:GPU加持

DCOS

AI gpu Kubernetes 云原生

无线网络的用户隔离功能

dubbo 源码 v2.7 分析:通信过程及序列化协议

程序员架构进阶

架构 RPC 七日更 dubbo源码 3月日更

Elasticsearch Index Management 索引管理

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

Nydia

项目汇报会复盘

Geek_XOXO

MySQL数据库的安装与使用

若尘

MySQL 数据库

AI数学基础之:概率和上帝视角

程序那些事

人工智能 AI 程序那些事 概率论

迎战大厂!“金三银四”和春招通过率达95%的Java面试要点集锦

Java 程序员 架构 面试

windows 搭建ftp服务

xiezhr

vsftpd ftp ftp服务 文件服务 3月日更

三十而已

ES_her0

28天写作 3月日更

翻译:《实用的Python编程》03_05_Main_module

codists

Python

从JVM底层原理分析数值交换那些事

秦怀杂货店

JVM 交换数值

通俗易懂!看了不会忘的网络面试知识点

编程 架构 面试

Wireshark数据包分析学习笔记Day1

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

2021程序员春招必备:Java面试知识点+答案(7大分类 5000字解析)

比伯

Java 编程 架构 面试 程序人生

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