Overview
We are seeking a Lead Software Engineer – Java with Azure to join our team and contribute to a large, multi-module codebase spanning multiple repositories and integrations. The ideal candidate will thrive in a complex environment with multiple databases, Azure integrations, async messaging flows and a mix of legacy and modern modules, while driving technical excellence and product impact.
Responsibilities
- Develop and maintain Java applications using the Spring ecosystem across a multi-module codebase
- Design and implement RESTful APIs following OpenAPI specifications and best practices
- Work with relational databases including writing queries, managing JPA/Hibernate and handling schema evolution
- Build and maintain asynchronous, event-driven architectures using message queues
- Manage containerized environments and CI/CD pipelines for deployment and orchestration
- Integrate with Azure cloud services across various components of the platform
- Write unit and integration tests with strong code coverage discipline
- Identify and resolve technical issues such as stale dependencies, flaky tests, architectural drift and security gaps proactively
- Participate in design decisions and push features forward with an end-user impact mindset
- Articulate technical trade-offs, document decisions and maintain coding standards and architecture documentation
- Collaborate across service boundaries with multiple teams and stakeholders
Requirements
- 8+ years of professional experience in Java and the Spring ecosystem (Spring Boot, Spring Data JPA, Spring Security)
- Strong background in relational databases, specifically PostgreSQL, with expertise in JPA/Hibernate and Liquibase
- Hands-on experience with Kubernetes clusters (kubectl, k9s) and containerized environments including Docker and AKS
- Proficiency in CI/CD pipelines using GitLab CI
- Familiarity with Azure cloud services such as Azure PostgreSQL, Azure Service Bus and Azure Key Vault
- Knowledge of additional Azure services including Azure Blob Storage and Azure Identity (Managed Identity/UAMI)
- Skills in asynchronous/event-driven architectures using message queues such as Azure Service Bus or Kafka
- Expertise in RESTful API design, OpenAPI specifications and code generation
- Competency in writing unit and integration tests with JUnit 5 and Mockito
- Strong communication skills with the ability to thrive in complex environments and learn quickly
Nice to have
- Familiarity with Spring Cloud (Config Server, Azure starters)
- Knowledge of Resilience4j or similar circuit-breaker/retry libraries
- Exposure to reactive programming with Spring WebFlux and Project Reactor
- Understanding of Apigee or other API gateway platforms
India
Opportunity to work on technical challenges that may impact across geographies
Vast opportunities for self-development: online university, knowledge sharing opportunities globally, learning opportunities through external certifications
Opportunity to share your ideas on international platforms
Sponsored Tech Talks & Hackathons
Unlimited access to LinkedIn learning solutions
Possibility to relocate to any EPAM office for short and long-term projects
Focused individual development
Benefit package:
- Health benefits
- Retirement benefits
- Paid time off
- Flexible benefits
Forums to explore beyond work passion (CSR, photography, painting, sports, etc.)
[epamgdo] India (About EPAM)
EPAM is a leading global provider of digital platform engineering and development services. We are committed to having a positive impact on our customers, our employees, and our communities. We embrace a dynamic and inclusive culture. Here you will collaborate with multi-national teams, contribute to a myriad of innovative projects that deliver the most creative and cutting-edge solutions, and have an opportunity to continuously learn and grow. No matter where you are located, you will join a dedicated, creative, and diverse community that will help you discover your fullest potential.