Responsibilities
Develop and maintain Java-based applications using Spring Boot, ensuring high performance, scalability, and security in a microservices architecture.
Design, implement, and document RESTful APIs that provide reliable data communication across front-end and back-end components.
Optimize and manage database interactions using JPA/Hibernate, including writing efficient queries and implementing caching strategies for high-performance data retrieval.
Implement CI/CD pipelines to streamline and automate the development, testing, and deployment processes.
Write clean, maintainable, and testable code following best practices, including SOLID principles and effective code structuring.
Apply Test-Driven Development (TDD) principles, focusing on a “test-first, code-next” approach to ensure code reliability and maintainability.
Engage in pair programming sessions to collaborate, share knowledge, and improve code quality with other developers.
Collaborate on front-end integration with React or Angular teams, ensuring smooth functionality and seamless user experiences.
Automate testing using frameworks like JUnit and Mockito to maintain high code quality and reduce manual testing efforts.
Skillset & Experience Required:
Minimum of 8-10 years of experience in Java Full Stack Development, with a proven track record of successful projects
Java 8 and above– Extensive experience in core and advanced Java, with a strong understanding of OOP principles and design patterns.
Spring Boot 2.X and above– Proficient in developing scalable and secure backend services, with experience in microservices architecture.
JPA/Hibernate – Expertise in Java Persistence API and Hibernate for ORM, with a strong understanding of relational database mapping and optimization.
Spring Restful Services and Spring Micro Services – Skilled in designing and implementing RESTful APIs with JSON/XML data handling and knowledge of API best practices.
Jenkins, Gitlab, Kubernetes for GCP deployment is a plus
React/Angular (optional) – Familiarity with modern JavaScript frameworks to support front-end development when needed.
Code Quality – Emphasis on writing clean, maintainable, and testable code that aligns with software engineering best practices.
Test-Driven Development (TDD) – Focused on a "test-first, code-next" approach, using tools like JUnit, Mockito, and knowledge of unit and integration testing frameworks.
Pair Programming – Ability to effectively collaborate and solve problems with peers in a paired coding environment.
Bachelor's degree in Computer Science