Skip to content
Abhishek Goyal
Menu

← All services

App rescue and modernisation

Rescue and modernise your Android app, without stopping releases

For apps that have become hard to change or release. I stabilise first, then modernise in steps you can ship: the release pipeline, the architecture, and the move from XML layouts to Jetpack Compose, one screen at a time.

releases after replacing manual builds with CI/CD
Bi-weekly
hotfixes once the release pipeline was in place
Same-day
Compose screens built from concept to production
30+
to move two native apps onto one codebase
6 months

Who it’s for

Sounds familiar?

  • Every release is a manual, stressful event, and a hotfix takes days.
  • Small changes break unrelated screens, so nobody wants to touch the old code.
  • The UI is still in XML layouts, and new screens are slow to build.
  • The app freezes, loses data or starts slowly on the phones your users actually carry.

How I build it

Stabilise first, then modernise in steps

  1. 01

    Audit the code and the release process

    A paid discovery sprint looks at the codebase, the build and the way releases happen, and ends in a written plan with an incremental migration path.

  2. 02

    Make releases routine

    At Pulse I replaced manual builds with GitHub Actions and Fastlane: a predictable bi-weekly cadence and same-day hotfixes. That comes first, so every later change ships safely.

  3. 03

    Fix what hurts users first

    At Pulse, one failed photo could stall the whole upload queue. The fix gave each photo its own failed state and a retry, so the rest kept moving. Rescue work starts with problems like that.

  4. 04

    Move to Compose one screen at a time

    New screens are built in Jetpack Compose and existing XML screens move over as they’re worked on, so the app keeps shipping throughout. I build production apps in Compose, including 30+ screens on a modular Compose, MVVM, Hilt and Flow codebase.

  5. 05

    Know when a rewrite is the right call

    Sometimes steps aren’t enough. In 2025 I led the rewrite of two native apps into one React Native codebase in six months, and it replaced both in production.

What you get

What’s included

  • Codebase and release-process audit
  • Architecture plan with an incremental migration path
  • Compose migration, dependency and SDK upgrades
  • CI/CD with GitHub Actions and Fastlane

How we start

Paid discovery

A fixed fee of ₹60,000 (US$900) for about a week: audit or product scoping, ending in a plan and estimate.

Other ways to work together →

FAQ

Questions clients ask

Do we have to stop feature work?

No. The plan is incremental: releases keep going while the code improves, and each step ships on its own.

Should we migrate to Jetpack Compose?

Usually yes for new screens. Compose and XML views can live in the same app, so there’s no big-bang switch. Whether to move older screens depends on how often they change.

Refactor or rewrite?

Refactor by default, because it keeps releases going. A rewrite makes sense when the platform choice itself is the problem, as with Pulse’s two native apps, which I led into one React Native codebase.

Can you work with our existing team?

Yes. At Pulse I led a team of 4–6 mobile engineers and set the code-review, sprint and release process.

Tell me what’s hard to change in your app

Tell me what exists today and what you need by when.