Tools of the Trade
summary
History of the Uber Android app becomes a set of concrete fixes: moving to a mono repo per platform to update many modules in one commit, adopting Buck for parallel cached builds across 1,000+ modules, shipping OKBuck to auto-generate Buck scripts, and running a submit queue to keep master green. RIBs modularize business logic with plug-in metadata via Chrome and Workflows for deep links. EXO speeds device iteration, Artist + lint + Herald enforce UI consistency, and Error‑Prone plus Rave catch runtime and annotation errors.
AI-written summary · about
chapters (10)
- 0:00Tools of the Trade Ty Smith
- 4:26MONO
- 13:0799.99% reliability of core flows Enable global rollback of core flows to a guaranteed working state
- 13:39Rails for Design and Code Guidelines for both architecture and design
- 13:52Monitoring is a First-Class Citizen Syx Automatic analytics, logging, debugging, and tracing
- 14:05De-risk Experimentation Application framework with plugin API
- 14:28Make Magic Performance second to none, graceful degradation on low-end devices and networks
- 19:18Crumb An annotation processor for breadcrumbing metadata across compilation boundaries
- 22:44Workflow Represent a workflow of reactive steps
- 31:42RAVE Runtime Annotation Validation Engine Ensure models adhere to the set of expectations that are described by their annotations
related talks
33mTools of the Trade
39mTools of the Trade
48mMobile Developer Productivity at Scale
31mOne for all, all for one: The Journey to Android Monorepo at Uber
41mDude, Where's My Build? Android CI/CD at Uber
40mCase Study- How Android Platform @ Reddit learned to stop worrying and embrace DevX
43mThe Engineering Playbook for Growing Android Teams
39mLevel up your Android Build (en)
