Skip to main content

Android Developer

Technology
elliott moss consulting
2 days ago
Full time

Job description

1.Mandatory Skills::

Candidates must be able to demonstrate all five mandatory skills. General Android familiarity is assumed but is not sufficient.

1. Kotlin Depth with Recent Hands-on Delivery

  • Four or more years of commercial Android development in Kotlin.
  • Personally writing production code throughout the most recent 12 months.
  • Able to work confidently in an established codebase that also contains Java.
2. Android SDK and Lifecycle in a Large Multi-team Codebase
  • Activity and Fragment lifecycle, configuration changes, process death and state restoration.
  • Task and back-stack behaviour, background execution limits, and modularisation across a multi-module project.
  • Jetpack Compose is valued, particularly integrating it into a predominantly View-based application.
  • Experience limited to small or single-owner apps will not be sufficient.
3. Concurrency and Memory Under Real Conditions
  • Coroutines and Flow, structured concurrency, dispatcher selection and cancellation.
  • Able to reason about main-thread contention and race conditions.
  • Able to diagnose context leaks and listener retention through heap analysis rather than by inspection.
4. Platform Security
  • Android Keystore, encrypted local storage, BiometricPrompt, including biometric-enrolment change handling.
  • Certificate pinning, permissions, scoped storage, and root or tamper signals.
  • Able to handle sensitive customer data correctly without being told where the risks are.
5. Production Debugging Across a Fragmented Device Base
  • Application Not Responding (ANR) issues, jank and frame drops, startup time, crash analysis, and device or OS version fragmentation.
  • Able to reason from a customer-reported symptom through to root cause without escalating to a lead or architect.
2. Strongly Preferred Skills
  • Carrying an annual target-API or Android SDK upgrade through a large production application, including behaviour changes such as edge-to-edge and Play Store compliance requirements.
  • App Links, custom URL schemes and digital asset link verification, including troubleshooting links that fail to resolve to the application.
  • Diagnosing behavioural differences introduced by Android OS, target SDK, WebView or Chromium version changes — recognising when an apparent application defect actually originates at the platform or WebView boundary.
  • Integration between native and web-based journeys — WebView or hybrid content, deep-link entry into web journeys, and session and configuration hand-off between native and web.
  • Banking, financial services, fintech, wallets or another secure, high-volume consumer application.
  • Contribution to an internal SDK, design system or framework consumed by other teams.
  • Mobile observability and crash or performance analytics instrumentation.
  • Ownership of CI/CD pipelines or native test automation.
3. Brief Job Description

Hands-on Engineering Role The successful candidate must be writing production code daily.

The Role::

We are looking for hands-on Android engineers to build and support critical customer journeys and shared native capabilities within a large-scale consumer banking application.

We work in a single shared native codebase serving multiple business domains. A change made in one journey can affect the whole application, so we need engineers who work with that in mind.

Important Hiring Criteria::

This is a hands-on engineering role. We are not filling a lead, architect, delivery-lead or coordination position.

Candidates whose recent work has been predominantly focused on the following activities, without hands-on implementation, will not be considered:

  • Team management
  • Project management
  • Scrum-master activities
  • Vendor coordination
  • Status reporting
  • Architecture governance
Keywords
KotlinGoogle ChromeCoroutineScrumJavaInstrumentationCI/CDChromiumDebugger

Interested in this role?