- Location
- Johannesburg
- Workplace
- Onsite
- Type
- Contract
- Department
- IT
- Seniority
- Senior
- Experience
- 4+ years
- Education
- Master
- Closing date
- Today
- Source
- CareersPage
Description
Job Title: Senior Java Developer - Digital Payments
Employment type: Contract (On-site)
Contract length: 6 - 12 months
Location: Johannesburg, South Africa
PURPOSE OF THE PROJECT
We are seeking a hands-on Senior Java Developer to join the Merchant Services Technology Squad. The role will design, develop, integrate, and support enterprise-grade services within high-volume, mission-critical payment environments. The successful candidate will combine strong Java and Spring Boot engineering skills with practical experience in microservices, event-driven integration, container platforms, and Agile delivery.
Core Responsibilities and Accountabilities:
- Deliver enterprise services across the full software development lifecycle, including requirements analysis, specification, development, testing, deployment, operational support, and continuous improvement.
- Design, build and enhance Java-based applications and Spring Boot microservices using sound engineering and object-oriented design practices.
- Develop and integrate synchronous and asynchronous services using APIs, service discovery, Kafka, and message queues.
- Contribute to solution design and translate business and technical requirements into scalable implementation approaches.
- Build cloud-ready, containerised services and support deployment across Docker, Kubernetes, and OpenShift environments.
- Apply event-driven architecture principles to high-volume transaction-processing solutions.
- Contribute to DevOps practices, CI/CD pipelines, automated testing, release readiness, and production support.
- Participate in capacity planning, technical debt management, JAD sessions, and technical design discussions.
- Collaborate with product, architecture, engineering, operations, risk, and other stakeholders to deliver secure and reliable solutions.
- Produce clear technical documentation, specifications and implementation notes while maintaining agreed coding and quality standards.
Knowledge and Experience:
- 5+ years of hands-on Java enterprise application development experience.
- Practical experience with Java 8 and exposure to Java 21.
- Strong Spring Boot knowledge beyond annotations, including JPA, dependency injection and component scanning.
- 4+ years of experience developing or supporting enterprise services.
- Strong microservices architecture experience, including inter-service communication, APIs, and queues.
- Working knowledge of service discovery, Kafka, and queue design.
- Hands-on experience with event-driven architecture and service integration.
- 3+ years of experience with containerisation technologies; experience across Docker, Kubernetes and OpenShift is preferred.
- Practical exposure to cloud technologies.
- Hands-on SDLC experience across requirements, development, operations, and support.
- 3+ years of exposure to solution design.
- Experience with DevOps, CI/CD, automated testing, and production support.
- Experience working in high-volume, mission-critical transaction environments.
Agile & Delivery Experience:
- Operate as a hands-on senior developer within an Agile delivery squad.
- Contribute to sprint and capacity planning and help manage technical debt.
- Facilitate or actively participate in JAD sessions and technical discussions.
- Work effectively across architecture, development, testing, DevOps, and operational stakeholders.
- Ownership of production systems is not a core requirement; however, production-support experience is highly relevant.
Mandatory Skills:
- Bachelor's degree in Computer Science, Information Technology, or a related field (Master's preferred).
- Previous experience within a bank, payment processor, acquirer, card platform, or payment gateway.
- Regional experience, including working in a faced-paced matrix organisation.
- Excellent communication skills in English (written, verbal, and presentation).
Preferred Skills:
- Relevant Java, Spring, cloud, Kubernetes, or OpenShift certifications are advantageous.
- Banking experience is preferred, particularly exposure to acquiring or payment-transaction processing.
- Merchant Services or Acquiring experience is beneficial but is not a prerequisite.
- Highly relevant domain exposure includes POS acquiring, payment gateways, card processing, fraud, and risk.
- Experience in merchant onboarding, settlement and reconciliation, or digital commerce is useful but not essential.