Senior Android Developer
Dynamic Work schedule - This is 5 days on site a month- in the same week then the remainder of the month is working from home. (They can fly/drive into the office as well). If your candidate is not open to this please tell them they will not be considered. Fidelity determines the week they are working onsite, not the candidate.
Location - NC, WLK, or MMK
Must Have:
- For Android: Android SDK, Kotlin, Jetpack Compose
- Must have experience delivering apps on Google store (experience building and deploying and pushing it out to customers).
- Must have experience in automation testing as well for the native experience that they are building (UI automation testing). Must understand DevOps within the Android space.
- AWS, Azure, Javascript is nice to have, NodeJS
The Role
Are you interested in serving the needs of millions of customers by building the best-in-class digital experience that helps them in financial planning, investing, and retirement solutions? Our chapter comprises teams that work on a wide range of applications and platforms like Fidelity.com, Fidelity Mobile and Investor Centers. We're looking for product-aware engineers who are passionate, inquisitive, and responsible individuals to help us on our mission to deliver the best omni-channel experience to our customers. Our teams build and chip in to Fidelity’s digital presence. As a software engineer, you will help us build the omni channel user experiences and the underlying platforms needed to support our digital presence.
- You’ll work on building entire features, taking these from concept to deployment, as part of our autonomous, cross functional teams.
- You'll have the opportunity to chip in ideas to improve our products as well as develop your skills, learn new technologies and languages, and continue to learn.
We're looking for highly motivated individuals who work well in a team-oriented, iterative, and fast-paced environment. The Expertise and Skills You Bring
- Designing, developing, and maintaining Mobile Native (Android) applications in a fast-paced Scrum environment
- Verifiable hands-on experience as an Android developer using Kotlin, Java, Android SDK, Gradle, and Android Studio in an agile environment, excellent understanding of testing concepts and frameworks using Junit, Espresso, and Mockito.
- Participated in the release of publicly available apps to Google Play participating from feature inception to launch; optimally employ DevOps, Automated Testing (Functional and UI) and Continuous Delivery using technologies such as Groovy, Gradle, Jenkins.
- Experience creating amazing experiences on Android using Google’s Material Design guidelines using your proven understanding of functional programming and reactive patterns.
- 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.
- Working experience with Coroutines, Kotlin Multiplatform Mobile (KMM), and Jetpack Compose.
- Good understanding of Android Architecture Components as well as open-source libraries like Retrofit, Picasso, and OkHttp to build modern, architecturally compliant, and future-ready apps.
- Knowledge of the mobile landscape, architectures, trends, and emerging technologies used in creating performant, resilient, and robust Android apps.
- Good understanding of CI/CD tools such as Jenkins, Artifactory, and Code Quality tool (like SonarQube) to continuously and autonomously deliver high-quality apps to guarantee stable and performant experiences.
- Good understanding of Android Jetpack and knowledge of Android Auto, Android Watch is a plus.
- Good understanding of Android’s accessibility features and experience building accessible experiences on Android.
- Your advanced Git skills and strong understanding of modern development principles such as trunk-based development, feature toggles, and branch by abstraction to support performant engineering teams.
- Strong understanding of modern development principles such as trunk-based development, feature toggles, and branch by abstraction to support performant engineering teams.
- Experience working in a team of Android developers participating in code reviews, pull requests, and pair programming, mentoring and coaching other Android developers in a consultative and team-based organization.