Freelance senior mobile engineer
Native Swift and Kotlin, React Native with Expo, edge-rendered web with Next.js and Cloudflare. Seven of my own products run live, two on the App Store, all owned end to end. Deepest experience: health data, sensors and AI in production.
Shipped
Seven products in the wild, all owned end to end.
A health coach that turns sleep, HRV, training load and nutrition into one daily read. Native SwiftUI, HealthKit, Firebase, Watch app, widgets, three languages.
iOS, App StoreExploration app on MapKit with proximity unlocking and a server-side anti-cheat check. Shared engine model with a Kotlin and Compose port for Android.
Next.js, SSGTravel platform, five languages, 369 statically generated pages, Firestore overlay on top of a bundled seed so editors work without a deploy.
Web dashboard for coaches and clinics on top of the health app: squad overview, load and readiness per athlete, consent-based data sharing. Firestore ingestion, D1 at the edge.
Real-estate portal for Croatia in eight languages. XML feed import from agency systems, 2,800+ live listings, image pipeline on its own CDN, rendered at the edge.
Next.js, Cloudflare WorkersVehicle marketplace for Croatia. Dealer onboarding, XML inventory feeds, multilingual, running as a Worker at the edge.
React, ViteProduct site for the health app, multilingual, with its own SEO page tree.
Gearstack Health on iPhone
August 2026 build, interface shown in German. HealthKit data condensed into readiness, AI coach, vitals, analysis and nutrition. Scrolls sideways.
Gearstack Health on Apple Watch
A dedicated Watch app with its own target, not a mirror of the iPhone: activity, live run and heart rate zones on the wrist.
CroVenture on iPhone
Light interface, MapKit, proximity unlocking. Same engineer, deliberately a completely different design system from Gearstack.
Scale, measured
Counted, not estimated.
Specialisation
Six production quirks, all solved.
iOS revokes HealthKit authorisation without warning. Re-check on every launch or you ship silently empty charts.
Watch, phone and third parties all write the same category. Without episode merging, nights add up to fourteen hours.
Watch and iPhone report the same steps. Only an interval merge produces a number the user recognises.
An HKObserverQuery triggers the moment you register it, not when new data arrives. Miss that and you build an infinite loop.
Two places writing the same score overwrite each other and the display flickers.
Strict concurrency across 238,000 lines is a different job than across one example view.
AI in production
Everything here runs in the published app.
Scoring and analysis models run on the device. Health data never leaves the iPhone for inference.
The AI coach runs on Gemini with structured responses against a fixed schema, with cost, latency and fallback control.
Meals by photo, barcode or voice. The AI recognises the dish and its nutrients, with multiple guards against misdetection.
Consent design, data minimisation, AI-Act transparency duties, plus App Check against API abuse.
Also solid ground
I ported a full Flutter app to native SwiftUI and then removed Flutter entirely: no engine, no pubspec, no remnants. Plenty of teams are attempting this in 2026 and few have finished it.
Two marketplace apps built in React Native with Expo, real estate and vehicles. Native, Kotlin or React Native: the choice follows the product.
Built an EU co-funded grant application for my own platform: a consortium with a medical faculty and football clubs, including budget, state-aid and MDR-scoping logic.
For cross-platform without Flutter or React Native: the engine logic behind Gearstack and CroVenture exists in Swift and Kotlin field for field, with shared tests asserting the same expected values.
Stack
iOS Swift · SwiftUI · HealthKit · Swift 6 concurrency · SwiftPM · WidgetKit ·
watchOS · WatchConnectivity · Combine · StoreKit 2 · Swift Testing · XCTest
AI/ML Core ML (on-device) · Gemini API · structured output · schema design ·
cost and latency control
Backend Firebase (Firestore, Functions, Auth, App Check) · Cloudflare Workers ·
D1 · Next.js
Cross-platform React Native · Expo
Android Kotlin · Jetpack Compose · Health Connect
Contact
And by when. I will say honestly whether it fits.
info@gearstacklabs.com →