Talks
Some of my favorite moments in tech have happened at conferences. As a woman in tech, it's where I've found community and realized I'm not alone. I love getting to share what I've learned, hear what others are working on and work together on challenges. That's how we all grow. Below are some resources from from my recent talks.
Recent Talks
From Rollout to Resilience: A Case Study in Monitoring and Alerting Grocery Ads at Uber
Grace Hopper Celebration • October 2024
When launching Grocery Ads in January 2023, our team encountered unexpected monitoring blindspots that allowed a critical issue to go undetected for days. Ads were missing from 40% of carousels for two full days before anyone noticed. This talk walks through three iterations of the alerting strategy we built in response, and the tradeoffs we navigated between detection speed and alert fatigue. After our fixes, we achieved 99.9% availability and 10x reduction in noisy alerts.
Key Takeaways
- Monitor ratios between services, not just raw counts. Click-through rate (CTR) stays meaningful when traffic fluctuates; raw event counts don't.
- Anchor alerts to historical patterns using week-over-week comparisons to account for predictable traffic swings without manual tuning.
- Aggregate low-traffic surfaces to reduce statistical noise. Combining similar low traffic placements produces a more stable signal and fewer false positives.
- There is no clean tradeoff between sensitivity and noise. Align alert sensitivity with the business impact of each surface, and expect to keep tuning.
Building Scalable Cross Platform Mobile Apps with Uber's RIBs Architecture
Grace Hopper Celebration • October 2024
Uber's mobile apps are used by hundreds of millions of people and built by hundreds of engineers across iOS and Android in a single monorepo. Getting to that scale required rethinking mobile architecture from the ground up. This talk covers how Uber made that journey. From MVC to VIPER to the open-source RIBs framework we discuss what makes it work at scale, and how to think about choosing an architecture for your own app.
Key Takeaways
- Parity architecture across platforms pays dividends. When iOS and Android share the same structural patterns, engineers can collaborate meaningfully across platforms.
- Decouple business logic from the view. When app state drives navigation rather than the view hierarchy, you can test core logic in isolation and achieve full business logic coverage.
- Prototype before committing. Test any architecture against your real requirements (team size, testability, framework compatibility) before adopting it at scale.
- No architecture is permanent.MVC worked until it didn't, and RIBs is showing its limits after seven years. Choosing an architecture is a bet on current constraints, not a forever decision.