Our company is a multinational banking and financial services conglomerate based in Johannesburg, South Africa and listed on the Johannesburg Stock Exchange
Qualifications
Qualifications and Experience:
- Bachelors Degree or Advanced Diploma in Computer Science, Mathematics, Engineering, or equivalent experience in Software Engineering..
- Minimum of 5 years of experience for an Intermediate-level engineer, minimum of 8 years for a Senior-level engineer.
- Expertise in Java programming, Spring Boot, and microframework.
- Experience with development and operation in both Linux and Windows environments.
- Proficiency in relational database management systems and proficiency in SQL language.
- Experience with open-source database systems like MySQL and Postgres.
- Familiarity with distributed caching using Memcached and Redis.
- Experience with message brokers, queues, and PubSub systems such as Kafka and RabbitMQ.
- Proficiency with containerization and orchestration systems like Docker and Kubernetes.
- Enterpriseapplication experience.
- Experience with MicroServices Architecture and Systems.
- Experience in MicroProfile framework experience.
- Previous experience working in the fintech or payments industry.
- Experience with big data technologies such as Hadoop or Spark will be advantageous.
- Exposure to machine learning and artificial intelligence concepts will be advantageous.
Responsibilities:
- Design and build software solutions to empower customers with modern payment capabilities.
- Architect and design software solutions within a multi-team environment.
- Keep abreast of the latest technology trends and developments.
- Strive for excellence and contribute to the development of a world-class engineering team.
- Knowledge of payments ecosystem and standards ISO8583, ISO20222
- Knowledge of payment security standards including OWASP, PCI DSS and PA DSS.
- Knowledge of overall cybersecurity principles and best practices.
- Professional interaction with internal and external stakeholders.
- Experience with continuous integration and continuous deployment (CI/CD) pipelines.
- Familiarity with version control systems such as Git.
- Knowledge of software testing methodologies and automated testing frameworks.
- Understanding of cloud computing platforms such as AWS, Azure, or Google Cloud Platform.
- Proficiency in other programming languages such as Python, JavaScript, or Kotlin.
- Experience with agile development methodologies like Scrum or Kanban.
- Familiarity with performance optimization techniques for software applications.