Lead Software Engineer - Java with Azure
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