Android Integration in Analytics Infrastructure
Article Summary
Alexander Dadukin and Dhriti Chawla reveal what it's like being the only 2 Android engineers supporting analytics infrastructure for all of Yelp. Spoiler: they can't see or touch what they build.
Yelp's Analytics Infra team maintains the experimentation and logging SDKs that every feature team depends on. But building infrastructure that other developers use comes with unique constraints: no UI to validate work, core dependencies that can't rely on anything else, and code that launches before anything else in the app.
Key Takeaways
- Just 2 Android engineers support experimentation and logging SDKs for all Yelp teams
- SDK launches first on app startup: crashes affect 100% of devices instantly
- Can't depend on client code due to circular dependencies with core modules
- No UI means validation requires slow rollouts and implicit data analysis
- Built modern stack from scratch: Kotlin, Koin, and Retrofit despite constraints
Infrastructure SDKs require extreme caution and independence because they're core dependencies that launch before anything else, making every release a high-stakes deployment.
About This Article
Yelp's Analytics Infra team ran into a wall with circular dependencies. They couldn't reuse internal modules with networking code, so they had to build their entire stack from scratch while keeping method count low.
The team built their SDKs using Kotlin, Koin, and Retrofit. This approach kept them completely independent from client repositories and aligned with current Android standards.
Two Android engineers built a lightweight, self-contained infrastructure stack that works across all feature teams. It powers experimentation and logging SDKs without adding bloat or creating dependency conflicts in the core platform.