Design and develop software that is reliable, testable, easily maintainable, and resilient Seek continuous learning and improvement for yourself and your team mentor and guide colleagues with less experience Work with Java 8/11 or higher, Spring, Spring Boot, REST, SOAP, JUnit, JIRA, Bitbucket/GIT, Jenkins, SQL Server, Red Hat OpenShift PaaS, Docker, Kubernetes, RabbitMQ, IBM MQ Solid understanding of object-oriented programming - Exception Handling, Collections, Threads Implemented java code using Spring/SpringBoot, Confluent Kafka. Hands on experience is developing Event driven APIs/ Applications Hands-on experience in Spring MVC, JDBC and RESTful APIs. Understanding of code versioning tools such as Git and build tools like Maven, Gradle. Good knowledge of Micro Services. Expert in handling both Json and XML data while writing APIs. Working knowledge with MSSQL, Oracle, MongoDB, or other databases Experience with building and running containerized applications in distributed environments such as Openshift, Docker, Kubernetes. Experience in code-writing for asynchronous communication using messaging queues such as IBM MQ, Rabbit MQ etc. Good exposure to public Cloud like Azure, AWS. Good understanding of app deployment using CI/CD via Jenkins or similar DevOps tools. Closely collaborate with business users and different teams inside the bank Challenge the way we do things and bring in ideas Contribute to solving incidents and defects Be agile and spread these ideas among the team Ready to learn and work newer technologies. Skills Deep understanding of Java, object-oriented design and patterns Knowledge of tools supporting Java development, Java libraries and frameworks Experience of synchronous and asynchronous integration patterns Knowledge or at least high interest in Domain Driven Design, REST API principles, event-driven architecture and design. Good understanding of microservices and the implications of microservice architecture Understanding and experience with CI/CD as well as with testing automation Ability to take ownership and responsibility for the technical decisions in your Scrum team Good communication skills and fluency in English Complete understanding of end-to-end app deployment process from local machine to different environments. Working knowledge on Azure DevOps.