Senior Java Developer (Spring Boot, Microservices & Kafka)
Description
Job Summary
We are looking for a highly skilled Senior Java Developer with 5+ years of hands-on experience in designing, developing, and maintaining scalable enterprise applications. The ideal candidate must have strong expertise in Core Java, Spring Boot, Microservices, Apache Kafka, REST APIs, and database technologies.
The candidate should be technically strong, proactive, and capable of independently handling development activities, troubleshooting complex technical issues, setting up applications locally, and supporting deployments across SIT and UAT environments.
Key Responsibilities
- Design, develop, test, and maintain scalable enterprise applications using Core Java and Spring Boot.
- Develop and maintain RESTful APIs, microservices, and backend application components.
- Implement event-driven architecture and asynchronous communication using Apache Kafka.
- Work with Kafka producers, consumers, topics, partitions, offsets, and message processing.
- Understand business and technical requirements and translate them into efficient, maintainable code.
- Independently analyze requirements, review technical documentation, understand application flows, and deliver assigned features.
- Set up, configure, and troubleshoot applications in local development environments.
- Identify and resolve build failures, dependency issues, runtime errors, configuration problems, and application integration issues.
- Understand and support application deployment processes across SIT and UAT environments.
- Debug application issues, perform root-cause analysis, and optimize application performance.
- Work with relational and NoSQL databases to develop efficient queries and data access layers.
- Participate in code reviews and ensure adherence to coding standards, security practices, and development best practices.
- Collaborate with Tech Leads, architects, QA engineers, DevOps teams, and business stakeholders.
- Participate in Agile/Scrum ceremonies, sprint planning, estimation, and release activities.
- Take ownership of assigned development tasks and ensure timely delivery with minimal supervision.
Mandatory Technical Skills
- 5+ years of hands-on experience in Java development.
- Strong expertise in Core Java, OOP concepts, Collections, Multithreading, Exception Handling, and Java 8 or above.
- Strong hands-on experience with Spring Boot, Spring MVC, and Spring Framework.
- Extensive experience in Microservices architecture and application development.
- Strong experience in REST API development and integration.
- Practical working knowledge of Apache Kafka, including producers, consumers, topics, partitions, offsets, and error handling.
- Experience with Hibernate, JPA, and Spring Data JPA.
- Strong database knowledge of MySQL, PostgreSQL, Oracle, or SQL Server.
- Experience with SQL queries, database design, and query optimization.
- Hands-on experience with Git, Maven/Gradle, and version control systems.
- Understanding of SDLC, Agile methodologies, and software development best practices.
- Strong debugging, troubleshooting, and root-cause analysis skills.
- Ability to independently configure and run applications in a local development environment.
- Working knowledge of application deployment processes and SIT/UAT environments.
Good-to-Have Skills
- Experience with cloud platforms such as AWS, Azure, or GCP.
- Knowledge of Docker and Kubernetes.
- Experience with CI/CD tools such as Jenkins, GitHub Actions, or GitLab CI.
- Knowledge of RabbitMQ, Redis, and caching technologies.
- Exposure to application monitoring, logging, and performance optimization tools.
- Understanding of distributed systems, event-driven architecture, and asynchronous processing.
- Experience with unit testing frameworks such as JUnit and Mockito.
Required Professional Skills
- Strong analytical and problem-solving abilities.
- Ability to work independently and take ownership of technical deliverables.
- Strong understanding of existing codebases and application workflows.
- Ability to identify technical blockers and resolve issues without prolonged dependency on others.
- Good communication and collaboration skills.
- Ability to work effectively in a fast-paced development environment.
Education
- B.E./B.Tech, BCA, B.Sc. in Computer Science / Information Technology or equivalent qualification.
- MCA / M.Tech or relevant postgraduate qualification preferred.
Skills
- Agile
- API
- AWS
- Azure
- CI/CD
- Cloud
- DevOps
- Distributed Systems
- Docker
- Event Driven Architecture
- GCP
- Git
- GitHub
- GitHub Actions
- GitLab
- Gradle
- Hibernate
- Java
- Jenkins
- JPA
- JUnit
- Kafka
- Kubernetes
- Maven
- Microservices
- Mockito
- Multithreading
- MVC
- MySQL
- NoSQL
- OOP
- Oracle
- PostgreSQL
- RabbitMQ
- Redis
- REST
- Root Cause Analysis
- Scrum
- SDLC
- Spring
- SQL
- SQL Server
- Unit Testing
- Version Control