Software Engineer: Back-End II (Android / Payments)
We're on the lookout for energetic, self-motivated individuals who share our passion for service in the banking industry. To be part of the journey, follow the steps below:
Software Engineer: Back-End II (Android / Payments)
Purpose Statement
- As a level II Software Engineer in our Payments Technology team, you will play an integral part in a cross-functional team responsible for the full lifecycle of our card machine software, from concept and design, through development and testing, to deployment and ongoing operation in the field. You will design, develop, test, deploy, maintain and enhance native Android applications running on POS devices, as well as the server-side components that power them, translating requirements from the business or technical analyst and actively participating with the delivery team in design and problem-solving.
- You will work across the full payments stack: building the application in the merchant's hand, integrating directly with terminal hardware such as card readers, NFC and PIN pads, handling EMV and ISO 8583 messaging, and developing the back-end services that authorise, settle and report on every transaction. Reliability, performance and transaction integrity are non-negotiable, the code you write processes real money, in real time, at scale.
Education (Minimum)
- Grade 12 National Certificate / Vocational
Education (Ideal or Preferred)
- A relevant tertiary qualification in Information Technology
Knowledge and Experience
*Experience:*
3+ years' proven experience in software development, project delivery and implementation, covering both native Android and back-end development
Hands-on commercial experience building native Android applications in Java and/or Kotlin
Practical experience with EMV protocol
Working knowledge of ISO 8583 financial messaging
Experience integrating hardware peripherals on Android — card readers, NFC, PIN pads — via AIDL / IPC
Demonstrable experience building and maintaining server-side components, APIs and services that support transactional workloads
*Knowledge:*
Is able to apply advanced knowledge of the following:
- Native Android application development and the Android SDK
- Advanced programming concepts
- Advanced algorithms and data structures
- Design Patterns
- Version Control
- Testing practices
- Database systems and query optimisation (e.g. SQL, NoSQL)
- RESTful API design and integration
- Cloud computing platforms and services (e.g. AWS, Azure)
- Advanced microservice and event-driven architectures
- Deployment using Kubernetes and containerisation
- Secure coding and transaction integrity within a payments environment
*Ideal:*
- Additional experience with React Native or Ionic/Capacitor alongside native Android
- Exposure to PCI PTS / PA-DSS standards
- DUKPT or MK-SK key management
- Prior experience at a payment terminal vendor or fintech (e.g. PAX, Ingenico, Verifone, ECentric, Synthesis)
Skills
- Analytical Skills
- Attention to Detail
- Communications Skills
- Interpersonal & Relationship management Skills
Additional Information
- Clear criminal and credit record
Capitec is committed to diversity, applications to this position will strictly be considered in support of our employment equity goals.
Capitec Bank is an authorised financial services provider (FSP 46669) and registered credit provider (NCRCP13). Capitec Bank Limited Reg. No: 1980/003695/06