Position: Senior Android Developer for Innovative Consumer and Enterprise Applications
Company: Brightgrove
Experience required: 3y
English level: intermediate

**About the Client**
The customer is a US-based strategic consulting company working in Healthcare, Telecom, and Finance on innovative consumer and enterprise applications.

**About the Project**
The project is a single Android application that is distributed both through an embedded video phone (that we are developing jointly with another vendor) and as a consumer APK that runs on mobile phones and tablets.  This project uses the same web services and SIP stack as the iOS application.

**About the Team**
Development is generally taking place in Ukraine. The management is in NY, other members are located around the US and fill various roles in the project from Product Managers to Testers.

**Responsibilities:**
We are looking for Android developers for both embedded devices and more traditional Play Store Android application development.

Design, build and maintain high performance, reusable, and reliable source code
Ensure the best possible performance, quality, and responsiveness of the application
Identify and correct bottlenecks and fix bugs
Help maintain code quality, organization, and automation
Unit-testing code for robustness, including edge cases, usability, and general reliability
Сustomization of a custom Android system (AOSP) one of the projects uses

**Skills:**
Code against, and promote the use of, OOP, SOLID principles, clean architecture as well as deep knowledge of platform-specific coding conventions and patterns/anti-patterns
Experience with using patterns in your last projects
Ability to write clean, reusable, maintainable and readable code
Strong knowledge of the main Android components and their life cycles as well as their types (when it’s a time to use Activity / Fragment / Custom View?)
Unit testing experience, including testing frameworks, mock objects, code coverage
Experience with platform tools for troubleshooting, debugging and optimizing your code, the most known memory leaks cases in Android apps
Comprehensive knowledge of multithreading in Android (Thread, Handler, HandlerThread, Looper and so on)