Android Developer
Android DeveloperOur team builds amazing experiences for millions of Personal Investing customers. We focus on creating rich and compelling native experiences leveraging the best Android UI guidelines by way of robust tooling to provide deep, financial insights enabling 'on the go' financial management. We work in a collaborative and fast-paced environment, with a culture of learning, coaching and mentoring. We advance mobile-first strategies to delight our current and future customers.The Expertise You Have5-7 years of professional experience developing publicly available Android apps using Kotlin and/or JavaVerifiable experience as an Android developer using Kotlin, Java, Android SDK, Gradle, and Android Studio in an agile environmentFluency in Kotlin and/or Java, from industry working experienceParticipated in the release of at least 1 publicly available app to Google Play participating from feature inception to launch using automated tooling like Jenkins, Gradle, and Google Developer APIs.Experience working in a team of Android developers participating in code reviews, pull requests, and pair programmingExperienced in test driven development owning end to end quality. Experienced in modern test automation frameworks.Demonstrable experience mentoring and coaching other Android developers in a collaborative and team-based organization.The Skills You BringYour passion creating amazing experiences on Android using Google's Material Design guidelines using your strong understanding of functional programming and reactive patternsYour deep knowledge of Android design patterns including Clean Architecture. Experience building multi-module Android apps is a big plus. Experience with MVVM/MVI is also a plus.Your knowledge of the mobile landscape, architectures, trends, and emerging technologies used in creating performant, resilient, and robust Android appsExcellent understanding of computer science fundamentals, data structures, and algorithms to ensure adherence to software engineering best practices including object-oriented and functional programmingExcellent understanding of testing concepts and frameworks using Junit, Espresso, and MockitoStrong understanding of modern development principles such as trunk-based development, feature toggles, and branch by abstraction to support performant and collaborative engineering teams.Strong understanding of CI/CD tools such as Jenkins, Artifactory, and SonarQube to continuously and autonomously deliver high-quality apps to guarantee stable and performant experiences.Good understanding of Android Jetpack as well as open-source libraries like Retrofit, and OkHttp to build modern, architecturally compliant, and future-ready appsGood understanding of Android's accessibility features and experience building accessible experiences on AndroidExperience with Coroutines, Kotlin Multiplatform Mobile (KMM), and Jetpack Compose is a plus