Software Engineer
Role details
Job location
Tech stack
Job description
The Senior Software Engineer will join our Technical Architecture Team to design, build, and enhance the core components (services and internal libraries) that power our Payments Hub platform. This role requires deep expertise in Java and the Spring ecosystem, as well as strong engineering fundamentals in building resilient, scalable, and maintainable systems. This role is ideal for someone who thrives in complex domains, enjoys solving system-level challenges, and collaborates closely with architects and engineering teams. As a Senior Software Engineer, you will:
- Design, build, and maintain backend services and components using Java (preferably version 21 at least) and Spring (Boot, Cloud), ensuring high performance, reliability, and scalability.
- Develop reusable libraries and cross-cutting components to support multiple engineering teams and promote consistent standards across the organisation.
- Apply resilience patterns (circuit breaker, retries, fallbacks, bulkheads, caching, idempotency, etc.) to ensure robust behaviour in distributed environments.
- Drive quality through automated testing, clean code principles, and effective code reviews.
- Contribute to the design and optimisation of distributed systems, including asynchronous processing, event-driven architectures, and transactional workflows.
- Collaborate with DevOps and SRE teams on observability, performance optimisation, build-time/run-time tooling, and cloud-native best practices.
- Mentor and support other engineers, helping raise engineering standards and knowledge across the team.
Requirements
Do you have experience in Scalability?, * Strong professional experience developing backend systems in Java (at least 10 years), with deep knowledge of Spring (Spring Boot + commonly used Spring modules).
- Experience developing and maintaining shared libraries, tools, or frameworks used across multiple teams.
- Demonstrated experience applying resilience and reliability patterns in production environments.
Education:
- Degree in: Systems/Computing Engineering
Technical Skills:
- Solid understanding of microservices, distributed systems, and common integration patterns (REST, messaging, asynchronous processing).
- Good understanding of software design principles.
- Strong problem-solving skills and the ability to reason about system-level interactions.
- Nices to have:
- Knowledge of JVM performance tuning and profiling tools.
- Familiarity with CI/CD, cloud platforms (AWS), and container orchestration (Kubernetes).
- Experience with build tooling (Gradle)
Benefits & conditions
Medical insurance Dental insurance Wellhub Life insurance Annual healthcare Transportation allowance Meal voucher/food voucher Profit sharing program Access to self-development programmes Hybrid Collaborative environment: Successful candidate must be prepared to work 60% on site Next step Apply and if you know someone who might be looking for this opportunity, share it.