leboncoin Amandine Cousin Sep 3, 2018

What Feature Team Structure Has Changed for iOS Team at leboncoin

Article Summary

Amandine Cousin from leboncoin reveals how their iOS team of 9 developers ships features continuously on a single branch. No release branches, no merge chaos, just one button deploys.

When leboncoin reorganized from siloed teams to cross-functional feature teams, their iOS developers faced a challenge: how do 9 people work on the same codebase without constant conflicts? They rebuilt their entire development workflow around modular architecture and feature toggles.

Key Takeaways

Critical Insight

leboncoin's iOS team can now ship features anytime with 9 developers working simultaneously on one branch, all while serving 1 million daily active users.

Their custom framework compilation system using Carthage and Jenkins might be the most interesting technical detail they glossed over.

About This Article

Problem

When 9 developers worked on leboncoin's iOS app at the same time, they kept running into merge conflicts and dependency issues. The codebase was one big monolith with no clear structure to separate different parts of the work.

Solution

The team split the app into 8 independent modules: 4 for features and 4 for technical infrastructure. They used Carthage frameworks to build these modules, then set up Jenkins to automatically compile and package shared versions through shell scripts.

Impact

The modular setup fixed a real problem. Before, only 1 or 2 people knew how to handle a release. Now any developer can deploy the app by clicking a button instead of manually juggling multiple branches.