Software Engineer - Android
Job Description (ANDROID): We are looking for an Android Developer who possesses a passion for pushing mobile technologies to the limits. This Android app developer will work with our team of talented engineers to design and build the next generation of our mobile applications. Android programming works closely with other app development and technical teams.
• Translate designs and wireframes into high quality code
• Design, build, and maintain high performance, reusable, and reliable Java code
• Ensure the best possible performance, quality, and responsiveness of the application
• Ability to understand business requirements and translate them into technical requirements
• Identify and correct bottlenecks and fix bugs
• Help maintain code quality, organization and automatization
• Highly proficient with Java/Android Studio/REST/Latest libs and framework, UI applications, Gradle Knowledge
• Strong knowledge of Object Oriented Analysis and Design, Software Design Patterns and Java coding principles
• Experience in consuming web services (SOAP/REST/AXIS) and processing data (XML/JSON) is essential.
• Understanding of Thread Life Cycle, JVM, Performance
• Worked with frameworks and libraries like Dagger, Rxjava, EventBus, Retrofit, Glide etc.
• Should be familiar with at least one of the architectural patterns like MVP, MVVM, MVC.
• Proficient understanding of code versioning tools, such as Git
• Experience in VoIP Technologies is an added advantage.
• Familiarity with cloud message APIs and push notifications
• Familiarity with continuous integration
Additional (nice to have) Requirements:
• Knowledge of iOS native mobile application development and hybrid cross-platform application development on HTML, CSS and JS frameworks.
• Knowledge of Android things (IoT) framework.
• Knowledge on AI development
Education: Bachelor's degree in Computer Science or related field or equivalent degree.