Senior Java Developer
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