- Shaping and implementing technology/business solutions to contribute to client organization’s competitive differentiation.
- Uses various software development technologies to rapidly develop creative and efficient solutions that enhance client organization’s technology stack.
- Collaborates with other team members to implement user stories, write tests, and continuously deliver new/improved product functionality.
- Communicates with team members to resolve technical dependencies during implementation.
- Reporting to Engineering Manager / Senior Engineering Manager.
- 0-2 years with mobile application development using Java / Kotlin for Android
- Bachelor’s degree in Computer Science or similar, advanced degree preferred with an outstanding record of academic achievement.
- Strong understanding of design patterns over and above MVP, MVVM, and MVC.
- Strong understanding of interactive application development paradigm under Android, memory management, file I/O, network programming, concurrency, and Rx-Java and/or coroutines / live data
- . Expert working knowledge of Java, Kotlin, IntelliJ, Eclipse, and/or Android Studio.
- Hands-on Unit testing and mocking
- Knowledge of CI/CD Azure, Jenkins, Circle, GitLab, … etc. a plus.
- Good understanding of the full mobile development life cycle. Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
- Ability to implement custom native interfaces using the latest Android programming Techniques.
- Experience in engineering practices such as code refactoring, design patterns, design-driven development, continuous integration, building highly scalable applications, and application security.
- Experience in agile, scrum, and/or Kanban development methodologies.