Duties and Responsibilities:
- Translate designs and wireframes into high quality code.
- Design, build, and maintain high performance, reusable, and reliable code.
- Ensure the best possible performance, quality, and responsiveness of the application
- Identify and correct bottlenecks and fix bugs.
- Build the libraries and frameworks that support authentication, co-presence, and cutting-edge network protocols.
- Discover, evaluate, and implement new technologies to maximize development efficiency.
BASIC QUALIFICATIONS (Education/Experience)
- Bachelor’s degree in IT, Computer Science or a similar technical field of study, or equivalent practical experience.
- Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes
- Familiarity with RESTful APIs to connect Android applications to back-end services
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience with offline storage, threading, and performance tuning
- Ability to design applications around natural user interfaces, such as “touch”
- Familiarity with the use of additional sensors, such as gyroscopes and accelerometers
- Knowledge of the open-source Android ecosystem and the libraries available for common tasks
- Ability to understand business requirements and translate them into technical requirements
- Familiarity with cloud message APIs and push notification
- A knack for benchmarking and optimizatio
- ·Understanding of Google’s Android design principles and interface guidelines
- Proficient understanding of code versioning tools, such as Git
- Familiarity with continuous integration
- Translate designs and wireframes into high quality code.
- Design, build, and maintain high performance, reusable, and reliable code.
- Ensure the best possible performance, quality, and responsiveness of the application
- Identify and correct bottlenecks and fix bugs
- ·Build the libraries and frameworks that support authentication, co-presence, and cutting-edge network protocols.
- Discover, evaluate, and implement new technologies to maximize development efficiency.
Skills:
· Java
· Kotlin
· RxJava
· Dependency Inversion with Dagger2
· Android SDK
· Material Design
· Model-View-Presenter (MVP) Framework
· Test Driven Development (JUnit, Mockito, Espresso, Robolectric)
· Version control (Git)
· Database design (SQLite)