阿里云飞天发布时刻,领先大模型限免,超7000万 tokens免费体验 了解详情
写点什么

DoorDash 的移动应用发布流程

  • 2023-12-22
    北京
  • 本文字数:933 字

    阅读完需:约 3 分钟

DoorDash 的移动应用发布流程

DoorDash 公司的移动应用发布流程基于团队间明确的分工职责、有效的沟通、测试以及严格的回归问题处理和紧急修复规则。DoorDash 工程师 Manolo Sañudo 解释说,尽管并非所有的企业都具备 DoorDash 这样庞大的规模,但他们的解决方案的许多方面对规模较小的企业也有所帮助。


DoorDash 遵循的是相对简单的周发布周期。每个新的发布候选版本都会有一个发布分支,经过为期一周的测试和修复过程,最终正式发布。


每个新的发布候选版本都会分配一个发布经理来监督整个过程,确保一切顺利进行。发布经理的人员池要足够大,不会出现有人被工作量所拖累的情况,但也不至于过大,以至于无法跨各个发布版本做出一致的决策,或者危及发布流程的发展和改进。


每个发布候选版本都有自己的 Slack 频道,便于将状态更新和会话集中到一个地方,防止生产环境的漏洞热修复产生噪音。


对于测试,Sañudo 表示,由于无法在一周内进行完全的回归测试,因此“组件所有者”会单独负责测试所有组件,并使用移动发布管理平台 Runway 来跟踪测试状态。


每个组件所有者需要在批准组件之前执行特定的测试任务。在提交评审之前,每个组件都必须得到批准。


Sañudo 表示,在测试阶段会不时地发现回归问题。在这种情况下,发布经理与受影响的团队合作修复问题,并推送到主开发分支,只有当回归影响用户体验时,这个修复才会被合并到发布候选分支上。在这个阶段,既不允许出现对用户没有影响的 bug,也不允许添加新特性,每个精心挑选的修复都必须经过团队的论证,并由发布经理批准。


如果在流程的后期发现了漏洞,即在应用程序提交审核之后,甚至会采取更严格的规则,因为实施热修复可能会导致发布延迟。


虽然更新还没有发布,但可能正在等待评审或已经获得批准,要实施修复,我们将不得不拒绝构建并重新提交应用程序。因为这可能会导致延迟发布,我们会根据具体情况评估修复是否值得以及如何根据具体情况进行修复。


在获得苹果公司的批准后,新版本将向 1% 的用户发布,确保没有出现重大问题,并在几天后推向整个用户群。在这个阶段,团队使用一些关键指标来了解新版本的组件可能出现的问题。同样,发布经理使用 Sentry 跟踪更高级别的指标,如崩溃率和趋势性问题。


原文链接:

https://www.infoq.com/news/2023/12/doordash-mobile-release-process/


2023-12-22 08:006186

评论

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

Serverless: AI everywhere的下一块拼图

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

推动体系建设 助推融合发展|2023开放原子全球开源峰会软件物料清单(SBOM)分论坛即将启幕

开放原子开源基金会

开源 开放原子全球开源峰会 软件物料清单(SBOM)

2个原因解答:为什么网络安全缺口大,招聘却很少?

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

美国同事的那些离职类型

HoneyMoose

GreatSQL删除分区慢的跟踪

GreatSQL

greatsql greatsql社区

深入理解Java线程池:线程池参数调优与技巧

xfgg

Java 线程池 6 月 优质更文活动

直播平台源码画面质量功能的实现

山东布谷科技

软件开发、 云算力模式系统开发源码 源码解读 直播系统 直播平台源码

【Netty】「NIO」(一)认识 ByteBuffer

sidiot

后端 Netty java‘ 6 月 优质更文活动

Vue-事件基本使用

不觉心动

6 月 优质更文活动

轻量级分布式日志追踪-Tlog快速入门

javalover123

分布式 日志 Skywalking spring-boot Tlog

Adobe 构建 IDP 之路的经验与教训

SEAL安全

IdP adobe 平台工程

从 PMO 的视角,看如何从 0 到 1 搭建研发效能体系?

思码逸研发效能

研发效能

自动驾驶≠速度与激情

脑极体

自动驾驶

Docker里的基础术语

穿过生命散发芬芳

Docker 6 月 优质更文活动

什么时候 MySQL 查询会变慢?

江南一点雨

MySQL 数据库

2023-06-06:给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言, 其左右子结点分别位于 (row + 1, col -

福大大架构师每日一题

golang rust 福大大

C语言编程语法—文件读写

芯动大师

C语言 二进制 6 月 优质更文活动

以安全为底线 共迎机遇和挑战|2023开放原子全球开源峰会可信基础设施技术分论坛即将启幕

开放原子开源基金会

开源 开放原子全球开源峰会 可信基础设施技术

地图实火!断货加印,限时折扣抢购通道开启

融云 RongCloud

社交 融云 泛娱乐 出海 wicc

整合开源治理经验,共谋开源社区发展|2023开放原子全球开源峰会开源社区治理与运营分论坛即将启幕

开放原子开源基金会

开源 开放原子全球开源峰会 开源社区治理与运营

设计与实现阶段的可靠性工作

阿泽🧸

6 月 优质更文活动

聊聊那些奇葩的代码规范 —— 所有 IntelliJ 的警告必须要处理

HoneyMoose

基于STM32+RC522设计的门禁系统

DS小龙哥

6 月 优质更文活动

不止于快!巨湾技研发布凤凰电池技术,可实现全气候全电压平台极速充电

科技热闻

跨端框架的兴起:WePY(微信小程序容器技术)

没有用户名丶

当“代码农”遇上“码农”:揭秘主干开发的那些事儿 | 京东云技术团队

京东科技开发者

敏捷开发 单元测试 代码评审 主干开发 企业号 6 月 PK 榜

动态修改coreThread线程池拓展

FunTester

什么是CAS和ABA问题?如何解决?

javacn.site

MobPush 配置应用包名

MobTech袤博科技

Maxcompute数据上云一致性比对

阿里云大数据AI技术

大数据 数据集 企业号 6 月 PK 榜

DoorDash 的移动应用发布流程_工程化_Sergio De Simone_InfoQ精选文章