As the Artsy iOS app grew larger, we started hitting pain points: We want to support other future platforms such as Android without creating more teams. We want different business teams to work on the app without disrupting each other. We want our architecture to evolve in order to increase programmer efficiency. It took us about a year to start resolving these issues. Ideally, we wanted to find a