Android Applications Developer
The Job Description
We are looking for a solid mid-level, or senior Android developer to join us in creating high-quality software for health and fitness professionals. Our apps are used by thousands of people, worldwide. At the core, our Android apps are designed for business users and their clients.
You will contribute to developing, deploying, and architecting our mobile applications. Writing robust, scalable, testable native application code should come as second nature to you. You will be intimately involved with all stages of the software development process from product ideation to application deployment providing your unique perspective along the way. You will maintain full responsibility for ensuring our mobile applications work reliably providing a unique experience to our users.
Offered to direct candidates only. No Recruiters. No programming service providers.
The Daily Routine
- Work closely with the product teams to determine feature requirements.
- Provide requirements feedback on feasibility and effort.
- Architect, design, and build products from feature ideation to deployment.
- Design and implement clean, uncluttered, attractive and intuitive user interfaces.
- Write robust, maintainable code that follows best practices for the Android platform.
- Test your implementation including unit, integration, and regression testing.
- Deliver robust and scalable mobile solutions to market.
- Ensure that features are delivered efficiently and on-time.
- Maintain new and existing Android applications, and resolve bug reports.
- Our team members are scattered throughout the country so you must be comfortable working independently, and with team collaboration tools.
The Skills You’ll Bring to Our Team
- Excellent debugging and problem-solving; the most critical skill you can have.
- Strong Java and OOP skills, specifically related to Android.
- Experience with the Android SDK performance tools and optimization techniques.
- Strong unit testing, development testing, and defect prevention skills.
- 3+ years of professional development experience building Android applications.
- Good version control practices, with git or other modern source control system.
- Experience with common libraries such as Crashlytics, Google Play services, AWS, Firebase, Volley, Facebook, Dropbox.
- Experience with unit and integration testing.
- Excellent written and verbal English skills.
… Extra Skills That Make You Special
- A desire to learn other programming languages as needed.
- Experience developing 3D software, ARCore, and image processing.
- Statistics and machine learning experience.
- Experience building iPad and iPhone apps.
- Proven track record of successfully releasing apps on Google Play (please include names and links on your resume).
- Keen attention to detail on every line of code, every unit test, and every commit message.
- Comfortable with rapid development cycles and changing schedules.
- Github or StackOverflow profiles.
- Unlimited time off. Yes, seriously. Hit your deadlines and keep us frequently updated.
- Work from home.
- Flexible work times.
Our team has built software that has changed the way health and fitness professionals engage with their customers. We pride ourselves on our laid-back approach and don’t keep crazy schedules. We avoid setting ourselves up for unrealistic deadlines. We’re a group of professionals who respect each other and have fun creating. We respect the R&D process and encourage it, so we can learn about new projects we may pursue. We give our developers the opportunity to work on a variety of exciting projects using both ground-breaking and modern tools.
- We are a very small group of senior developers and product managers.
- We follow a flexible schedule of goals and deadlines.
- Our release dates are usually flexible, and the business listens to our concerns.
- We use Git for source control.
- We maintain a clean, stable branch, allowing us to build and publish builds on-demand.
- We track bugs and new feature requests in JIRA.
- Our flexible schedule allows us to switch between fixing existing bugs and working on new features.