Lead Software Development Engineer - Java
We are seeking a seasoned Senior Software Engineer with expertise in Java, Spring Boot, and related technologies to join our high-performing software development team.
Key Responsibilities:
* Design and develop applications through the full SDLC in a DevOps environment.
* Develop low-level design for APIs.
* Create Unit and Integration tests and manage PI Gateways, Web Servers, and Message Queues.
* Take part in Code Reviews and peer programming.
* Test, Debug, and troubleshoot applications as necessary.
Required Experience:
* 7-10 years of hands-on development of Java-based applications.
* Strong experience on Spring modules (Core, MVC, Springboot, AOP, Web Flow).
* Demonstrable experience building Rest APIs with a knowledge of Microservices-based architecture.
* Experience with application containers Docker, Kubernetes.
* Knowledge and experience of working with CI/CD pipelines using tools such as Jenkins, Ansible, and Git.
* Familiarity with basic networking and infrastructure principles including load balancing, and clustering.
* Experience and understanding of Agile ways of working and software development practices Scrum, Kanban, TDD.
Desired Skills:
* Java
* Spring
* Spring Boot
* AWS
* Kubernetes
* Docker