Position: Senior Android developer
Company: Software MacKiev
Experience required: 5y
English level: intermediate

We are looking for a person who is eager to take part in the creation of enterprise-level solutions to join a team at MacKiev. We offer a fast-paced, collaborative environment that stimulates ideas and innovation. If you're committed to the highest standards of excellence and want to learn from and collaborate with some of the most respected and recognized experts in the industry, this is the position for you. 

The product is an application which allows to use proprietary device functionality on Android. App development requires skills and experience in local and remote networking, usb, bluetooth and other communication protocols as well as UI components. Primarily language for product is written using Kotlin, but Java knowledge is required for decent portions of application.

Requirements:
5+ years of experience in Android apps development using Kotlin/Java
Deep practical knowledge of Android Java SDK and core Android libraries
Strong understanding of HTTP, RESTful API with JSON, WebSocket
Strong knowledge of activities and services lifecycle
Experience of integration with RESTful web services is a must
Strong understanding of design patterns MVP, MVVM
Strong knowledge of Android UI design principles
Strong experience writing Unit Tests in TDD or BDD process
Experience with git/GitFlow
Working experience with NDK is a plus
Experience with BLE/NFC is a plus

Responsibilities:
•	Design and develop a modern Android application capable of integrating multiple third-party libraries
•	Use best practices to minimize impacts to user experience, such as battery drain, ANRs, unresponsive UI, etc. 
•	Ability to read through third-party developer code, understand flow and function, and make improvements as needed