•
Client: a major bank in Ecuador (under NDA)
•
Product: mobile banking app built with Kotlin Multiplatform
•
My role: Software Development Engineer, mobile and CI/CD
•
Stack: Azure DevOps, a dedicated Mac as a self-hosted build agent, iOS, Android
•
Result: the iOS build went from 6 hours to about 15 minutes, roughly 24x faster
Every iOS build of the bank's app took about 6 hours. With builds that slow, the team could ship about one release a day, and only on a good day. Fixes, QA rounds and store submissions all moved at that pace.
I worked on the Azure DevOps pipelines with the team. First, we tuned their configuration so the Android and iOS builds would run faster. Then came the biggest change: a dedicated Mac that runs the build jobs as a self-hosted Azure DevOps agent, so every iOS build gets that machine's full resources.
The iOS build dropped from 6 hours to about 15 minutes, and the Android builds got faster too. The team went from about one release a day to shipping as many releases as it needs.
What I'd tell another team
If your mobile builds are measured in hours, look at where they run before you rewrite anything. Pipeline configuration and build hardware are often the fastest win you have.