About

Ten years shipping software for health, farming, finance and the weather.

I'm a senior engineer working across mobile (Kotlin, Jetpack Compose, Flutter, React Native), backend (Django, Flask, Laravel) and web (Vue 3, TypeScript, Next.js). I've worked remotely with teams in the US, Canada and Kenya since 2019.

Much of my work has been for people on patchy connections and older phones: offline farmer profiling that syncs later, QR ticket checks that work without signal, APK splits that shrink downloads for fragmented device markets. I also like rescuing legacy codebases. I've led rewrites from MVI/Hilt to Compose/MVVM/Koin, from Vue 2 to Vue 3 with TypeScript, and a hospital system's move to Laravel.

Outside the code I mentor developers, organise community events as an Andela Community Ambassador, play chess and write the occasional poem.

45Mmonthly users on The Weather Channel Android app
50k+patients served by Streamline at Kisiizi Hospital
13hospitals in Uganda running Streamline
Top 1%CodersRank score worldwide
Selected work

Products I've built or rebuilt

Civic tech · Lead2026–

The Watchdog App

A global poll and research platform where people vote, back opinions with links, earn rewards and tip creators. I lead the Flutter app end to end.

Firebase OTP login, role-based onboarding, a ranked live feed with countdowns, digital wallet and deep-linked push.

FlutterDartFirebasePHP
Events2025–26

Hoppers

Event booking across a Flutter app, a Django REST API and a Next.js admin dashboard. I owned all three.

Offline QR ticket validation with bulk sync, manual fallback and fraud checks, built for venues with no signal.

FlutterDjango RESTNext.jsFCM
Agriculture · Gov2026

ABCD Portal

Uganda's national commodity intelligence portal for policymakers, producers and investors, built with Makerere Innovation and Incubation Centre.

Rebuilt the front end in Vue 3 + TypeScript and shipped the Commodity Performance module with district tables and CSV/PDF export.

Laravel 12Vue 3TypeScriptMapbox
Fintech2025

Wabeh · Angaza

A loan origination system for financing phones, e-bikes and solar kits, scoring credit from M-Pesa statements.

Led the rewrite to Jetpack Compose, MVVM and Koin, plus S3 + Lambda ABI-split delivery to cut APK size.

KotlinComposeAWS Lambda
Logistics2025–26

LoadMaster

On-demand freight app matching cargo with truck drivers.

Looping trip-alert sounds via Notifee, trip-state recovery after app closure, and an AI agent/skills setup for releases, PRs and tests.

React NativeExpoTypeScript
Health2016–22

Streamline HIS

A hospital information system used by 13 Ugandan hospitals. I recommended and helped lead its migration to Laravel.

Built the finance modules: journals, balance sheet, cash flow and payables aging.

LaravelPHPMySQL
streamlinehealth.org
Experience

Where I've worked

Jun 2026 – nowRemote · Atlanta

Product & Mobile Engineering Lead

The Watchdog App, Inc. · Contract

  • Lead end-to-end development of the cross-platform Flutter app.
  • Built phone OTP auth, role-based screens, poll creation, the live feed, a "Watch" follow system and the wallet.
  • Push notifications that route correctly whether the app is open, backgrounded or closed.
Jun – Sep 2026Kampala

Software Developer (Consultant)

Makerere Innovation and Incubation Centre

  • Rebuilt the ABCD Portal front end from Laravel + Vue 2 to Laravel 12, Vue 3, TypeScript and Vuetify 3.
  • Introduced a data-provenance badge so each panel shows whether its data is live, bundled or illustrative.
  • Fixed the Docker boot blocker and standardised local and containerised dev setup.
Dec 2025 – Sep 2026Remote

Senior Mobile Engineer

Hoppers · Contract

  • Owned the Flutter app, Django REST API and Next.js admin dashboard.
  • Shipped offline QR ticket validation, the FCM notification pipeline and Crashlytics with dSYM automation.
  • Led a branding refresh and handled Play Store releases through GitHub Actions.
Sep 2025 – Jun 2026Remote

Senior Mobile Engineer

Graduate Innovation ThinkTank · LoadMaster

  • Built driver verification, order history and daily logs with trip timelines and earnings.
  • Fixed trip-state persistence after app closure and Google Maps freezes.
  • Set up modular AI agents and skills for releases, secrets, PR creation and test writing.
Jun – Nov 2025Remote · San Francisco

Senior Mobile Engineer (Android)

Angaza · Wabeh

  • Led the redesign with wireframes and prototypes, then the full rewrite to Compose, MVVM and Koin.
  • Built S3 + Lambda ABI-split distribution to reduce APK size.
May 2022 – Jul 2024Remote · Georgia

Mobile Developer (Android)

The Weather Company, an IBM Business

  • Worked on The Weather Channel app, used by over 45 million people a month.
  • Helped rebuild the legacy app with Jetpack Compose and server-driven UI.
  • Improved TalkBack accessibility, ran Airlock sign-up experiments, and cut app size with ProGuard.
Earlier roles, 2015 – 2024
Jun 2022 – Dec 2024Remote · Toronto

Android Engineer

OffShoot / Resurva · Part-time

  • Appointment booking app: foldable and new-Android support, new screens, removal of Kotlin synthetics.
Jul 2020 – Oct 2022Kampala

Android Engineer

Hamwe East Africa · FASCIS, NUCAFE

  • Farmer, agent and supplier profiling with GPS capture and offline collection that syncs when back online.
Jan – Jul 2021Remote · Austin

Android Engineer

Evo Security · Evo Secure Login

  • MFA app: offline access, security questions, and restoring OTP keys after a lost phone.
Oct 2016 – Apr 2022Mbarara · Remote

Software Programmer → Developer

Innovation Streams · Streamline, Streamcredit

  • Led Streamline's migration to Laravel and built its finance modules.
  • Scaled Streamcredit, a finance system used by five financial institutions, and trained interns.
Jul – Nov 2019Remote · San Francisco

Android Engineer

Bleacher Report

  • Account creation, profiles and social features for an app with 5M+ monthly users.
Apr 2018 – Mar 2020Kampala

Software Engineer

Andela

  • Pulse and Converge (Android), WeConnect (Flask + React).
  • External Communications Lead on the Culture Council; learning facilitator and interviewer.
Oct 2015 – Apr 2016Kampala

Applications Consultant

HRP Solutions Uganda

  • Microsoft Dynamics NAV customisation, reports, payroll automation and client training.
Skills

Tools I reach for

Mobile

Kotlin, Java, Jetpack Compose, Flutter/Dart, React Native/Expo, MVVM, Koin, Room, Firebase

Backend

Django & DRF, Flask, Laravel/PHP, Node.js, MySQL, PostgreSQL, GraphQL

Web

Vue 3, TypeScript, Next.js, React, Vuetify, Tailwind, vanilla JavaScript

DevOps & AI

GitHub Actions, Docker, AWS (S3, Lambda), Crashlytics; LangChain, LlamaIndex, RAG, Ollama, Claude, Copilot

CodersRank, by languageView profile
TypeScript
top 0.9% world
Python
top 1% world
Kotlin
top 2% world
Dart
top 2% world
PHP
top 2% world
Vue
top 4% world

Percentile among developers ranked on CodersRank. Also #1 Kotlin developer in Uganda.

Community & writing

Teaching, leading, writing

  • Andela Community Ambassadornow
  • Andela Culture Council, External Comms Lead2018–19
  • Google Student Ambassador, Kyambogo2013–14
  • Mozilla Webmaker mentor2013–14
  • BSc IT & Computing, Kyambogo University (Upper Second)2015
  • AI & LLM Engineering, Andela2025
Contact

Have a product that needs to ship?

I'm open to senior mobile or full-stack roles and contract work, remote from Kampala. Email is the fastest way to reach me.