AboutExperienceProjectsWriting

Adapting Agile for Mobile Engineering Teams

Agile delivery was fundamentally designed for web and server environments where you can deploy continuously. Mobile engineering is different. You are constrained by App Store review times, phased rollouts, and users who refuse to update their apps for months.

Breaking the Web Mindset

When leading mobile teams, the first thing I do is adjust the sprint expectations. You cannot have a “ship it and forget it” mentality.

Strategies for Mobile Agile

  1. Feature Flagging: Because you can’t rollback a broken binary easily, every new feature must be hidden behind a remote config (like Firebase Remote Config). If a bug slips through, you kill the feature server-side instantly.
  2. Release Trains: Instead of tying releases to sprint completions, operate on a strict release train. Every two weeks, the main branch is cut and shipped, regardless of which features made the cut. This removes the pressure to rush code at the end of a sprint.
  3. Backward Compatibility is Mandatory: Backend teams must understand that API versioning is non-negotiable. An endpoint cannot be deprecated until telemetry shows older app versions have phased out.

By integrating these practices, you can maintain high velocity and agility without sacrificing the stability required for mobile platforms.