Sr Java / Android Engineer - Legacy Modernization & Embedded Hardware Integration (Medical Imaging)

SafetySpect Inc.
Seattle, WA, United States
about 1 month ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Compensation
$90,000.0 - $120,000.0
Working hours
Regular working hours
Job source

Tech stack

Board Bringup Java (Programming Language) .NET Framework Microsoft Windows Application Programming Interfaces (APIs) Android Software Development Android NDK ARM Architecture Computer Vision C++ (Programming Language) Mobile Application Development CMake
+15 more
Software Debugging Dicom Gradle Hardware Design Java Development Kit Java Native Interface Linux Kernel Windows Presentation Foundation Sabre (Computer System) SAP Sales and Distribution SQLite Systems Integration Toolchain Peripherals Kotlin

Job description

We build the HyperView handheld hyperspectral medical imaging camera - a clinical device that captures tissue oxygenation / hemoglobin maps and exports them as DICOM. We’re hiring a Java/Android engineer to own and evolve the camera’s on-device application across three fronts: (1) maintain and extend current functionality, (2) modernize a long-lived legacy Android/NDK stack to current versions, and (3) integrate new and upgraded hardware as the device platform advances. This is a hands-on, full-stack-on-the-edge role spanning the Android app layer, native (JNI/C/C++) imaging and device-control code, and the embedded hardware boundary - on a regulated medical device where correctness and traceability matter.

The platform you’ll work on

  • Product: HyperView - handheld hyperspectral clinical imaging camera; DICOM output.

  • Compute board: NXP / Freescale i.MX6 (SABRE-SD class, ARM Cortex-A9; sabresd_6dq).

  • Operating system: Android 4.3 ā€œJelly Beanā€ (API level 18) - rooted, kiosk-locked.

  • Peripherals / hardware: Atmel UC3 capture/optics board (exposed to Android over USB mass storage), GPIO-driven illuminator / optics-power / capture trigger, IR/thermal sensor, and a calibrated optical path.

  • App stack (current / legacy): Java (JDK 8); Android SDK 23, build-tools 27.0.3; Gradle 4.6-4.10.1 + Android Gradle Plugin 3.1-3.3; NDK r16b; native C/C++ via JNI (imaging algorithm, libhm_client, libIRSensor, device-helper utilities); pre-AndroidX android.support libraries; SQLite; the Imebra DICOM toolkit; Timber.

  • Ecosystem: a companion Android app (DicomSaver) and a Windows .NET/WPF imaging suite that talks to the device over WPD/MTP.

What you’ll do

  • Maintain, debug, and extend the on-device Android application (Java and the native JNI layer).

  • Lead the modernization: raise the Android API level, migrate android.support * AndroidX, upgrade Gradle/AGP/NDK and third-party libraries, replace deprecated APIs, and re-establish clean, reproducible builds - without regressing clinical behavior or calibration integrity.

  • Integrate new and upgraded hardware being added to the device: bring up sensors/boards/illumination/compute and write or adapt the Android*hardware glue (JNI, GPIO, USB, serial/I²C/SPI), validated end-to-end against the imaging pipeline.

  • Work fluently across the native boundary: read, debug, and modify performance- and hardware-sensitive C/C++; manage NDK toolchains and reproducible native builds.

  • Debug on real hardware: adb/logcat, root (su), filesystem mounts, kernel logs (dmesg), USB/storage enumeration.

  • Uphold medical-device rigor: verification, documentation, and change traceability.

Requirements

Do you have experience in Technical troubleshooting support?, Strong Java and Android engineering, genuinely comfortable across both legacy and modern Android.

  • Demonstrated experience working inside legacy Android codebases - Android 4.x / Jelly Bean era, android.support libraries, old Gradle/AGP, NDK r16-era toolchains. You can navigate, build, and debug an old stack, not just greenfield modern apps.

  • A proven track record modernizing legacy Android apps: API-level upgrades, AndroidX migration, Gradle/AGP/NDK upgrades, dependency and deprecation remediation - executed methodically and regression-safe.

  • Android NDK / native development: C/C++, JNI, ndk-build/CMake; ability to read and modify imaging and device-control native code.

  • Embedded / hardware integration: integrating peripherals over GPIO/USB/serial/I²C/SPI; running Android on custom ARM boards (i.MX6 / NXP a strong plus); comfort with rooted/AOSP devices and board bring-up.

  • Solid on-device debugging discipline (adb, logcat, dmesg, mounts) and reproducible-build hygiene.

Strongly preferred / bonus

  • Medical-device or other regulated / safety-critical software (IEC 62304, ISO 13485, FDA QSR / Design Controls).

  • DICOM and/or the Imebra toolkit; medical or scientific imaging, computer vision, or hyperspectral/multispectral imaging.

  • AOSP / BSP / custom-ROM work on NXP i.MX or similar SoCs; Linux kernel / device-driver familiarity.

  • Kotlin; modern Android architecture; CI for Android + NDK.

  • Windows/.NET interop experience (for the companion PC suite).

Benefits & conditions

$90,000 - $120,000 a year - Full-time, Contract

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:30 min

Scaling agile frameworks and data interoperability in healthcare

Leo Lindhorst Ā· WWC 2022

1:15 min

Defining classes and building packages with pybind11

Konstantin Bespalov Ā· WWC 2023

3:09 min

Understanding Kotlin Multiplatform and its compiler targets

Petar Marijanović Ā· LIVE

2:08 min

Professional background and early cross-platform mobile experiences

Petar Marijanović Ā· LIVE

2:37 min

Developing customized native applications for automotive user interfaces

Stephan Schuster Ā· WWC 2022

2:18 min

Recommended resources and frameworks for learning Kotlin natively

Iris Hunkeler Ā· LIVE

Videos

See all

Related articles

See all