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
iOS at Tumblr
Search
Bryan Irace
August 20, 2015
Technology
2
1.5k
iOS at Tumblr
Slides from an overview of Tumblr’s iOS processes given at Artsy on 8/20/2015.
Bryan Irace
August 20, 2015
Tweet
Share
More Decks by Bryan Irace
See All by Bryan Irace
Practical iOS application modularity
irace
1
650
Building Tumblr for iOS
irace
0
680
Modularity in mobile applications
irace
0
140
When the iOS SDK says “Jump,” ask “How High?”
irace
7
1.4k
Don't be "an Objective-C" or "a Swift Developer"
irace
5
840
Tumblr iOS architecture
irace
5
580
Node.js for mobile developers
irace
1
160
Introduction to Objective-C and Cocoa Touch
irace
7
720
Building apps that play nicely with other apps
irace
1
390
Other Decks in Technology
See All in Technology
面倒な作業はAIにおまかせ。Flutter開発をスマートに効率化
ruideengineer
0
250
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
2
140
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
110
Delta airlines®️ USA Contact Numbers: Complete 2025 Support Guide
airtravelguide
0
340
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
170
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
130k
さくらのIaaS基盤のモニタリングとOpenTelemetry/OSC Hokkaido 2025
fujiwara3
3
440
AWS認定を取る中で感じたこと
siromi
1
190
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
1
280
Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost
taishin
1
160
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
300
2025 AWS Jr. Championが振り返るAWS Summit
kazukiadachi
0
110
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.4k
Documentation Writing (for coders)
carmenintech
72
4.9k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Statistics for Hackers
jakevdp
799
220k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
RailsConf 2023
tenderlove
30
1.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Code Review Best Practice
trishagee
69
18k
Transcript
iOS at Tumblr Bryan Irace, 8/20/2015
The teams: 2012 - 2015 • One iOS team and
one Android team • Up to ~8 developers each
The teams: 2015 – ? • iOS and Android “Core”
teams • ~3-4 developers each • iOS and Android engineers embedded on each product team • ~5 full time (per platform) • ~10 part-time/trainees (per platform)
Internal training
Horizontal camraderie • Public Slack channels (#ios, #ios_core) • Weekly
variety hours (“Multipeer Connectivity”) • Pair programming system • In-person code reviews • Speaker series • Remote-friendly • !"
Development • Git flow • Pods checked into source control
Products
Code organization • Development pods in our primary repo •
Pods in separate internal (private) repos • Open source pods • TMTumblrSDK
None
None
Languages • Lots of Objective-C • Most new code in
Swift
Pull requests • PRs need milestones to be reviewed •
Each release has a “driver” • Assigns PRs in a round-robin order (responsible for merging) • Responsible for sending out beta builds,
You are not your code
Releases • Submit to the App Store every two weeks
• Development completion “lockdown” dates • Feature flagging • Phased roll-outs • Flag off code that isn’t finished yet
None
Automation • Slack bot for distributing beta builds • Nightly
alpha builds • Builds and runs tests for each PR • Fastlane for App Store submissions • Ideally would happen automatically
None
Core tenets • Offline support • Being good platform citizens
None
Biggest challenges • Heterogenous content • Media-heavy • Scroll performance
• Memory footprint • Rich text rendering
Thanks! ❤