2+ years’ experience in Java, Full-stack, development experience is required
Experience working with GitHub and/or GitLab, SonarQube, JUnit, Spring Boot
Skilled in writing, designing unit test cases using TDD and BDD methodologies
Hands on experience of virtualizing services for test automation using tools such as Wire Mock, Mockito etc.
Automation-minded: Hands on experience of designing and writing automated tests for backend applications and data flow, using tools such as Postman, REST Assured, Cypress, Ready API etc.
Hands on experience of working with continuous integration tools such Jenkins, Circle CI.
Broad hands on experience in AWS Cloud serverless components and ability to build and maintain cloud data processing systems (i.e. ECS, EKS, S3, Lambda, SQS/SNS, PostgreSQL, Dynamo, Sagemaker, Athena, etc.)
Experience using relational and object databases and web service development standards and practices, including RESTful APIs, micro-services, and services
Experience working in an agile development environment using workload management tools like VersionOne/Agility
Expert troubleshooting and deployment experience with strong understanding of transforming business and functional requirements into efficient technical solutions
Experience with system integrations, optimizing performance and data integrity
Strong technical and non-technical communication skills. Assures smooth flowing, timely transmission of critical information.
Excellent judgment and problem-solving skills; individual should be able to resolve urgent problems in a calm and quick manner and display a high degree of initiative and drive
Ability to be effective in a high stress environment
Be flexible and embrace challenges that are outside of your comfort zone (PREFERRED QUALIFICATIONS)
Bachelor's Degree in Computer Science, Information Systems, with 4+ years of relevant technical experience or Master’s degree in Computer Science, Information Systems with 2+ years of technical experience.
Hands on experience of creating test reports from automation test run using tools such as cucumber report, Extent report etc.
Experience with OpenShift • Working knowledge of MQ
AWS Certification is a plus
DevOps and/or automation experience in code testing, building, and deployment a plus
Experience building computer software within the airline industry is a plus
Knowledge of Windows Server and HP-UX operating systems a plus
Responsibilities:
Develop amazingly efficient and effective software using Java, C#, Python, .Net, Spring Boot, Microservices, APIs
Enhance and maintain on prem and internal PAAS applications, and actively rework these to AWS along project timelines
Help to design and implement serverless patterns from containerized applications
Build industry standard APIs and help with establishing, consuming & routing calls, connectivity protocols and policy
Design, develop and implement architecture patterns that are optimized for SLAs, reliability, and cost
Look upstream and downstream to see around corners and anticipate future consequences for immediate technical choices
Help to establish and grow a culture of software craftsmanship best practices, including TDD/BDD and Test Automation (both Unit and Integration), Continuous Integration, and Continuous Deployment
Drive performance improvements including monitoring, detailed metrics, problems, trends, and costs, in order to determine solutions, required process changes, etc. that will make the function more efficient
Ensure adherence to security standards and compliance with privacy rules and regulations early in the development
Be aggressive to resolve and prevent technical debt
Actively engage in Agile software development activities, including sprint planning, daily standups, and retrospectives, with an aim to continuously improve
Collaborate frequently to share ideas and gain perspective. Communicate critical information in a clear and timely manner, listen to others, and seek clarification to confirm shared understanding
Initiate and lead code reviews and continuous improvement efforts
Create usable documentation/playbook(s)
Effectively analyze tradeoffs between usability and performance needs – communicate these across the team
Optimize pace and meet deadlines
Administer product upgrades and patches
Provide assistance and support other team members where required, including troubleshooting and maintenance of production systems/programs/applications
24/7 On-call support rotation function is a component of this role