Job Title: Java Software Engineer
Location: Onsite
Experience: 2–5 years
Employment Type: Full-Time
Job Summary:
We are seeking an experienced Java Developer with 2 to 3 years of hands-on experience in building applications using Java, Spring Boot, and Microservices architecture. The ideal candidate should also have a basic understanding of JUnit for testing and cloud platforms.
Key Responsibilities:
· Design, develop, and maintain backend services using Java and Spring Boot
· Build and maintain microservices and REST APIs
· In-depth experience in building RESTful APIs and microservices using Spring Boot.
· Proficient in using Spring Boot starters, auto-configuration, and Spring Security.
· Integrated Spring Data JPA with Spring Boot applications and handled database migrations using tools like Flyway or Liquibase.
· Experienced in working within Agile/Scrum environments, participating in daily stand-ups, sprint planning, retrospectives, and backlog grooming.
· Familiar with Agile tools such as JIRA, Confluence, or Azure DevOps for tracking stories, tasks, and sprint progress.
· Actively contributed to sprint ceremonies and ensured timely delivery of features aligned with sprint goals and definition of done.
· Experience integrating with databases, Kafka, or third-party APIs using Spring Boot modules.
· Write unit and integration tests using JUnit
· Collaborate with DevOps and QA teams to ensure cloud deployment and testing
· Debug and resolve technical issues across the application stack
· Implement best practices in coding, testing, CI/CD, and security.
· Hands-on experience managing project dependencies and build lifecycles using Maven and/or Gradle.
· Expertise in configuring multi-module Java projects with custom build profiles and plugins.
· Familiar with automating build, test, and deployment workflows using Maven/Gradle in CI/CD pipelines.
· Proficient in Git version control, including branching, merging, rebasing, and resolving conflicts.
· Worked in teams using Git-based workflows like Git Flow or Feature Branching.
· Experience using Bitbucket for source code management, pull requests, code reviews, and repository administration.
· Strong knowledge of SQL for querying and managing relational databases like MySQL, PostgreSQL, or Oracle.
· Skilled in writing complex joins, subqueries, stored procedures, and performance tuning.
· Experience with integrating SQL queries within Java applications using JDBC, JPA, or Spring Data JPA.
· Extensive experience in unit testing Java applications using JUnit 4/5.
· Skilled in writing parameterized tests, assertions, and test lifecycle hooks.
Required Skills & Experience:
· 2–3 years of strong hands-on experience with Java and Spring Boot
· Proven experience in developing and deploying microservices
· Proficient in using Spring Data JPA for ORM (Object-Relational Mapping) and seamless integration with relational databases.
· Deep understanding of entity relationships (OneToMany, ManyToOne, etc.), lazy/eager loading, and cascade types.
· Familiarity with JUnit for writing and executing test cases
· Basic understanding of cloud platforms like AWS, Azure, or GCP
· Strong knowledge of RESTful APIs, JSON, and HTTP
· Experience with version control tools like Git
· Experienced in working within Agile/Scrum environments.
· Familiar with Agile tools such as JIRA, Confluence, or Azure DevOps for tracking stories, tasks, and sprint progress.
Nice to Have:
· Exposure to CI/CD tools like Jenkins, GitLab CI/CD, etc.
· Knowledge of Docker, Kubernetes, or any container orchestration
· Experience with message brokers like Kafka or RabbitMQ
Educational Qualification:
Bachelor’s degree in Computer Science, Information Technology, or related field.