Android Architect (Closed)
SkillStorm is seeking an Android Architect for our client in Charlotte, NC. Candidates must be able to work on SkillStorm's W2; not a C2C position. EOE, including disability/vets.
Job Description:
- We are looking for a Senior Android Architect, who will help us expand and maintain Payment Application for Android ecosystem. As a Senior Leader you will you help with architecture strategy, solutions and delivery.
- You will be hands-on leader setting examples with proof of concepts, reference implementations, and you’ll support architectural guides and present the work. You will be a key member of the Payment team, and will share design, development, and support responsibilities within the team.
- Design and refactor the company’s Android Applications that power the Payment Terminals
- Contribute to overall architecture and design, working closely with the other architects to execute on long term vision for the company
- Hands on development, plus contributing to the overall software life cycle including participating in code reviews, setting coding standards and introducing new technologies to the team
- Work with Quality Assurance and developers to ensure software builds meet system, Functional and performance requirements and adhere to corporate polices such as security and privacy
- Participate in the design and planning of enhancements to existing products and development of new products
- Strong work ethic and ability to work independently, as well as in an Agile development environment
Required Skills:
- At least 10 years of hands-on experience in mobile development using the Android SDK
- Proficiency in writing testable and maintainable code in Kotlin and / or Java with a focus on design patterns and SOLID principles. Experience with clean architecture is a big plus.
- Very good knowledge and experience in understanding and using MVVM and Android Jetpack components. Experience with MVI and proper state management is a big plus.
- Proper understanding of threading and concurrency, with an emphasis on reactive programming
- Practical knowledge in networking, persistence and development of custom UI components
- Skilled in source control management and code review processes. Experience with CI/CD is a big plus.
- Innovative and active in contributing ideas, solving problems and defining project architecture
- Able to understand the business behind the application in detail
- Capable of translating current and future end user requirements and expectations into products and solutions
- Very good knowledge in Agile principles and methodologies
- Able to give estimates for new features based on minimal requirements / specifications, to prioritize and break down the work into milestones and sprints
- Ownership in the team’s technical development plans, as well as in planning and delegating work for the development team
- Able to identify and escalate risks / issues, and work with engineering management to overcome them
- Proactive attitude with a drive to improve mobile engineering architectures and processes.
- Able to deliver technical presentations and demos within the team. Facilitating knowledge sharing, coaching and mentoring within the team is a big plus.
- Continuous learner interested in knowledge sharing
Desired Skills:
- Software development experience in payment services. Experience with (Android) POS devices is a plus.
- Knowledge of security, cryptography, EMV and card payment systems.
- Experience with Componentization / Modularization to support different hardware and OS.
#LI-DNI