What is the business logic of the app? Where should it live? How can it be tested? These are common questions that developers start asking themselves when their app and team start rapidly growing. To address this problem at Lyft we applied principles of domain-driven design. It helped us to create common language to describe complex code and make it obvious and predictable. This talk will focus on basics of domain-driven design, typical app layering structure and testability.
Alexey Zakharov is the Lead Android Engineer at Lyft. He solely created first version of Lyft Android app during company's early days. Now he is focused on internal frameworks and practices to scale Android development within Lyft.