Android Engineer - Connected Bikes
Listed and Certified by Great Place to Work, Trek Bicycle is a global leader in the design and manufacture of bicycles and related products. Trek believes the bicycle can be a simple solution to many of the world’s most complex problems and is committed to breaking down the barriers that prevent people from using bicycles more often for transportation, recreation, and inspiration. Our mission is to create products we love and take care of our customers. We value our team, making sure the best is on the field. We value new ideas from anywhere, inspiring others with our positive energy, dealing with reality to make the tough calls, applying a carefully planned/pragmatic approach to mobile development and turning ideas into reality.
Trek IT believes in crafted software, end-to-end ownership of products, fast, yet well planned iterations. We believe in using the best tool for the job, often taking advantage of the latest technology to solve complex problems. We provide a flexible work environment, remote work is available, however, some travel may be required.
Come, join us, and help us transform the world, the bike, and have a blast while doing it!
Trek Bicycles is looking for an Android Mobile Software Engineer to join our emerging innovation team. You should have extensive experience in full-lifecycle Mobile Software Engineering; including but not limited to requirements analysis, architectural considerations, proof of concepts, engineering design, unit test development, native mobile ci/cd pipeline creation and maintenance, developing complete apps, adding new features, utilizing Mobile Application Performance Management (MAPM) tools, configuring pipelines to deploy to device farms as well as internal and external distribution channels such as Hockey and Google Play Console and engaging in internal/external post-production maintenance.
The Trek Mobile innovations team has also built an amazing tech stack which you will have the opportunity to work with and contribute to; we use cutting-edge technologies in all facets of our team.
You’ll have the opportunity to work in an agile environment and collaborate with the development, design team and product owner to create awesome native mobile digital experiences which embrace the Trek brand and meet both our internal and external consumer’s needs and surpasses all performance, security, quality and user experience expectations.
We look for team members who are self-starters, take ownership of all assignments by meeting deadlines and raising issues appropriately, driven to continuously learn and improve, stay abreast of emerging mobile technologies and advocates software engineering best practices. This position reports to the Mobile Engineering Manager/Sr. Mobile Architect.
Essential Duties and Responsibilities:
- Using Trek’s Native Mobile Architecture and Coding Standards as a basis, create Software Engineering Design Specifications
- Adhere and contribute to architectural, coding, design, quality, security and performance standards
- Design and build applications and features for the Android Platform
- Using Bluetooth, ANT+ and other NFC technologies, develop applications which interface with peripherals
- Actively participate in design, code and test reviews
- Follow best practices for development such as continuous integration, unit and integration testing, performance testing, automated deployments and code coverage analysis
- Work closely with QA to help ensure quality, performance and security inefficiencies are exposed and mitigated at the design/requirement phase rather than in active development and in subsequent phases
- Assist in analyzing and troubleshooting issues and defects in environments as well as performance or design inefficiencies
- Actively participate in a SCRUM team; following agile patterns and methodology
- Communicate with peers and among various divisions of Trek in a participatory environment
- Stay abreast of latest technologies, new frameworks, language/ide versions and native mobile tools used to improve software development and delivery
- Own the quality, performance and timeliness of your work
- Mentor and help guide junior mobile developers
- Be self-motivated and require minimal supervision
- Celebrate all facets of diversity and inclusion and thrive in an environment where everybody’s unique contributions are welcome
Required Qualifications | Education, Experience, Knowledge, Skills and Attributes:
- Bachelor's degree in Computer Science, Computer Engineering or equivalent experience is preferred
- 1-3 years of enterprise-level native Android development experience using Java and (preferably) Kotlin
- A solid grasp of Android architecture, design patterns and tradeoffs
- Current in Mobile performance and security best practices
- Appreciates clean architecture and documentation
- Ability to accurately estimate projects and tasks and deliver on estimates
- Links/access to recent Android projects; preferably via Github, Bitbucket or Assembla
- Extensive experience Interfacing and developing Bluetooth applications using Android Bluetooth framework
- Have published at least two enterprise-level apps on Google Play Store
- Experience monitoring mobile applications and end user mobile application performance
- Exceptional technical documentation skills
Additional preferred experience:
- Experience using Android Jetpack
- ANT+ or other NFC technology expertise
- Experience with microprocessor firmware development and design
- iOS Development experiencing using both Swift and Objective-C development languages
- Experience with iOS mobile design patterns and unit testing
- Experienced managing and deploying apps to App Store Connect for testing and App Store distribution
- Hands-on experience working as a Mobile Software Test Engineer
- Experience creating Mobile Automation Frameworks
- Wear OS development experience
We are an E-Verify employer.