Mobile developers Android / Mobile developers iOS - Cape Town Verfied

Salary Negotiable Cape Town, Western Cape Cape Town, Western Cape more than 14 days ago 16-11-2017 6:29:21 AM
11-01-2018 6:29:21 AM
Competencies – What are the specific competencies required?
• BSc degree in Computer Science or relevant technical qualification
• Good understanding of scrum and agile practices
• Proficient understanding of code versioning tools
• Experience implementing software solutions using design patterns and understanding of S.O.L.I.D. principles
• Good understanding of mobile security topics e.g. code obfuscation, encryption, reverse engineering
• Solid experience with the following:
• Building user interfaces based on the iOS and Android UI standards i.e. Material design spec and iOS Human Interface guidelines
• Implementing mobile functionality with the Android SDK and/or iOS Cocoa Touch.
• Writing unit and integration tests for Android and/or iOS, including inversion of control, mocks, stubs etc.
• Working with design teams to define feasible user interface designs to achieve business goals
• Implementing high fidelity designs for mobile platforms including working with Photoshop/Sketch and/or advising designers regarding design export format requirements etc.
• Building and deploying mobile applications to Google Play Store and/or Apple App Store
• Designing web services for mobile applications, REST, scalability, caching etc.
• Consuming web services (JSON, Serialization, async networking)
• Debugging Android and/or iOS applications (leaks, CPU time, memory, power, graphical rendering)
• Optimising performance of mobile applications
• Handling errors
• Supporting mobile applications already deployed to app stores
• Knowledge of contemporary trends in mobile app development e.g. RxAndroid, RxSwift, Cross platform technologies (Xamarin, React Native, Cordova etc.)

Outputs – What are the key performance areas and daily responsibilities?
• Build reusable front-end components and libraries for future use across multiple projects
• Build highly interactive mobile applications
• Prepare mobile applications for release to app stores
• Analyse, diagnose and resolve errors related to their applications
• Collaborate, and communicate effectively with business stakeholders, design, QA and Backend team members