Milan Ghimire · Kathmandu, Nepal
Senior Mobile
App Developer.
I build Android & Flutter apps that talk to real hardware — BLE-connected farm sensors that growers across the US rely on, every day of the season.
A developer who sweats the details.
I'm Milan — a mobile developer with 6+ years of experience shipping apps for Android and Flutter. These days I build the mobile side of EarthScout's precision-agriculture hardware: apps that pair with soil sensors over Bluetooth LE, keep working miles from the nearest signal, and never lose a grower's data.
I write documentation with the same care as code — any developer should be able to pick up my projects and understand how they're built. Away from the keyboard I'm usually behind a camera, on a bicycle, or somewhere in the mountains.
Toolbox
- Kotlin
- Flutter
- Jetpack Compose
- Material 3
- Bluetooth LE
- Room DB
- Dagger Hilt
- Firebase Crashlytics
- Python
- C#
- Git
Where I've worked.
-
Jan 2021 — PresentNow
Ensue Nepal
Senior Mobile App Developer
Sole developer and maintainer of EarthScout's IoT mobile apps — Soil Cub and Earth Scout — from BLE data capture and OTA firmware updates to Play Store release management. Now leading the migration to Flutter for Android & iOS.
-
May 2020 — PresentNow
Kaavya Boutique
IT Manager · part-time
Built — and still maintain — every system the boutique runs on: order management, measurements, an online portal where clients worldwide submit their measurements, and the public collections website.
-
May 2019 — Dec 2020
Abhiyantrik Technology
Mobile App Developer
Built Kotlin and Flutter apps end-to-end, including Story Studio, a travel-story social app, and Dental Hub, a clinic patient-record and appointment app.
-
Jan 2019 — Apr 2019
Abhiyantrik Technology
AI/ML Intern
Built a chatbot and a Nepali Unicode ⇄ Preeti text converter in Python.
-
Apr 2017 — Dec 2019
Freelance
Desktop Developer · C# / WPF
Delivered a double-entry accounting system and a boutique customer-management system for small businesses.
-
Mar 2017 — Mar 2018
Scenic Mountain Transport
SEO Specialist
Managed content and search optimization for four travel websites.
Things I've built.
Now — IoT · precision agriculture · EarthScout, USA
Soil Cub
BLE companion app for a research-grade TDR soil meter — offline-first Room storage, charts, export & backup. Now migrating to Flutter.
Case studyEarth Scout
Real-time soil & weather data from in-field sensor stations, with OTA firmware updates and diagnostics over BLE.
Case studyWeatherCub
Companion app for EarthScout's weather station — one Flutter codebase for Android & iOS, built on the Soil Cub foundation.
In developmentEarlier work
Covid 19
Live COVID-19 case counts and safety guidance for Nepal.
Case study
Story Studio
A social app for sharing travel stories and photography.
Case study
Dental Hub
Clinic assistant managing patient records, checkup history and appointments.
Case study
Kaavya Boutique
The boutique's entire digital stack — order & measurement systems, worldwide online measurement submissions, and the collections website.
Visit siteHubble Accounting
Double-entry bookkeeping system for small organizations.
Case studyKaavya CMS
Customer measurements, orders and billing for the boutique.
Case studyOff duty — photography
Apps people trust, not just use.
Shipping an app is easy. Keeping one reliable in the hands of growers, season after season, takes discipline. Mine looks like this:
Test-driven development
Core logic is written test-first. When an app is the only record of a season's field data, "it seems to work" isn't a standard — regressions get caught before a release, not after.
Offline-first by default
Farms are connectivity dead zones, so local storage — Room on SQLite — is the source of truth. The app works the same at the far end of a field as it does on office Wi-Fi.
BLE & OTA firmware
Deep Bluetooth LE work: pairing and reconnection that survive the real world, plus over-the-air firmware updates and hardware diagnostics — the app doubles as the service tool.
CI/CD & release management
Automated builds and staged Play Store rollouts. Releases are boring by design — versioned, repeatable, and easy to roll back if the numbers say so.
Telemetry that answers questions
Crashlytics plus structured logging and analytics in production. When something misbehaves in a field in Minnesota, I can see what happened from Kathmandu — and prove the fix.
Documentation as a feature
Every project is documented so that any developer can understand how it's built and why — architecture, decisions, and setup. The bus factor on my projects is never one.
Let's build something.
Have a project in mind, or just want to say hi? My inbox is always open.