TripAdvisor Benoit Sarrazin May 15, 2025

The evolution of native engineering at Tripadvisor: Part 1

Article Summary

Tripadvisor's iOS team was drowning in coordinator spaghetti. Navigation paths were impossible to trace, and even senior engineers couldn't debug their own flows.

Benoit Sarrazin shares how Tripadvisor migrated their large iOS team from MVVM-Coordinator to The Composable Architecture (TCA). This is part 1 of a 3-part series on modernizing their Server Driven UI platform.

Key Takeaways

Critical Insight

Tripadvisor transformed their iOS architecture from unpredictable coordinator chains to predictable, testable TCA reducers while cutting code and accelerating development.

The team discovered that testing difficulty became their best design feedback loop, revealing architectural problems before they shipped.

About This Article

Problem

Tripadvisor's MVVM-C architecture let coordinators launch any other coordinator, which meant developers had to duplicate events across multiple coordinator chains. Onboarding took weeks instead of days.

Solution

Benoit Sarrazin's team switched to The Composable Architecture (TCA) and migrated from the leaf up to the root. They consolidated navigation logic into a single state-based router and used state mutators to share mutation logic across reducers without duplicating actions.

Impact

TCA implementations used 15-30% less code than MVVM-C. Tests became more readable with TestStore assertions. New team members could get up to speed in days instead of weeks because the documentation and patterns were consistent and clear.