Imfuna
Senior Mobile Engineer (Native Android + KMM) - Fully remote
ImfunaArgentina8 hours ago
Full-timeRemote FriendlyEngineering, Information Technology

Senior Mobile Engineer (Native Android + KMM)


Tech Stack: Kotlin; KMM/KMP; Ktor, SQLite; Firebase / App Distribution / Crashlytics; legacy native UI layers (Android XML/DataBinding + Activities)


Imfuna is a PropTech SaaS platform that helps property professionals capture condition evidence on-site and generate compliant inspection and reporting workflows. Our mobile apps are used in the field, often in poor-connectivity environments. They are offline-first, data-heavy, and operationally important to customers. A single inspection can include large volumes of local data and media, so reliability, sync correctness, and clear recovery paths matter just as much as feature delivery.


We have a shared Kotlin Multiplatform core for business logic, networking, sync, and local data, with mostly native UI layers on Android. We also support multiple branded app variants from the same core codebase.


We’re hiring a Senior Mobile Engineer to help evolve this foundation safely: ship product improvements, strengthen the shared core, improve sync reliability, and reduce technical risk over time.


What you’ll do

  • Build and ship product improvements on Android and KMM with a high bar for reliability, usability, and performance
  • Develop and maintain shared KMM modules for domain logic, networking, local persistence, and sync
  • Improve our offline-first architecture: capture locally, queue safely, upload in the background, retry appropriately, and recover cleanly from partial failure
  • Work in Android apps where platform-specific behaviour belongs, especially around UI, camera/media, background execution, file handling, permissions, and platform constraints
  • Strengthen the mobile data layer: local storage, sync state, upload orchestration, error handling, and observability
  • Improve engineering quality in the places that matter most: tests around critical logic, safer releases, better logging, better diagnosis, and fewer regressions
  • Collaborate closely with Product, Backend, QA, and Support to solve real problems seen by field users


What we’re looking for (must-have)

  • +6 years of production experience shipping mobile apps in Kotlin/Android
  • +4 years of working experience with Kotlin Multiplatform / KMM / KMP, especially shared business logic and data-layer code
  • Experience with offline-capable apps or apps with meaningful local persistence and background sync
  • Strong understanding of mobile data management, including caching, local databases, queue/state handling, and network-aware workflows
  • Experience debugging and improving real production systems, not just building greenfield features
  • Good judgement on what should live in shared code and what should remain native
  • Comfortable working in an existing codebase with architectural debt, incremental refactoring, and platform-specific edge cases
  • Able to reason about concurrency, retries, partial failure, recovery, and correctness in data-heavy workflows
  • Clear communicator with an ownership mindset


Strongly preffered

  • Experience with SQLite or similar local persistence layers
  • Experience with Ktor, coroutines, and mobile networking patterns
  • Experience with Firebase Crashlytics and practical mobile observability
  • Experience with release discipline: staged rollout, crash monitoring, rollback judgement, internal distribution
  • Experience working on multi-flavour / white-label / variant-based mobile products


Nice to have

  • Production experience shipping iOS apps in Swift
  • Experience with backend-driven / dynamic UI patterns
  • Experience with camera, photo, audio, or file-heavy workflows
  • Experience improving CI/CD and internal release automation
  • Experience introducing testability into legacy codebases
  • Experience with Bluetooth / Wi-Fi / external device integrations in mobile apps
  • Comfortable using AI-assisted development tools (e.g., Cursor, Claude, Codex/GitHub Copilot) to speed up delivery, including generating scaffolding, refactors, tests, and docs, while keeping code quality, security, and correctness high (reviews, testing, and verification habits).


What success looks like (first 30-60 days)

  • You’ve shipped meaningful improvements on Android and KMM
  • You’ve improved field throughput and completion rates (more inspections finished per day, fewer abandoned uploads, and faster review-to-PDF cycles), not just stability metrics.
  • Strengthened a clean, testable shared KMM core
  • Improved app stability so unexpected issues surface as controlled in-app errors rather than crashes
  • Improved sync reliability with the server (more resilient uploads, fewer failed/partial syncs)
  • Crash-free users/session target (aiming at 99.8%+ crash-free sessions)
  • Upload failure rate reduction goal
  • Time-to-diagnose target (better logs + breadcrumbs)
  • Made releases feel safer: fewer regressions, better monitoring/visibility, and faster iteration


Location

Remote - High coverage of UK working hours required

Employment type: Permanent

Key Skills

Ranked by relevance