dreamwork_

About the role

X-Team is seeking talented Senior Android Engineers to join a mobile engineering squad at one of Australia's largest banks, working on two priority projects: making the mobile banking app resilient that is used by millions of customers, and building Open Banking features. You'll build it in Kotlin and Jetpack Compose with a SQLite persistence layer, using networking and database code generated from gRPC definitions.

Key responsibilities

  • Build offline-first architecture ensuring the Android app remains resilient when backend services go down

  • Develop Open Banking features that let customers link accounts from other banks

  • Implement SQLite persistence layer with local caching and schema migrations

  • Work with gRPC definitions and Protocol Buffers for automated code generation

  • Ensure thread-safe data synchronization across the application

  • Implement Kotlin Coroutines and Flow to keep UI rendering separate from background network work

  • Apply Clean Architecture, MVVM or MVI patterns with dependency injection

  • Implement Android security fundamentals including Android Keystore, certificate pinning, and OAuth2

About you

  • 5+ years of senior native Android engineering, with expert Kotlin and Jetpack Compose

  • Strong backend engineering expertise

  • Production experience building offline-first apps with SQLite, including local caching, schema migrations, and thread-safe data synchronization

  • Hands-on experience with gRPC, Protocol Buffers, and automated code generation on Android

  • Experience with Clean Architecture, MVVM or MVI, and dependency injection with Hilt or Dagger

  • Android security fundamentals: Android Keystore or EncryptedSharedPreferences, certificate pinning, and OAuth2

  • Able to work onsite in Melbourne CBD for the first 2 to 4 weeks

Nice to have

  • Experience building or using code-generation tools that map API definitions to SQLite schemas and DAO interfaces

  • LaunchDarkly or similar feature flagging experience for staged rollouts and instant kill-switches

  • Working knowledge of iOS patterns (Swift and SwiftUI) to keep behavior consistent with the iOS squad