Senior Mobile Developer
Position Purpose:
Our client is looking for a Senior React Native developer interested in building scalable, performant mobile apps on both the iOS and Android platforms. You will have a passion for mobile application development and a keen interest in the paradigms and design principles that make each platform unique. You will be responsible for collaborating, architecting, and building these applications, as well as coordinating with the teams responsible for other layers of the product infrastructure. Building a product is a highly collaborative effort, and as such, a strong team player with a commitment to perfection is required.
Qualifications:
Essential
- Matric with extensive, relevant, and demonstrable job-related experience in mobile application development.
Desirable
- Degree in information systems / B.Sc. computer science / B.Eng. (or similar)
Experience:
- 5-8 years’ experience in general software development.
- 3-5 years’ experience in a senior developer role with specific exposure to mentoring and coaching a team of developers.
- Exposure to and an understanding of corporate, retail, and customer interfacing environment in a similar role (non-sector specific).
Job objectives:
- Possess a passion for pushing mobile technologies to the limits.
- Architect complex applications to allow for complex implementations where collaboration with 3rd parties is required.
- Design, build and maintain the next generation of our mobile applications.
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency.
- Deep understanding of and belief in Test Driven Development.
- Unit-test code for robustness, including edge cases, usability, and general reliability. Set up and maintenance of the technical infrastructure.
- Build pixel-perfect, buttery smooth UIs across both mobile platforms.
- Leverage native APIs for deep integrations with both platforms.
- Diagnose and fix bugs and performance bottlenecks for performance that feels native.
- Reach out to the open-source community to encourage and help implement mission-critical software fixes—React Native moves fast and often breaks things.
- Work within the frameworks of agile (SCRUM) methodologies
Knowledge & Skills:
- Solid understanding of the full mobile development life cycle
- Firm grasp of the JavaScript and TypeScript languages and their nuances, including ES6+ syntax
- Knowledge of functional and object-oriented programming
- Ability to write well-documented, clean JavaScript/TypeScript code
- Rock-solid at working with third-party dependencies and debugging dependency conflicts
- Familiarity with native build tools, like XCode, Gradle, Android Studio
- Ability to write native code for specific platforms
- Experience with offline storage, threading, and performance tuning.
- Understanding of REST APIs, the document request model, and offline storage
- Experiences with automated testing suites, like Jest or Mocha
Familiarity with CI/CD, git workflows, and ways of working
Desired Skills:
- iOS
- Android
- Agile (Scrum)