Principal Engineer (Android)

  • KOKO Networks
  • Nairobi County, Kenya
  • Jan 09, 2018 - Feb 09, 2018
Full time Engineering Information Technology

Job Description

KOKO has been developing its core technologies over the last three years as a venture backed company, and is now hiring an A team of engineers to scale up its products, software and systems for a city-wide launch of its network in 2018. KOKO’s offices are in Nairobi (Kenya) and Kampala (Uganda).   


  • Design and implementation of low-latency, high-availability, and performant applications
  • Writing reusable, testable, and efficient code
  • Implementation of software engineering best practices and ensuring code and process quality through regular code reviews, proper documentation and improvement initiatives
  • Ensuring all features delivered are seamlessly released to production environment and perform reliably at all times.
  • Managing Level 2 support functions which include immediate fixes to any critical defects or essential enhancements in the live systems and setting a high standard for such support service levels within the engineering team.
  • Building a strong engineering culture within the team and grooming junior engineers
  • Exercising pragmatism and maturity in managing, planning and executing engineering tasks to strike a balance between business and engineering demands.
  • Tracking and optimising the total business value delivered at all times.
  • Developing maintainable, well-designed software even under tight deadline 


Minimum qualifications:

  • BA/BS degree in Computer Science.
  • 7+ years experience in software engineering of which at least 4 years' of professional development in customer-facing Android apps
  • Published apps in the Google Play Store
  • Ability to architect complex Android applications from the ground up
  • Extensive knowledge of Android design principles and third-party libraries
  • Experience implementing and maintaining unit tests
  • Good grasp of the fundamentals of UI layout designing, mobile UI components, using common themes and styles.

Preferred qualifications:

  • Strong understanding of design patterns, or a well researched opinion on why they're overrated.
  • A firm grasp of multi-threading, databases (relational or nonrelational), I/O and networking.
  • Experience with IoT technologies such as MQTT, XMPP, RFID, NFC, Wireless technologies
  • Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies.
  • Experience with reactive libraries like RxJava/RxAndroid would be a plus
  • Experience with ReactNative, or hybrid platforms like Cordova would be a plus.

You should certainly apply if:

  • You care deeply about your work, your team and the impact it creates.
  • You do not shy away from working long hours when your team and work demands 9 - 5ers need not apply.
  • You enjoy crafting elegant, well-tested solutions, not just delivering working code
  • The acronyms FP, OO, SOLID, TDD, BDD, XP mean something to you
  • You have logical and well researched opinions on existing and new technologies, and relish the learnings and challenges of working on different platforms and products
  • You have experience with or interest in user-centered interaction design
  • You have an entrepreneurial mindset
  • You strive for yourself, your team and your organization to continuously learn and improve