This engineering role involves designing, developing, and maintaining enterprise-grade microservices and event-driven applications using Java and Spring Boot. The developer will leverage expertise in Apache Kafka and cloud platforms like Azure or AWS to build scalable, resilient backend services. The role requires close collaboration with architects, product owners, and cross-functional engineering teams to deliver high-quality, cloud-native solutions.
Responsibilities
Design, develop, test, and maintain scalable Java microservices using Spring Boot, applying clean architecture, SOLID principles, and design patterns for production-grade codebases
Build and expose secure, well-documented RESTful APIs, following API-first design principles, OpenAPI / Swagger documentation standards, versioning strategies, and performance best practices
Develop and optimize data access layers using Spring Data JPA / Hibernate, managing complex entity relationships, query optimization, and database migration strategies across relational and NoSQL databases
Write comprehensive unit and integration tests using JUnit and Mockito, maintaining high code coverage and regression confidence through test-driven development practices
Participate actively in code reviews, providing constructive technical feedback and upholding coding standards, security practices, and architectural consistency
Design and implement event-driven microservices using Apache Kafka, developing producers, consumers, and Kafka Streams applications with Spring Kafka
Design Kafka topic architecture, defining partitioning strategies, replication factors, retention policies, and consumer group configurations
Implement robust error handling patterns, including Dead Letter Queues (DLQ), retry strategies, and poison pill handling
Configure Kafka Schema Registry with Avro or Protobuf, enforcing schema evolution governance and backward / forward compatibility
Implement exactly-once semantics and delivery guarantee patterns where business requirements demand strong consistency
Monitor and troubleshoot Kafka cluster health, consumer lag, partition rebalancing, broker performance, and throughput metrics using Kafka UI, Confluent Control Centre, or equivalent tools
Design and deploy cloud-native Java microservices on Azure, leveraging AKS, App Services, Azure Functions, and Azure Container Registry
Integrate applications with Azure messaging services, including Azure Service Bus, Event Hub, and Event Grid
Implement Azure security best practices, such as Managed Identities, Azure Key Vault, Azure AD RBAC, and Private Endpoints
Configure Azure monitoring and observability with Application Insights, Azure Monitor, and Log Analytics
Build and maintain CI/CD pipelines using Azure DevOps, automating build, test, security scanning, and deployment workflows
Millions of jobs, with real people getting hired every day
200,000+
New jobs added daily
7,000,000+
Verified job listings
1,000,000+
Tailored applications submitted
Manage Azure database services, including Azure SQL, Cosmos DB, and Azure Database for PostgreSQL
Design and implement OpenSearch index mappings and search queries, building full-text search, faceted filtering, and relevance-tuned search experiences
Develop OpenSearch aggregation pipelines for analytics, reporting, and real-time data summarization
Integrate Spring Boot services with OpenSearch using Spring Data OpenSearch / Elasticsearch
Optimize OpenSearch search performance with analysers, tokenisers, query caching, and shard management
Contribute to microservices architecture design, applying DDD, CQRS, Event Sourcing, and Saga patterns
Collaborate with Solution Architects, Business Analysts, Product Owners, and DevOps teams, translating complex requirements into cloud-native technical solutions in Agile sprints
Troubleshoot and resolve complex production issues, including performance bottlenecks, Kafka consumer lag, cloud service failures, and distributed system failures
Produce clear and concise technical documentation, such as API contracts, event schemas, architecture decision records, and deployment runbooks
Mentor and support junior Java developers, sharing knowledge across Spring Boot, Kafka, and Azure domains
Requirements
6+ years of hands-on Java development experience with a strong track record of delivering enterprise microservices in production environments
Deep expertise in Spring Boot, including Spring MVC, Spring Cloud, Spring Security, and Spring Kafka, with a strong understanding of microservices design patterns
Proven Apache Kafka experience, including producer / consumer development, Kafka Streams, topic design, error handling, and Schema Registry in production event-driven systems
Strong Azure cloud experience (preferred), including AKS, App Services, Service Bus, Event Hub, Key Vault, Azure AD, Application Insights, and Azure DevOps
Working knowledge of AWS cloud services, including EC2, EKS, SQS, SNS, MSK, IAM
Solid database skills, including relational (Azure SQL / PostgreSQL / MySQL) and non-relational (Cosmos DB / MongoDB / Redis), with strong SQL and ORM expertise
Experience with containerisation (Docker) and orchestration (Kubernetes / AKS / EKS) for cloud-native microservices deployment
Hands-on CI/CD experience with Azure DevOps, Jenkins, or GitLab CI for automated build, test, and deployment pipelines
Strong understanding of event-driven architecture, messaging patterns, eventual consistency, saga orchestration, and distributed system design
Excellent communication and collaboration skills, able to engage effectively with architects, product owners, and cross-functional engineering teams
Nice to have:
Hands-on OpenSearch / Elasticsearch experience, including index design, full-text search, aggregations, and Spring Boot integration
Experience with Azure Managed Kafka (Event Hub for Kafka) or AWS MSK for fully managed Kafka deployment
Familiarity with service mesh technologies, such as Istio or Linkerd, for AKS microservices traffic management and observability
Knowledge of CQRS and Event Sourcing patterns using Axon Framework or equivalent
Exposure to GraphQL API development alongside REST
Experience with Infrastructure-as-Code, such as Terraform or Azure Bicep, for cloud resource provisioning
Azure Developer Associate (AZ-204) or Azure Solutions Architect (AZ-305) certification
AWS Certified Developer Associate certification
Experience in Financial Services, FinTech, Retail, or other regulated industry environments