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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Bryan Irace
August 20, 2015
Technology
1.6k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOS at Tumblr
Slides from an overview of Tumblr’s iOS processes given at Artsy on 8/20/2015.
Bryan Irace
August 20, 2015
More Decks by Bryan Irace
See All by Bryan Irace
Practical iOS application modularity
irace
1
720
Building Tumblr for iOS
irace
0
740
Modularity in mobile applications
irace
0
160
When the iOS SDK says “Jump,” ask “How High?”
irace
7
1.5k
Don't be "an Objective-C" or "a Swift Developer"
irace
5
880
Tumblr iOS architecture
irace
5
670
Node.js for mobile developers
irace
1
190
Introduction to Objective-C and Cocoa Touch
irace
7
810
Building apps that play nicely with other apps
irace
1
450
Other Decks in Technology
See All in Technology
自宅LLMの話
jacopen
1
460
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
1
1.3k
10倍の生産性を実現するAI駆動並列エージェントのすべて
kumaiu
5
1.4k
現地で盛り上がった WWDC26 Keynote
zozotech
PRO
1
210
Dario Amodi『Policy on the AI Exponential』を理解する
nagatsu
0
230
Android の公式 Skill / Android skills
yanzm
0
130
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
130
FinOps × AIエージェントで実現する コストインシデントの自動調査
oasis1994liveforever
0
130
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
870
200個のGitHubリポジトリを横断調査したかった
icck
0
110
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
370
LLMにもCAP定理があるという話
harukasakihara
0
310
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
250
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
Designing Powerful Visuals for Engaging Learning
tmiket
1
410
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
230
Typedesign – Prime Four
hannesfritz
42
3.1k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Ruling the World: When Life Gets Gamed
codingconduct
0
250
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
The Curse of the Amulet
leimatthew05
1
13k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
540
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! ❤