Overview
Java Microservices Developer role at Citi in Pune, participating in the establishment and implementation of new or revised application systems and programs with the Technology team.
What you'll do
- Design, develop, and maintain microservices using Java and Spring Boot
- Build scalable, distributed, event-driven services using Kafka
- Build and consume RESTful APIs
- Implement service-to-service communication, resiliency patterns, and fault tolerance
- Write clean, testable, well-documented code following best practices
- Collaborate with cross-functional teams (DevOps, QA, Product) in an Agile environment
- Optimize application performance, scalability, and reliability
- Participate in code reviews, design discussions, and technical decision-making
- Troubleshoot and resolve production issues
What you'll need
- Bachelor's degree in Computer Science, Engineering, or related field
- 5+ years of professional Java development experience, with significant time in microservices
- Java 21 with Spring Boot and Microservices (Kafka)
- Strong Java fundamentals: Streams, Lambdas, Records, Virtual Threads
- Strong problem-solving ability to troubleshoot, debug, and resolve complex production and design challenges
- Building and consuming REST APIs, with service-to-service communication and resiliency patterns
- Core Java: Java 21 (Streams, Lambdas, Functional Interfaces, Collections, Concurrency, Records, Virtual Threads), strong OOP, design patterns, and data structures
- Frameworks: Spring Boot, Spring MVC, Spring Data JPA
- Microservices design principles and patterns; RESTful API design
- Resiliency libraries (Resilience4j / Hystrix)
- Kafka: event-driven messaging and streaming
- Databases: Oracle
- Build and tooling: Maven, Git, GitHub/GitLab/Bitbucket
- Testing: JUnit, Mockito, integration testing, TDD
- DevOps and CI/CD: Docker, Kubernetes, CI/CD pipelines with Harness
- Candidate requires knowledge of: JDK 21, Spring framework, webservice, microservice design, messaging service, GitHub
Nice to have
- Spring Batch: designing and maintaining batch processing jobs for high-volume data handling
Details
- Location: Pune, Maharashtra, India
- Time type: Full time
- Job family group: Technology; job family: Applications Development
Read the full description and apply on the company’s own careers page.