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
- 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.
- 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