Summary: A successful candidate will have an established background in developing customer-facing experiences, a strong technical ability, excellent project execution skills, great communication skills, and a motivation to achieve results in a fast-paced environment.
Responsibilities:
Work with a team of engineers in design, development, test and deployment of highly scalable and configurable products on web and mobile platforms which work on cross-browser, cross-platform.
Work with product and design teams to understand business requirements, to develop new ideas and explore new opportunities. Your opinion matters and you&rsquoll have opportunities to be involved in design meetings to propose, discuss and refine new features and functionality.
Collaborate and work with cross-functional teams to develop and deliver E2E solutions providing high availability and configurability that bring real business value.
You will be responsible for communicating to stakeholders on technical standards, principles, methodology and trends.
Adhere to and own end-to-end quality of deliverables during all phases of the software development lifecycle including secure development, localization and internationalization.
Write code that is designed to be reusable and that can be shared amongst other teams
Develops and communicates technical processes, standards, and best practices to the team
Be willing and able to learn new technologies and programming languages when the need to do so arises
Able to work with abstract architecture and move existing nongeneric code to a more generic and abstract framework when necessary
Work on test automation: TDD, unit/integration/functional and accessibility testing.
Maintain and enhance the existing architectural documentation and create the new one as needed
Mentor and coach less experienced engineers.
Requirements:
Bachelor&rsquos Degree or equivalent experience in software development.
Minimum 5 years experience delivering enterprise class Android applications and services, with at least 3 most recent years working on Android app development.
Professional experience as an Android Developer using Jetpack Compose, Hilt/Dagger, Kotlin Coroutines, GraphQL/Apollo or REST/Retrofit, Java, Android SDK, Android NDK You have experience in publishing an application on the Google Play store.
Proven work experience in mobile architecture such as MVVM/MVC/MVP and clean architecture.
Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
Familiar with dependency injection framework.
Solid understanding of the full mobile development life cycle.
Proficient understanding of code versioning tools such as Git
Familiarity with various testing tools.
Unit-test code for robustness, including edge cases, usability, and general reliability
Solid understanding of Object-Oriented design and concepts with ability to analyze requirements and transform into scalable software designs.
You must be a self- starter, work independently or as a team member, and have strong communication skills in interfacing with business partners and the Technology.
Ability to effectively articulate technical challenges and solutions
Familiarity with RESTful APIs to effectively integrate Android applications, Message Queue, Distributed/Scalable Architecture. Experience with competent designing and building Android services/microservices in an enterprise setting.
Competent in software engineering tools (e.g., build tools) and best practices (e.g., unit testing, test automation, continuous integration, etc.).