Revisiting the Just Eat Takeaway iOS Modular Architecture in 2026
Article Summary
Alberto De Bortoli from Just Eat Takeaway reveals how a simple UI component exposed a 7-year-old architectural blind spot. The fix? Stop organizing by graph position, start organizing by purpose.
Just Eat Takeaway's iOS app serves millions of users across a dozen markets, built by distributed teams working in a modularized codebase that's evolved since 2016. When a shared countdown timer component had nowhere to fit in their 2019 architecture, it triggered a complete rethink of how they categorize modules.
Key Takeaways
- Unified Core and Shared into single Foundation category, eliminating years of confusion
- Introduced SDK vs Utility split to enforce third-party dependency rules via CI
- Layer depth now computed automatically, not manually configured per module
- Feature to Feature dependencies remain forbidden, shared code extracted to Foundation
- Category matrix enforces architectural laws derived from ADP, SDP, and DIP principles
The 2026 refresh categorizes modules by purpose (App, Feature, Foundation, SDK, Utility) rather than graph position, turning architectural conventions into enforceable rules with automated validation.
About This Article
Just Eat Takeaway's iOS codebase grew to twice as many modules over seven years while dozens of engineers worked on it across multiple time zones. Following conventions alone wasn't enough to maintain the architecture.
Alberto De Bortoli's team built dependency rules into the ModularArchitectureValidator CLI tool based on ADP, SDP, and DIP principles. The tool runs on every pull request and blocks violations automatically.
When engineers try to create illegal dependencies like Foundation to SDK, the CI pipeline fails immediately. This replaced manual code review comments with automated checks that work across the entire distributed team.