Tokopedia Jan 14, 2021

Tokopedia iOS: Hello 2021, Rewind 2020

Article Summary

Samuel Edwin from Tokopedia reveals how his iOS team achieved a 10x build time reduction while shipping features that got them featured on the App Store. Despite 2020's challenges, they transformed their entire development workflow.

Tokopedia's iOS team shares their 2020 journey of balancing user-facing features with critical infrastructure improvements. From implementing NFC-based payments to adopting Bazel for builds, they tackled both product innovation and developer productivity at Indonesia's largest e-commerce platform.

Key Takeaways

Critical Insight

Tokopedia reduced CI build times by 1000% while shipping enough iOS 14 features to get featured in the App Store's 'Great on iOS 14' section.

The article includes a detailed timeline showing how they sequenced all these initiatives throughout the year without burning out the team.

About This Article

Problem

Tokopedia's Cart feature had a state management problem. When users toggled product checkboxes, updates had to cascade through multiple UI levels: the product level, the shop level, and the top level. This complexity broke down their MVVM architecture.

Solution

Samuel Edwin's team switched to The Composable Architecture, a Redux-style state management library for Swift. It separated business logic from the UI and made it possible to unit test complex state interactions in isolation.

Impact

The new architecture handled both simple and complex features better. Code became more readable and unit testing got significantly easier compared to MVVM. This reduced bugs in one of Tokopedia's most critical user flows.