Java Software Engineer

ARM (Advanced Resource Managers)
6 days ago

Role details

Contract type
Temporary contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Remote

Tech stack

Java
Azure
Code Coverage
Code Review
Continuous Integration
Software Design Patterns
DevOps
Github
Message Broker
OAuth
OpenID
Service Design
Data Logging
Gitlab-ci
Kubernetes
Jenkins
Microservices

Job description

We are looking for a Software Engineer with hands-on experience in building microservices and 12-Factor, cloud-native applications using Java, Quarkus and Dapr. You will design, implement, and operate distributed services running on containerized infrastructure with fully automated CI/CD pipelines. This is a must-have Quarkus + Dapr role: you will actively use both frameworks daily to build resilient, observable, and event-driven services.

Key Responsibilities . Microservices design & implementation o Design and develop Back End microservices using Java and Quarkus. o Apply 12-Factor App principles (config externalization, stateless processes, disposability, logs, etc.). o Implement synchronous and asynchronous communication patterns (REST/gRPC, pub/sub, events). . Dapr-based cloud-native services o Use Dapr sidecars and building blocks (service invocation, pub/sub, bindings, state stores, secrets, workflows) to build loosely coupled services. o Define and maintain Dapr component configurations for various backends (message brokers, state stores, etc.). o Implement resilience patterns (retries, timeouts, circuit breakers, idempotency) leveraging Dapr and Quarkus. . CI/CD & DevOps collaboration o Work with CI/CD pipelines (eg GitLab CI, GitHub Actions, Azure DevOps, Jenkins) for build, test, security scanning, and deployment. o Ensure high test coverage through unit, integration and contract tests integrated into the pipeline. o Deploy and operate services on container orchestration platforms such as Kubernetes. . Quality, security & observability o Write clean, maintainable, testable code following best practices and design patterns. o Implement observability: structured logging, metrics and distributed tracing (eg via OpenTelemetry through Quarkus/Dapr). o Collaborate on secure service design (OAuth2/OIDC, JWT, secrets management, TLS). . Collaboration & life cycle ownership o Work in cross-functional agile teams with product owners, architects and other engineers. o Participate in code reviews, design sessions, and troubleshooting of production issues. o Own services end-to-end from design through implementation to monitoring and continuous improvement.

Requirements

Java Software Engineer MUST have Quarkus and Dapr experience

About the company

This vacancy is being advertised by either Advanced Resource Managers Limited, Advanced Resource Managers IT Limited or Advanced Resource Managers Engineering Limited ("ARM"). ARM is a specialist talent acquisition and management consultancy. We provide technical contingency recruitment and a portfolio of more complex resource solutions. Our specialist recruitment divisions cover the entire technical arena, including some of the most economically and strategically important industries in the UK and the world today. We will never send your CV without your permission. Where the role is marked as Outside IR35 in the advertisement this is subject to receipt of a final Status Determination Statement from the end Client and may be subject to change.

Apply for this position