# Leveraging frameworks to speed up our development on iOS - Part 1

DevFeed: [Leveraging frameworks to speed up our development on iOS - Part 1](<https://devfeed.tech/articles/leveraging-frameworks-to-speed-up-our-development-on-ios-part-1-2077.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//leveraging-frameworks-to-speed-up-our-development-on-ios-part-1>)

Published: 2017-10-16T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [Development](<https://devfeed.tech/topics/development.md>), [build times](<https://devfeed.tech/topics/build-times.md>), [build performance](<https://devfeed.tech/topics/build-performance.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Objective-C](<https://devfeed.tech/topics/objective-c.md>), [Code](<https://devfeed.tech/topics/code.md>), [Swift](<https://devfeed.tech/topics/swift.md>), [Cache](<https://devfeed.tech/topics/cache.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [building](<https://devfeed.tech/tags/building.md>), [code](<https://devfeed.tech/tags/code.md>), [development](<https://devfeed.tech/tags/development.md>), [git](<https://devfeed.tech/tags/git.md>), [ios](<https://devfeed.tech/tags/ios.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [speed](<https://devfeed.tech/tags/speed.md>), [swift](<https://devfeed.tech/tags/swift.md>), [time](<https://devfeed.tech/tags/time.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

## AI overview

SoundCloud describes how its growing iOS codebase developed long compile times, conflicts, and productivity problems. The team modularized the iOS project into modules with defined responsibilities and public interfaces, aiming to improve development speed and scalability. The article introduces the motivation and context for this modularization journey, including large targets, Objective-C and Swift code, CocoaPods dependencies, costly clean builds, and branch-switching overhead.

## Source excerpt

Growth in code bases come with exciting scalability challenges. As the size of our iOS codebase and team at SoundCloud grew, we faced challenges: long compile times and conflicts. Our productivity started to suffer as a result. We took inspiration from the work done in the backend (Building Products at SoundCloud) and applied it to mobile development. The main goal was to get back to a state where development is fun, fast, and would scale as the number of contributors grew. We modularized our iOS project by splitting it up into modules with well-defined responsibilities and public interfaces that interconnect them.