Java Developer (Spring Boot, Microservices, Apache Kafka, RabbitMQ, Kubernetes, Temporal, OAuth, Redis, Grafana, ELK Stack)
EXASOFT CONSULTING PTE. LTD. Java Developer (Spring Boot, Microservices, Apache Kafka, RabbitMQ, Kubernetes, Temporal, OAuth, Redis, Grafana, ELK Stack)
Responsibilities
- Design, develop, and maintain scalable, high-performance Java applications using Java and Spring Boot.
- Develop and maintain microservices-based applications using RESTful APIs and event-driven architecture.
- Implement secure authentication and authorization using OAuth , JWT, and Spring Security.
- Design and optimize database schemas, complex SQL queries, and stored procedures using Oracle and MySQL.
- Implement asynchronous processing and event streaming using Apache Kafka and RabbitMQ.
- Develop and deploy containerized applications using Docker and Kubernetes.
- Build and maintain CI/CD pipelines using Jenkins and GitLab CI/CD.
- Implement distributed caching using Redis and optimize application performance.
- Develop reliable background workflows and distributed task orchestration using Temporal.
- Implement monitoring, logging, and troubleshooting using Elasticsearch, Logstash, Kibana (ELK), and Grafana.
- Write unit and integration tests using JUnit and Mockito, ensuring code quality and reliability.
- Apply SOLID principles, design patterns, and Domain-Driven Design (DDD) in application development.
- Conduct code reviews, troubleshoot production issues, and collaborate with cross-functional teams to deliver reliable software.
Requirements
- 8+ years of professional experience in Java application development, including experience developing and maintaining production-grade applications.
- Strong hands-on experience with Java , Spring Boot, and microservices architecture.
- Proven experience designing and developing secure RESTful APIs using Spring Security, OAuth, and JWT.
- Strong experience with Apache Kafka and RabbitMQ for event streaming and asynchronous messaging.
- Hands-on experience with Docker, Kubernetes, and CI/CD pipeline automation using Jenkins or GitLab CI/CD.
- Experience in database including Oracle, MySQL, complex SQL queries, query optimization, and stored procedures.
- Practical experience implementing Redis caching and optimizing distributed application performance.
- Experience with Temporal or similar workflow orchestration platforms.
- Hands-on experience with Elasticsearch, Logstash, Kibana, and Grafana for application monitoring and troubleshooting.
- Experience in unit and integration testing using JUnit and Mockito.
- Experience in SOLID principles, design patterns, Domain-Driven Design, and distributed systems.
- Excellent problem-solving, debugging, communication, and teamwork skills.