Senior Software Engineer - Android
Come join Under Armour's digital division, creating software to power the future of connected fitness. We're serious about individual growth and athletic achievement, and we'd like you to join us to build real products that will help millions of people improve their lives through better health and fitness. You will learn, grow and play in an environment that focuses on results and delivery, all backed by one of the strongest consumer brands in history. Will you…PROTECT THIS HOUSE?
We're looking for a Senior Software Engineer for Android mobile development with a focus on Connected Devices. You will be focused on delivering best-in-class mobile applications for Android, which communicate with next generation Bluetooth hardware. You will work alongside engineers, designers and product professionals to successfully deliver the product and engineering roadmap. To thrive in this role you will need to execute well in an agile environment, own solutions from idea to implementation and delivery, encourage pragmatic decisions and tight feedback loops and take calculated risks based on collaboration with your peers.
- Participate in the full SDLC (Agile), including estimation, planning, and design sessions.
- Own projects from inception to delivery and support.
- Actively find solutions for problems by using all tools at their disposal
- Champion best practices of Android development amongst our team.
- Collaborate with teams across functions (including but not limited to: Design, Product Management, Project Management, Engineering, QA) to deliver software solutions.
- Initiate and participate in architecture and systems design discussions with team.
- Act as a driving force for constantly improving performance, scalability, extensibility, reliability, availability and usability.
- 3+ years of software development experience in a highly agile environment
- 3+ years of experience implementing mobile solutions on Android
- Regularly writes unit and integration tests in both JVM and Instrumented environments
- Familiarity with Gradle and Android Studio
- Experience working with backend APIs (preferably in a RESTful architecture)
- Experience mentoring junior engineers
- Solid comprehension of Git
- Familiarity of software design patterns and anti-patterns
- Regularly document code
- Participate regularly in code reviews
- Experience being a "hands-on" engineer building prototypes as well as troubleshooting production issues
- Experience in all aspects of the software life cycle including providing support and services to other areas of the organization
- Experience managing business expectations and scope as well as providing technology recommendations
- Strong written and verbal communication and presentation skills for internal and external audiences
Preferred Skills (or Things You'll Learn on Our Team):
- Experience with Bluetooth Low Energy APIs on Android
- Experience with localization and solid understanding of constraints when localizing apps
- Experience working with Android Library modules
- Experience deploying artifacts to Maven
- Experience writing Gradle scripts
- Experience writing Jenkins Pipeline scripts
- Experience or familiarity with Kotlin
- Experience Implementing integrated hardware and software solutions
- Experience supporting a product with a consumer base of > 1MM Monthly Active Users strongly desired.
- Comfortable speaking in front of groups
- Computer Science BS or similar degree, or equivalent job related experience