Skip to content

Case study

A Bluetooth field app for water networks

LEAKAPP is the app technicians use to find water leaks with acoustic measuring devices. I lead the 3-developer mobile team, built the iOS app from an empty repository, and contribute to Android.

No time for a call? Write to me: every email gets a reply within one business day.

Client
VonRoll Hydro
Role
Mobile Tech Lead
Period
Since 2025

The problem

The app is used outdoors, by technicians wearing gloves, next to a device that streams measurements over Bluetooth. Everything that is convenient in an office app, such as assuming a stable connection or a reliable network, stops being true in the street.

What I did

  1. Bluetooth devices end to end

    Connection to the field devices with live data, file transfer and firmware updates, built so that a lost connection is a state the app expects rather than a crash.

  2. One app for iPhone and iPad, 9 languages

    A universal app taken from an empty repository to the App Store, localized into 9 languages.

  3. Reading measurements on site

    Live spectrum charts and a provider-agnostic map layer, so the technician sees the measurement where it was taken.

  4. A team and a test suite

    I lead 3 mobile developers, review the Android work, and keep 480+ automated tests running on a pipeline built on Bitbucket, Xcode Cloud and fastlane.

Where it stands

  1. 480+ automated tests

    Kept green on every release, which is what makes a field app safe to change.

  2. A team of 3 mobile developers

    Shared conventions, reviews and a release process the team runs without me in the room.

Questions I get asked

Can you work with our devices?
Yes. Give me the protocol documentation and one unit, and the first milestone is a small app that connects, reads and logs, before any interface work.
Why can't you show screenshots?
The project is under NDA. I can talk about how it is built, not about device names, protocols or measurements.

Stack

  • SwiftUI
  • Swift Concurrency
  • Core Bluetooth
  • GRDB
  • Jetpack Compose
  • Kotlin Multiplatform
  • Xcode Cloud
  • fastlane

This project is under NDA, so client details and internal specifics stay off this page.

Related services

Other case studies

Want something like this built?

Book a 20-minute call and tell me about your app. I will tell you what I would do first.

No time for a call? Write to me: every email gets a reply within one business day.