Haystack
← Back to Jobs
Temporary/Casual
Technology
IR

Senior Java Developer

Intelligent Resourcing Solutions LtdLondon🇬🇧United KingdomPosted 2 Oct 2026

Quick Overview

Seniority
Mid Senior
Employment type
Temporary/Casual
Work mode
Hybrid
Location
London, United Kingdom
DockerGCPMicroservicesMongoDBMySQLSOAPSQLSpringSpring BootAWSSonarQubeTDDAgileAzureBDDCucumberGitGoogle CloudJUnitJavaJenkinsKafkaKubernetesPostgreSQL

Job Description

Job Description

We are seeking an experienced Senior Java Developer to join our development team in a 100% hands-on software development role. The successful candidate will be responsible for designing, developing, enhancing, and delivering robust, scalable, secure, and high-performance Java applications and microservices.

The role requires strong expertise in Java, Spring Boot, RESTful APIs, SOAP web services, microservices architecture, Test-Driven Development (TDD), Behaviour-Driven Development (BDD), CI/CD, databases, containerisation, and cloud technologies.

This is a development-focused position, with the successful candidate expected to spend their time designing solutions, writing production-quality code, developing APIs and microservices, implementing automated developer tests, reviewing code, troubleshooting technical issues, and contributing directly to software delivery.

The successful candidate should preferably hold SC or DV clearance.

Responsibilities

  • Design, develop, enhance, and deploy enterprise-grade Java applications and microservices using Java and Spring Boot.
  • Develop RESTful APIs and SOAP web services for internal and external consumers.
  • Take ownership of software development from technical design through implementation, testing, deployment, and production readiness.
  • Produce clean, maintainable, efficient, secure, and well-documented production code.
  • Apply SOLID principles, object-oriented design, design patterns, and software engineering best practices throughout development.
  • Design and implement scalable microservices architectures capable of supporting complex enterprise applications.
  • Develop comprehensive automated unit, component, integration, and API tests as an integral part of software development.
  • Apply TDD and BDD practices throughout the development life cycle.
  • Build robust automated test suites that support Continuous Integration and Continuous Deployment (CI/CD) environments.
  • Produce and maintain Low-Level Designs (LLDs) and other technical documentation supporting application development.
  • Design and implement secure authentication and authorisation mechanisms for applications and APIs.
  • Develop integrations with relational databases, document databases, messaging platforms, and external systems.
  • Optimise applications for performance, scalability, resilience, reliability, and security.
  • Diagnose and resolve complex application, integration, performance, and production code issues.
  • Conduct peer code reviews and provide technical feedback to maintain high engineering and coding standards.
  • Refactor and modernise existing applications and services where required.
  • Collaborate with developers, architects, DevOps engineers, product teams, and other technical stakeholders to translate requirements into high-quality software solutions.
  • Contribute to technical design decisions, API design, application architecture, coding standards, and development best practices.
  • Support automated build, integration, and deployment processes as part of the development life cycle.
  • Continuously evaluate new Java technologies, frameworks, libraries, and development approaches that can improve software quality and engineering productivity.

Essential Requirements

  • Bachelor's degree in computer science, Software Engineering, Engineering, or a related discipline, or equivalent professional experience.
  • 10+ years of commercial Java development experience, with substantial recent hands-on experience developing enterprise Java applications and microservices.
  • Strong hands-on development experience with modern Java (Java 21).
  • Extensive development experience with Spring Boot and the wider Spring ecosystem.
  • Strong experience designing and developing RESTful APIs and microservices.
  • Hands-on experience developing and integrating SOAP web services, including WSDL and XML.
  • Strong understanding of microservices architecture, distributed systems, API design, and integration patterns.
  • Strong understanding and practical application of SOLID principles, object-oriented programming, design patterns, clean code, and software engineering best practices.
  • Strong experience with Test-Driven Development (TDD) and Behaviour-Driven Development (BDD).
  • Strong experience developing automated unit, integration, component, and API tests.
  • Hands-on experience with JUnit, Cucumber, Mockito, or equivalent Java testing frameworks.
  • Experience building robust automated developer test suites to support continuous deployment.
  • Strong experience with Maven and/or Gradle.
  • Strong experience using Git for source control and collaborative software development.
  • Hands-on experience with Jenkins and CI/CD pipelines.
  • Experience using SonarQube or equivalent static code analysis and code-quality tools.
  • Experience developing applications using relational databases such as PostgreSQL, MySQL, or equivalent.
  • Experience with MongoDB or other document/NoSQL databases.
  • Strong SQL skills and experience designing and optimising database interactions.
  • Hands-on experience with Docker and Kubernetes.
  • Experience developing and deploying applications on cloud platforms such as AWS, Microsoft Azure, or Google Cloud Platform (GCP).
  • Working knowledge of Linux, Unix, and/or macOS development environments.
  • Experience developing secure applications, including authentication, authorisation, API security, and secure coding practices.
  • Experience producing Low-Level Design (LLD) documentation.
  • Strong debugging, troubleshooting, performance optimisation, and problem-solving skills.
  • Experience working within Agile software development environments.
  • Good understanding of DevOps principles and practices as they relate to software development and delivery.
  • Ability to independently take ownership of complex development tasks and deliver production-quality solutions.
  • Strong communication and collaboration skills with the ability to work effectively within multidisciplinary engineering teams.
  • Experience implementing authentication and authorisation using Keycloak.
  • Strong working knowledge of Jackson and JAX-RS.
  • Experience with messaging and event-driven architectures using Kafka, ActiveMQ, or similar technologies.
  • Experience designing and developing high-volume, high-availability, and high-traffic applications.
  • Experience designing applications capable of processing and storing large data sets efficiently.
  • Experience with asynchronous processing and distributed application architectures.
  • Experience with caching, performance tuning, resilience patterns, and application observability.
  • Experience developing applications using cloud-native and containerised architectures.
  • Experience modernising Legacy Java applications into Spring Boot microservices.
  • Experience with API versioning, API documentation, and technologies such as OpenAPI/Swagger.
  • Experience implementing application monitoring, logging, and operational diagnostics.
  • Java, Spring, cloud, Kubernetes, or related professional certifications would be advantageous.

Similar jobs