How DoorDash uses XcodeGen to eliminate project merge conflicts
Article Summary
Md Al Mamun and Michael Thole from DoorDash reveal how their 100+ engineer iOS team eliminated project merge conflicts entirely. The secret? A command-line tool that turns hours of painful XML debugging into seconds.
DoorDash's iOS teams were drowning in Xcode project merge conflicts as they scaled. The machine-generated pbxproj files were unreadable, time-consuming to resolve, and risked project corruption. They adopted XcodeGen, a CLI tool that generates Xcode projects from human-readable YAML files, to solve this during their SwiftUI migration and modularization efforts.
Key Takeaways
- 100+ iOS engineers now experience zero project merge conflicts after XcodeGen adoption
- YAML-based project specs replace unreadable machine-generated XML with human-friendly configuration
- Conflict resolution reduced from hours to under one minute by regenerating projects
- Enabled safe migration from CocoaPods to SPM and multi-target code sharing
- Bottom-up refactoring approach minimized risk during major architectural changes
DoorDash eliminated all Xcode project merge conflicts across 100+ iOS engineers by replacing machine-generated project files with human-readable YAML specifications using XcodeGen.