写点什么

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

评论

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

【高并发】亿级流量场景下如何为HTTP接口限流?看完我懂了!!

冰河

并发编程 多线程 高并发 协程 异步编程

阿里云高庆瑞:如何快速搭建低成本高弹性的云上应用

阿里云弹性计算

应用 自动化运维 CloudOps 弹性伸缩

前端高频面试题(二)(附答案)

helloworld1024fd

JavaScript 前端

vivo前端智能化实践:机器学习在自动网页布局中的应用

vivo互联网技术

机器学习 前端 网页布局

[JS入门到进阶] 手写裁剪图片的工具,并部署。一键裁剪掘金文章封面

HullQin

CSS JavaScript html 前端 8月月更

【小程序项目开发-- 京东商城】uni-app之自定义搜索组件(中)-- 搜索建议

计算机魔术师

8月月更

日拱算法:什么是“煎饼排序”?

掘金安东尼

算法 8月月更

BaaS助力区块链技术开启下一轮应用热潮

旺链科技

区块链 产业区块链 企业号九月金秋榜 BaaS平台

mysql的存储引擎详解

浅羽技术

MySQL 存储引擎 MySQL InnoDB memory Store 8月月更

mysql 的索引分类 B + 和 hash 详解

浅羽技术

MySQL 索引 hash B+树 8月月更

数据仓库与数据中台最大的区别是什么?终于有人讲明白了

雨果

数据中台 数据仓库

HMS Core基于地理位置请求广告,流量变现快人一步

HarmonyOS SDK

广告sdk

前后端数据接口协作提效实践

百度Geek说

Java 数据 企业号九月金秋榜

云原生(三十) | Kubernetes 篇之应用商店 -Helm 介绍

Lansonli

云原生 8月月更

数字藏品app开发:nft数字藏品是什么?怎么制作和出售?

开源直播系统源码

数字藏品 数字藏品软件开发 数字藏品源码出售 数字藏品开发 数字藏品系统

【小程序项目开发--京东商城】uni-app之自定义搜索组件(上)-- 组件UI

计算机魔术师

8月月更

【Django | allauth】登录_注册_邮箱验证_密码邮箱重置

计算机魔术师

8月月更

Flomesh 发布 Pipy 0.50.0

Flomesh

开源一夏 | count(列名)、 count(常量)、 count(*)区别

六月的雨在InfoQ

开源 count MySQL 数据库 MySQL InnoDB 8月月更

MQ 的原理以及持久化

浅羽技术

MQ 消息队列 Activemq active 8月月更

Mysql安装教程

楠羽

#开源

长安链源码分析启动(6)

长安链

锁住它,快告诉我乐观锁与悲观锁的区别?

知识浅谈

8月月更

锁分类

TimeFriends

8月月更

列存数据仓库怎样做才能更高效

jiangxl

京东云PostgreSQL在GIS场景的应用分享

京东科技开发者

postgresql 检索 jieba 京东云 信息检索

从项目经理过渡到ScrumMaster的三个技巧

ShineScrum

Scrum 敏捷 ScrumMaster 项目经理

悲观锁和乐观锁的区别以及实现方式

浅羽技术

乐观锁 悲观锁 8月月更

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