Extensive knowledge of the Android Developers Kit
• Advanced Android UI Skills (Fragments, Custom view components)
• Writing multi-threaded apps and Experience with offline storage, threading, and performance tuning
• Application submission/provisioning process
• Debugging and analysis skills using ADBFamiliarity with cloud message APIs and push notifications
• Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen s
• Familiarity with RESTful APIs to connect Android applications to back-end services
• Strong knowledge of Android UI design principles, patterns, and best practices
• 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
• Knowledge of Android Material Design and MEAPs
• Experience with Android Studio or Eclipse with ADT
• Understanding of Google’s Android design principles and interface guidelines
• Proficient understanding of code versioning tools, such as Git
Good to Have Skills :
• Ability to clearly present technical ideas and high-level concepts and solutions to internal and external team members who have varying degrees of technical knowledge.
• Understanding of performance testing and optimization techniques
• Understanding of recommended design patterns and architectures
• Familiarity with usability concepts within mobile design
• High proficiency with development tools and workflows (modern source control systems, unit testing, continuous workflow, etc.)
• Ability to interpret requirements to produce a design that conforms to specifications
• Experience with the Systems Development Life Cycle (SDLC)
• Design and build advanced applications for the Android platform
• Collaborate with cross-functional teams to define, design, and ship new features.
• Unit-test code for robustness, including edge cases, usability, and general reliability.
• Work on bug fixing and improving application performance.
• Continuously discover, evaluate, and implement new technologies to maximize development efficiency.