Duolingo Jul 10, 2025

How we used Macros to Promote MVVM architecture adoption

Article Summary

Duolingo's iOS team turned a boilerplate problem into a Swift Macros showcase. Their codebase grew, but developer friction didn't have to.

As Duolingo's iOS team scaled, they standardized on MVVM architecture but hit a wall with repetitive DataSource code. Carter Levin shares how they used Swift Macros to generate boilerplate automatically while keeping build times in check.

Key Takeaways

Critical Insight

Duolingo eliminated 4,300+ lines of repetitive DataSource code using Swift Macros, saving engineering time while improving code quality and consistency.

The build time optimization strategy involving S3 caching and manual binary linking is worth the read alone.

Recent from Duolingo

Related Articles