Work closely with the product management team to ensure we're building the best products.
Ability to lead a small team (globally distributed) of 4-6 individuals and help drive sound architecture, engineering design, process and quality practices, and perform acceptance engineering
Ability to comprehend business requirements and be able to map them to technical data requirements.
Strong emphasis on code automation so it is maintainable and extensible
Perform research, analysis, design and implementation and provide effective solutions for short term and long term needs
Support and migrate existing systems to micro-services
Evaluate new technologies and software products to determine the feasibility and desirability of incorporating their capabilities into the platform.
Contributes as a hands-on software developer.
Qualifications
Master’s or Bachelor’s degree in Computer Science, with strong fundamentals and problem solving skills.
8+ years experience in software development roles
Experience in leading a product from concept to prototype and implementation
We use Angular for our micro-front end architecture, backed by GraphQL BFF services. Experience with this or similar frameworks is desired
We build microservices on AWS (including a variety of managed services) and GCP using following technologies: Java 11/Spring boot (Strong knowledge of spring and related modules, spring boot, reactive programming), PostgreSQL,MongoDB, DynamoDB, Docker and Kubernetes (EKS). Experience with git/ Bitbucket, Jira, Jenkins.
Computer Science fundamentals experience in data structures, algorithm design, problem solving, and complexity analysis
Expert knowledge and capabilities in OO design/development
Skills
Software Design, Implementation (i.e. coding), and Testing.
Ability to work with onsite and remote teams
Communication – be able to communicate information to persons with varying degrees of computer knowledge.
Problem solving and troubleshooting skills.
Desire to expand knowledge in many development languages, applications, and tools
Proven ability to quickly learn new processes and tools, business domains and technical applications
Ability to think technically and analytically
Must have strong time management skills - including the ability to work well under pressure, plan, set priorities, adapt to change, and meet established timelines