Skip to content

Services · 02

Mobile Development

React Native apps for iOS and Android that survive bad networks, app review and scale.

React NativeExpoTypeScriptFirebase

How this runs

First release
~10 weeks to the stores for a typical MVP
Where you review
Weekly TestFlight / internal builds
Risk handling
Native unknowns proven in week one spikes
What you keep
Both store listings, pipelines, dashboards — your accounts

Where we start

Three ways projects land on my desk

Mobile is where I have shipped the most and learned the hardest lessons: a statewide field app used on 2G networks, an AR and LiDAR clinical tool measuring wounds to the millimetre, an enterprise wellness app pulling steps from HealthKit and Google Fit. Each one taught me that the platform edge cases are the product — so offline support, release automation and crash monitoring belong in version one, not version two.

  • You have an app idea

    A product that belongs on phones, and a budget that can't fund two native teams. You need one codebase, both stores, and the native capabilities that make it feel real.

    Week one · Flows and data model drafted, plus spike builds proving the risky native parts — camera, offline, payments — on real devices.

  • You have designs or a backend

    The product exists on paper or on the web, and mobile is the missing surface. You need an engineer who respects the design and reuses the backend you already paid for.

    Week one · The design mapped to screens and navigation, the API contract reviewed, and the first build running on your phone.

  • You have an app that misbehaves

    Crashes, one-star reviews, an SDK three majors behind. Often this routes to my maintenance service — but either way it starts the same honest way.

    Week one · Crash logs and vitals read, a baseline recorded, and a ranked list of what to fix before anything new gets built.

The build sheet

What's on the menu

  1. iOS & Android from one codebase

    React Native with Expo or bare workflow, chosen for the native surface your app needs.

    • React Native
    • Expo
  2. Offline-first sync

    Queued writes, conflict handling and background sync for users with unreliable networks.

    • Queues
    • 2G-proof
  3. Camera, AR & device APIs

    ARKit depth, LiDAR, image processing, GPS, HealthKit, Google Fit, biometrics and more.

    • ARKit
    • HealthKit
  4. Push, deep links & real-time

    Notifications, universal links, chat and live updates with WebSockets or Firebase.

    • Push
    • Realtime
  5. Payments & subscriptions

    Stripe, Razorpay and in-app purchases with receipts, retries and failed-payment flows.

    • Stripe
    • IAP
  6. Store release pipelines

    Fastlane, EAS and CI/CD for Dev, QA, Stage and Prod builds plus store submission.

    • Fastlane
    • EAS

Standards I don't negotiate

Ten weeks, in the order that de-risks them

A realistic path for a first release. Timelines flex with scope, but the order does not: the risky native work is proven early, and store requirements are handled before the last week.

  1. 01

    Weeks 1-2

    Discovery & architecture

    Flows, data model, native capability spikes (camera, offline, payments) and a release plan.

  2. 02

    Weeks 3-6

    Core build

    Navigation, auth, main features and the design system. Weekly TestFlight / internal builds.

  3. 03

    Weeks 7-8

    Hardening

    Offline behaviour, slow-network testing, crash monitoring, accessibility and performance passes.

  4. 04

    Weeks 9-10

    Store launch

    Listings, screenshots, privacy labels, review submission and a staged rollout.

  5. 05

    Ongoing

    Growth

    Analytics review, OS upgrades, new features and the crash-free rate kept above target.

Always true, whatever the project

  • Crash-free by design

    Typed boundaries, error reporting and release gates that kept past apps stable at scale.

  • Works where the network doesn't

    Offline queues and compression proven on 2G/3G field deployments.

  • Native when it counts

    Comfortable in Swift/Kotlin modules, ARKit, OpenCV and Skia when JavaScript is not enough.

  • Release without drama

    Automated builds, environment switching and store submissions done many times before.

Proof, from shipped work

Apps that survived the field, the clinic and the classroom

Government field officers on 2G, clinicians measuring wounds at the bedside, learners keeping streaks offline — these are the conditions my mobile work ships into. Read the full stories:

500k+

Downloads on a single field app

Statewide government inspection app

90%

Crash-rate reduction, up to

Clean architecture and monitoring

70-80%

Automated test coverage

Jest and React Native Testing Library

The bar is set by the stores themselves: Google Play reduces visibility for apps whose user-perceived crash rate exceeds 1.09% — stability is distribution.

The stack

Tools picked for the job in front of us

Build

  • React Native
  • Expo
  • TypeScript

State & data

  • Redux Toolkit
  • MOMobX State Tree
  • REReact Navigation
  • Firebase
  • AWS Amplify

Device & native

  • ARARKit
  • OpenCV
  • ONOneSignal

Quality & release

  • Jest
  • DEDetox
  • Fastlane
  • STStripe
  • RARazorpay

AI in the engagement

Where AI actually shows up

Mobile has more surface area than web — two platforms, native modules, store policies. AI tooling helps me cover that surface faster without lowering the bar on what ships.

  1. 01

    Scoping

    Edge cases enumerated early

    Agents enumerate permission, background and lifecycle cases per platform, so the plan prices them instead of QA discovering them.

  2. 02

    Build

    Native bridges, drafted

    Swift and Kotlin module scaffolds AI-drafted, then verified on physical devices before anything merges.

  3. 03

    QA

    The platform matrix, covered

    AI-drafted test suites across OS versions and device classes; I keep what catches real regressions.

  4. 04

    In your product

    On-device and cloud AI

    Voice, vision and assistant features integrated with evaluation, fallbacks and cost controls.

5

Agentic coding tools in daily use

Cursor, Claude Code, Codex, Windsurf, Antigravity

70-80%

Test coverage maintained

AI-drafted tests, human-kept

2

Platforms from one typed codebase

iOS and Android

The guardrail · A model can draft the native bridge; it cannot test it on a four-year-old Android in a basement stairwell. The device pass is mine, on every release.

Process

How an engagement runs

Expand each step to see what happens and what you receive.

    • Discovery call and written brief: goals, users, constraints, success metrics.
    • Technical discovery: existing systems, integrations, data, compliance needs.
    • A milestone plan with a fixed first release and a parking lot for later ideas.

FAQ

Asked before you had to ask

For most products React Native wins on speed and cost with one team and one codebase. I go native (or write native modules) when the app lives on camera, AR, audio or heavy graphics. I have done both and will recommend what fits.

Have an app idea, or an app that needs rescuing?

Tell me about the product and the users. I will come back with a plan, a timeline and the risks I see.