Developing high-performance mobile applications that revolutionize the travel industry.
As a key member of our team, you will design, develop and maintain specific modules within an application or system using existing and emerging technology platforms.
The ideal candidate should have experience with native iOS development (mandatory) and native Android development (highly valued).
Key Responsibilities:
* Designs, develops and maintains specific modules within an application or system.
* Writes and delivers code for features and modules; debugs existing code and modules and provides technical guidance to less experienced developers.
* Follows coding guidelines and practices and all technical processes and ensures they are followed by less experienced developers.
* Develops and validates estimates for technical work that will be undertaken.
* On an as-needed basis, assigns and allocates defects to less experienced developers.
* Participates in analysis of requirements for designing new application and system features.
Requirements:
* Minimum of 5+ years software engineering experience in a development capacity, preferably using a mainstream object-oriented language such as Java, C++ or similar.
* Experience with SwiftUI for creating modern iOS interfaces, knowledge of UI trends for better design and coding approaches.
* Swift, including a thorough understanding of ARC memory management, optionals, protocols and generics, Async/await and Task management, ensuring efficient performance.
* Understanding of structured/architectural coding patterns for maintainable applications, knowledge of MVVM, Clean Architecture would be advantageous.
* Comprehensive testing expertise encompassing unit testing, TDD methodology and test coverage.
* Experience developing mobile SDKs and integrating mobile apps with web-services and external APIs.
Desirable Skills:
* Proficient in utilising Xcode debugging tools
* Thorough understanding of iOS application lifecycles
* Complete familiarity with App Store submission requirements
* Experienced in Azure DevOps configuration
* Experience with OWASP Mobile Top 10 and mitigation strategies
* Knowledge of secure data storage and encryption
* Expertise in certificate pinning implementation
* Understanding of iXGuard (ideal), obfuscation, certificate pinning, and other methods of securing apps
* Expertise in Flutter, Java and Kotlin (on Android)
* Strong skills in securing data on the local device using industry standard encryption technologies including key management solutions
* Experience with push notification frameworks
* Mobile app security and development best practices