15 Aug
|
Bounteous
|
Gurugram
15 Aug
Bounteous
Gurugram
About This Role
6 to 8 years of experience
Skills: Java, Spring Boot, Apache Kafka, Azure, Microservices, REST APIs, AWS, Docker, Kubernetes, SQL, NoSQL, CI/CD, Git, Maven, Event-Driven Architecture, OpenSearch
About the Role
We are looking for a skilled Java Developer with 6+ years of experience to design, develop, and maintain enterprise-grade microservices and event-driven applications. You will bring robust expertise in Java, Spring Boot, and Apache Kafka — building scalable, resilient backend services deployed on Azure (preferred) or AWS cloud platforms. You will work closely with architects, product owners, and cross-functional engineering teams to deliver high-quality, cloud-native solutions that leverage modern messaging, API, and search capabilities at enterprise scale.
Key Responsibilities
Java & Spring Boot Development
- Design, develop, test, and maintain scalable Java microservices using Spring Boot — applying clean architecture, SOLID principles, and well-established design patterns for production-grade, maintainable 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 optimise data access layers using Spring Data JPA / Hibernate — managing complex entity relationships, query optimisation, 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 across the team.
Apache Kafka & Event-Driven Architecture
- Design and implement event-driven microservices using Apache Kafka — developing producers, consumers, and Kafka Streams applications with Spring Kafka for reliable, scalable messaging at enterprise scale.
- Design Kafka topic architecture — defining partitioning strategies, replication factors, retention policies, and consumer group configurations aligned to throughput, ordering, and fault-tolerance requirements.
- Implement robust error handling patterns — Dead Letter Queues (DLQ), retry strategies, and poison pill handling — ensuring resilient, recoverable Kafka consumer behaviour in production.
- Configure Kafka Schema Registry with Avro or Protobuf — enforcing schema evolution governance and backward / forward compatibility across event-driven service boundaries.
- Implement exactly-once semantics and delivery guarantee patterns where business requirements demand strong consistency across distributed event streams.
- Monitor and troubleshoot Kafka cluster health — consumer lag, partition rebalancing, broker performance, and throughput metrics — using Kafka UI, Confluent Control Centre, or equivalent monitoring tools.
Azure Cloud (Preferred)
- Design and deploy cloud-native Java microservices on Azure — leveraging AKS, App Services, Azure Functions, and Azure Container Registry for scalable, managed application hosting.
- Integrate applications with Azure messaging services — Azure Service Bus, Event Hub, and Event Grid — alongside Kafka for hybrid event-driven architectures where applicable.
- Implement Azure security best practices — Managed Identities, Azure Key Vault, Azure AD RBAC, and Private Endpoints — ensuring secure, least-privilege access across all application and infrastructure components.
- Configure Azure monitoring and observability — Application Insights, Azure Monitor, and Log Analytics — providing comprehensive production visibility and enabling rapid incident detection and resolution.
- Build and maintain CI/CD pipelines using Azure DevOps — automating build, test, security scanning, and deployment workflows across Dev, Test, and Production environments on Azure.
- Manage Azure database services — Azure SQL, Cosmos DB, and Azure Database for PostgreSQL — designing efficient data access patterns and optimising query performance for microservices workloads.
OpenSearch Integration (Good to Have)
- Design and implement OpenSearch index mappings and search queries — building full-text search, faceted filtering, and relevance-tuned search experiences integrated with Spring Boot microservices.
- Develop OpenSearch aggregation pipelines for analytics, reporting, and real-time data summarisation use cases within the application platform.
- Integrate Spring Boot services with OpenSearch using Spring Data OpenSearch / Elasticsearch — managing index lifecycle, query DSL, and search result mapping.
- Optimise OpenSearch search performance — analysers, tokenisers, query caching, and shard management — for low-latency, high-relevance search at scale.
Architecture & Delivery
- Contribute to microservices architecture design — applying DDD, CQRS, Event Sourcing, and Saga patterns to deliver loosely coupled, independently deployable services.
- Collaborate with Solution Architects, Business Analysts, Product Owners, and DevOps teams — translating complex requirements into well-architected, cloud-native technical solutions in Agile sprints.
- Troubleshoot and resolve complex production issues — performance bottlenecks, Kafka consumer lag, cloud service failures, and distributed system failures — under production pressure.
- Produce clear and concise technical documentation — 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.
What We're Looking For
- 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 — Spring MVC, Spring Cloud, Spring Security, and Spring Kafka — with strong understanding of microservices design patterns.
- Proven Apache Kafka experience — producer / consumer development, Kafka Streams, topic design, error handling, and Schema Registry in production event-driven systems.
- Strong Azure cloud experience (preferred) — AKS, App Services, Service Bus, Event Hub, Key Vault, Azure AD, Application Insights, and Azure DevOps.
- Working knowledge of AWS cloud services — EC2, EKS, SQS, SNS, MSK, IAM — as an alternative or complementary cloud platform.
- Solid database skills — 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 — 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 — 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 — 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 — 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.
📌 Java Spring Boot Developer (Gurugram)
🏢 Bounteous
📍 Gurugram