Requirements:
Must have
Strong hands-on skills in Java, with knowledge of Java 11 or later versions.
Proficiency in Spring/Spring Boot for application development.
Knowledge of Hibernate/JPA and Microservices.
Experience and good knowledge of Spring Cloud.
Experience in writing unit test cases using Junit Jupiter.
Experience with databases, including RDBMS and NoSQL (MongoDB, MySQL)
Strong understanding of Git and any other sub version control system.
Knowledge of build tools like Gradle or Maven
Knowledge of application security, authentication & authorization
Strong knowledge of REST API standards and conventions
Good to have
Some experience with Elastic Search.
Experience with payment gateways like Stripe
Knowledge of dockers and containers
Swagger specification standards
Database migrations with Flyway or Liquibase Understanding of CI-CD
Design:
Familiarity with SOLID principles for software design.
Knowledge of important Java Design Patterns, such as Singleton, Factory, Template, and Strategy, and the ability to use them during software development.
Must follow secure coding standards
Responsibilities:
Develop, test, and maintain high-quality software using Java, Spring/Spring Boot, JUnit Jupiter, and other relevant technologies.
Collaborate with cross-functional teams to define, design, and ship new features.
Ensure code quality and security by adhering to best practices and guidelines.
Participate in code reviews and provide constructive feedback to peers.
Troubleshoot and resolve software defects and technical issues.
Stay up-to-date with industry trends and advancements in Java development.
Contribute to the continuous improvement of software development processes and methodologies.
Keyskills: Java Spring Spring Boot Hibernate JPA Microservices RDBMS NoSQL MongoDB MySQL Git Gradle Maven JUnit Spring Cloud