Last updated: Jul 18, 2025

From Weekly Manual Slog to Rapid-Fire Releases: How Tilt Revolutionized iOS Deployment

Written by Dotan Tamir · 5 minutes read

From Weekly Manual Slog to Rapid-Fire Releases: How Tilt Revolutionized iOS Deployment

At Empower Tilt, a data-driven fintech startup, our lifeblood is understanding our users and how they interact with our products. To do that effectively, we need to get new features and product updates into their hands fast. If you’ve ever worked in a startup, you know the pace is exhilarating, and the need for speed is paramount. For our iOS team, that meant taking a hard look at our release process. We went from a painstaking weekly manual ordeal to a highly automated, almost “set it and forget it” system that allows us to iterate at lightning speed.

The Old Way: A Manual Marathon

Think back to the “good old days” – maybe not so good for our release pilot! We used to aim for one iOS release a week. Sounds manageable, right? Not when each step was a manual dance, guided by a Notion checklist.

Here’s a peek at what our weekly ritual looked like:

  • **Cutting the Release Branch: **A new branch for each release.
  • App Version Bump: Manually updating the version number.
  • Ticket Identification: Sifting through tickets to see what made the cut.
  • Release Notes & Assets: Manually updating all the user-facing details.
  • Azure Board Query: Creating specific queries for QA regression and release notes.
  • Triggering Builds: Kicking off separate QA (pointing to dev) and Release Candidate (pointing to production) builds.
  • Team Communication: Sending out alerts about the upcoming release, highlighting any potential risks.
  • Manual Submission to Apple: Once QA gave the green light, we’d manually upload the app to Apple for review.
  • Publishing: After approval, another manual step to publish the app.
  • Post-Release Housekeeping: Tagging tickets, creating a pull request to merge the release branch back into develop, tagging the release on GitHub, and finally, creating a release in Amplitude for analytics.

This whole process would consume about 90 minutes of our release pilot’s time each week. That’s an hour and a half that could be spent building awesome new features! We knew there had to be a better way.

The Shift: Embracing Automation and the Release Train

Our first major leap was recognizing the power of automation. We introduced a fantastic tool called Runway, specifically designed to streamline and automate mobile releases. Alongside this, we transitioned to a release train model, defining a specific day and time for our releases. This brought a new level of predictability and discipline to our deployment cycle.

Here’s how Runway started transforming our process:

  • Version Bumps Handled: Runway took over the tedious task of bumping app versions.
  • Automated Builds: It could trigger builds for us.
  • Centralized Release Information: Release notes and assets were now housed within Runway.
  • Checklists & Tracking: It introduced built-in checklists and the ability to track regression, all within the same “roof.”
  • Approvals & Submissions: Runway streamlined the approval of assets and copy, and even handled the submission and publishing of the app to Apple.

The goal? To get develop to be releasable at all times. This meant a fundamental shift in our QA strategy – rather than a large, end-of-cycle regression, we started focusing on QA during the Pull Request (PR) stage.

The Need for Speed: Feature Flags Enter the Chat

As a fintech startup, our desire to get products to customers as quickly as possible is insatiable. This is where Feature Flags (FFs) became a game-changer. FFs allow us to decouple code deployment from feature release, meaning we can ship features to production “dark” and then enable them for specific user segments when we’re ready. This significantly increased our appetite for rapid releases.

Given this new need, our desire to automate the release process intensified. The aim was to cut the release pilot’s work down to a mere 5 minutes per release.

The Automation Deep Dive: From 90 Minutes to 5!

We rolled up our sleeves and worked closely with Runway to push the boundaries of automation:

  1. **Smart Ticket Identification: **Runway became intelligent enough to identify tickets associated with a release and tag them automatically. No more manual sifting!
  2. **Robust Feature Flag Process: **We refined our FF process to ensure that our develop branch was always robust, clean, and ready to be released, regardless of feature completeness.
  3. Enhanced Communication: We collaborated with Runway to update our automated communication, ensuring the right people were informed at the right time.
  4. **Automated Builds & Submissions: **Builds are now triggered automatically and submitted to Apple. We keep it set to manual publish for now, allowing the review process to begin while our QA team conducts their final regression.
  5. **Post-Release Automation: **Runway also took over the post-release chores:
  6. Tagging releases on GitHub: Instantly.
  7. Creating releases on Amplitude: Automatically for continuous data analysis.

This intense focus on automation allowed us to slash the release pilot’s work time to a stunning 5-10 minutes per release (excluding release monitoring). That’s a massive win!

The Future is Faster: Bi-Weekly, Then Weekly, Then…?

With our new, highly efficient process in place, we started pushing the boundaries of our release cadence. We first moved to a bi-weekly release schedule, and today, we’re comfortably running two releases every single week. This allows us to iterate faster, learn leaner, and get product into our users’ hands at an unprecedented pace. Our current process is highly scalable, giving us the flexibility to run even more releases a week if needed.

Where Do We Go From Here?

While we’ve made incredible strides, there’s always room for improvement. Our primary bottleneck right now lies in QA and regression, which is still largely a manual process. But fear not! We’re already on it, working diligently to introduce UI automation tests to further streamline this crucial step.

We’re incredibly proud of how far we’ve come in optimizing our iOS release process at Empower Tilt. It’s a testament to the power of automation, strategic tool adoption, and a relentless focus on delivering value to our users.


About Dotan Tamir

_I’m a Lead iOS Engineer with 10+ years experience crafting widely-used applications. While I’ve contributed to a range of applications widely used across Australia, I’m currently with Empower. My passion lies in creating exceptional user experiences through robust software architecture and thoughtful design. I thrive on building products, continuously learning from data analytics and experimentation to iterate and improve. _

Dotan Tamir

*I’m adept at streamlining release processes, implementing feature flags, and pioneering data-driven A/B testing, always striving to define and execute technical roadmaps that foster team growth and deliver significant impact.

Past projects include: NAB, ANZ Grow, PTV, AFL, Netball, NRL.*

Specialties: iOS, Objective-C, Swift, Reactive, UX, Agile Methodologies, Technical Leadership, Data-Driven Product Development, A/B Testing, Feature Flagging, Team Mentorship.

Connect with Dotan

Keep reading

More in Engineering