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
Deep Security Conference 2025:生成AI時代のセキュリティ監視 /dsc2025-genai-secmon
mizutani
4
2.9k
AI エージェントと考え直すデータ基盤
na0
20
7.9k
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
470
Amazon SNSサブスクリプションの誤解除を防ぐ
y_sakata
3
190
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
2
940
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
セキュアなAI活用のためのLiteLLMの可能性
tk3fftk
1
330
Talk to Someone At Delta Airlines™️ USA Contact Numbers
travelcarecenter
0
160
LLM拡張解体新書/llm-extension-deep-dive
oracle4engineer
PRO
23
6.2k
SREの次のキャリアの道しるべ 〜SREがマネジメントレイヤーに挑戦して、 気づいたこととTips〜
coconala_engineer
1
4.3k
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
290
[SRE NEXT 2025] すみずみまで暖かく照らすあなたの太陽でありたい
carnappopper
2
470
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
70
11k
Speed Design
sergeychernyshev
32
1k
Designing for Performance
lara
610
69k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Writing Fast Ruby
sferik
628
62k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Designing for humans not robots
tammielis
253
25k
How GitHub (no longer) Works
holman
314
140k
Bash Introduction
62gerente
613
210k
Facilitating Awesome Meetings
lara
54
6.5k
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! ❤