Open role

Senior Java Developer

Build and run Spring Boot services on AWS and Azure for clients whose businesses genuinely depend on them. Three-year contract, hybrid in Johannesburg.

Contract, 3 years Hybrid, Johannesburg 9+ years

About the role

You will be writing production Java on systems that clients run their operations through, not internal prototypes that nobody depends on. That means the work is real: performance matters, data correctness matters, and a bad release is somebody's bad day. We build on deliberately boring technology, because a client has to be able to hire someone else to maintain it in five years. If you want to argue for the newest framework every quarter, this will frustrate you. If you want to build things that are still running well after you have moved on, this is the right room. The contract runs three years, which is long enough to see the consequences of your own decisions. That is unusual and it is the point.

What you will do

  • Design and build Spring Boot services, REST APIs and integrations that carry real transaction volume
  • Deploy and run what you build on AWS or Azure, in containers, through automated pipelines
  • Write tests that genuinely reduce risk rather than chase a coverage number
  • Work directly with clients to understand the problem before writing the solution
  • Review other people's code, and have yours reviewed, without either being a formality
  • Take a production issue from alert to root cause to fix, and write down what happened

What we are looking for

  • Around 9 years building backend systems in Java, with real production ownership
  • Strong Spring Boot: Spring Data, Spring Security, and REST API design you can defend
  • Solid SQL and relational data modelling, ideally PostgreSQL
  • Hands-on cloud delivery on AWS or Azure, not just theory: compute, managed databases, object storage, identity and access, logging and monitoring
  • Docker, and comfort with containerised deployment
  • CI/CD pipelines, and the habit of automating what you do more than twice
  • Integration experience: REST, SOAP, message queues or event streams
  • South African work authorisation, and able to work hybrid from Johannesburg

Nice to have

  • Kafka or another event-streaming platform in production
  • Kubernetes, whether EKS, AKS or self-managed
  • Terraform or another infrastructure-as-code tool
  • AWS or Azure certification, for example Solutions Architect Associate or AZ-305
  • Python alongside Java, particularly for data or automation work
  • Experience in financial services, insurance, logistics or the public sector
  • Having modernised a legacy system incrementally rather than rewriting it

We do not advertise a salary. Tell us what you are looking for when you apply and we will be straight with you about whether it is in range.

Apply for this role

Attach your CV on the careers page and pick this role from the list. It takes a minute, and it goes straight to the people doing the hiring.

Apply now

Other open roles

Software Development Lead

Hybrid, Johannesburg