Android Developer (EDC)
About the Role
As an Android Developer (EDC), you will build and maintain Android-based payment applications on EDC terminals and mobile devices, from card reading and transaction processing to secure communication with host systems.
Responsibilities
Develop Android-based EDC and mobile applications using Kotlin, Java, Android SDK, and Flutter.
Implement payment solutions using ISO 8583, ISO 7816, APDU, EMV Contact & Contactless, and NFC.
Integrate payment SDKs, card readers, printers, and other EDC hardware peripherals.
Design application architecture using MVVM, Clean Architecture, Coroutines, and Jetpack.
Implement local transaction storage, offline queuing, and transaction recovery using Room and SQLite.
Develop secure payment features, including PIN Block generation, encryption, and key management.
Integrate REST APIs and backend services for payment processing and transaction management.
Apply software quality practices through unit testing, code reviews, Git workflows, and debugging.
Requirements
Bachelor's degree in Computer Science, Informatics, or a related field.
Minimum 3 years of experience in Android development using Kotlin and/or Java.
Hands-on experience developing payment applications on EDC/POS terminals.
Solid understanding of ISO 8583 and EMV (Contact & Contactless) transaction flows.
Experience integrating hardware peripherals (card reader, printer, PIN pad) through vendor SDKs.
Familiar with MVVM or Clean Architecture, Coroutines, Jetpack, and Room/SQLite.
Experience with Git workflows, code reviews, and writing unit tests.
Able to debug issues on physical devices and communicate clearly with cross-functional teams.