Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The special case of Mobile DevOps
Search
Pratul Kalia
August 27, 2024
Programming
2
40
The special case of Mobile DevOps
First presented at GitHub GitTogether (August 2024) in Bangalore.
Pratul Kalia
August 27, 2024
Tweet
Share
More Decks by Pratul Kalia
See All by Pratul Kalia
Reldex: measuring the effectiveness of your app release process
pratul
0
15
Simplifying Software Estimation
pratul
1
240
Stop the security theater!
pratul
0
270
Effective and efficient mobile engineering
pratul
0
180
Designing future-proof Android applications
pratul
0
160
Android - an introduction for developers
pratul
3
240
Semantic Content Repositories
pratul
1
150
How To Become A Hacker
pratul
3
300
Other Decks in Programming
See All in Programming
Design Foundational Data Engineering Observability
sucitw
3
200
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
280
アルテニア コンサル/ITエンジニア向け 採用ピッチ資料
altenir
0
110
Cache Me If You Can
ryunen344
2
3k
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
190
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
22
5.9k
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
120
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
310
rage against annotate_predecessor
junk0612
0
170
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
1
140
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
2.4k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Balancing Empowerment & Direction
lara
3
620
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Embracing the Ebb and Flow
colly
87
4.8k
GitHub's CSS Performance
jonrohan
1032
460k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Language of Interfaces
destraynor
161
25k
Fireside Chat
paigeccino
39
3.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
P R AT U L K A L I A
• T R A M L I N E . A P P The special case of Mobile DevOps
What is DevOps?
DevOps • Combine development and operational practices • Culture +
tools • Empower teams, improve e ff i ciency • Automate as much as possible
Before DevOps • Development teams wrote the code • IT
Operations deployed the code and ran the servers
Mediocre feedback loop 😑
Learn fast Implement fast
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
The DevOps movement has come a long way in 20
years
The evolution of DevOps • From managing data centers •
... to AWS and Heroku and Render • From build machines • ... to CI pipelines • Logging! Observability! • Errors! Traces! • !!!
But what about apps? 📱
Apps are great • 2008 — App Store & Play
Store • 16 years • $$$$
App stores aren’t great • The delivery model has regressed
• Clients decide when to update apps • No continuous delivery, no rollbacks • Manual review process
Learn fast Implement fast ❌
Commodity hardware Commodity software Backend services 🗄 Web frontends 👩💻
So, what were app teams forced to do?
App teams were forced to... • Slow down the release
process, severely • For e.g. apps: 4-5 times per month • Backends & frontends: 1000-10,000 times per month • Aggressively test the store builds before releasing
App teams were forced to... • Use outdated techniques like
code freeze • Use systems like remote kill switches • The burden of multiple old live versions is high!
Studying the best app teams
The best practices • Fast and reliable CI pipelines •
... builds • ... tests • ... static analysis • ... linters
The best practices • Simple branching strategies • ... and
simple hot fi x strategies
The best practices • Automatic, compulsorily used, nightly builds
The best practices • Server Driven UI techniques
The best practices • Release process as a system
The best practices • Tracking not just errors but also
• ... build size • ... performance metrics, internal and live • ... user fl ows
Open source tools you can use to start Fastlane
https://fastlane.tools Maestro https://maestro.mobile.dev/ Screenshotbot https://screenshotbot.io/ Measure https://www.measure.sh/ Tramline https://www.tramline.app/