Kyosk Digital Services - Digital First and Data Led Distribution Platform.
Kyosk is looking for a passionate Software Engineer II – Android to help strengthen the development competency of a team of software engineers who are developing solutions on the leading edge of innovation in Africa. The successful candidate will play a supporting role in the full SDLC of the team’s output.
As a Software Engineer II, you’ll join our growing team of Product and Technology professionals who share a passion for leveraging technology to empower informal retailers across the African continent. You’ll work with teams from multiple countries across the organization to imagine and build innovative solutions for Kyosk’s customers and internal teams.
To be successful in this role you will need to be passionate about using technology to solve real-world problems. You will contribute to high-quality, resilient, scalable software using industry best practices.
The Software Engineer II – Android role has the following responsibilities:
- Contribute to the design of technical solutions
- Deliver working software implemented from technical designs
- Investigate and resolve errors
- Adhere to Kyosk’s development processes
Minimum Technical Requirements
- 3 years of software development experience
- Experience working with Agile methodologies
- Experience with administrative tools, e.g. Issue Tracking, Wikis, etc
- Working knowledge of the dev toolchain (e.g. IDE, CI/CD, version control)
- Android: Working knowledge of
- Basic knowledge of containerization and orchestration
- Experience implementing components of a system from technical designs/specifications
Minimum Behavioural And Soft Skills Requirements
- Strong work ethic
- Focus on delivery
- Works mostly independently
- Passion for learning
- Considerate of the value chain outside of the sphere of responsibility
Desired Technical Competencies
The Software Engineer II – Android role has the following requirements:
- 3-5 years experience in the full SDLC (analysis, design, development, testing, integration, deployment, documentation, triage)
- Kotlin – Extensive experience in developing Android applications using Kotlin, including familiarity with Kotlin’s advanced features and integration with Android SDK.
- XML for UI Implementation – Proficiency in using XML for designing UI layouts, styles, strings, menus, preferences, drawables, animations, navigation, and data storage in Android applications.
- Product Design Implementation – Proven ability to collaborate with design teams to accurately translate mobile app mockups and specifications into functional user interfaces.
- SQLite Experience – Proficiency in SQLite for Android, including database creation and management, executing CRUD operations, building complex queries, managing transactions, using prepared statements, designing schemas, validating data, utilizing helper classes, tuning performance, handling migrations, managing backups/restores, and testing data access code.
- JUnit – Demonstrated expertise in implementing unit testing for Android applications using JUnit – added advantage
- Apollo Client for GraphQL – Experience integrating Apollo Client in Android applications for effective GraphQL API interactions and data management – added advantage
- Truth – Experience with Truth, an assertion library, to enhance test readability and maintainability in Android application development – added advantage
- Mockk – Familiarity with Mockk for effective mocking of classes in Kotlin unit testing, aiding in test efficiency and reliability. Knowledge of test-driven development practices is essential – an added advantage
- Experience in e-commerce, payments, and/or distribution of FMCG products – added advantage
- Basic knowledge of the shift-left approach
- Working knowledge of system non-functional requirements (e.g. code readability, maintainability, scalability, extensibility, testability, etc)
Desired Behavioral Competencies
- Ability to give reasonably accurate time estimates
- Constantly seeks to improve tech and processes to streamline development
- Ability to work under pressure, with tight timelines and ambitious deadlines
- You have integrity: you do what you say you will do and make no excuses.
- Promote psychological safety in the team, as well as across the entire organisation.
About Kyosk Digital Services Limited
At Kyosk.App we take immense pride in our role as a Business 2 Business Technology Platform. We are dedicated to bridging the gap in digital distribution to middle and low-income communities, including smallholder farmers. Our platform is truly product and service-agnostic, empowering companies to connect with these communities through local retail outlets.
Today, we are thrilled to share that we serve a thriving community of over 250,000 Retailers on our Platform. We leverage the small retail outlets as a channel to connect with these communities by providing a seamless and direct link between suppliers, traditional retailers as well as farmers and local eateries. Across Africa over 60% of retail trade flows through these small outlets commonly referred to as kiosks. We are on a mission to provide them with an extensive range of high-quality products, all delivered reliably to their doorsteps at fair market prices.
We also help manufacturers and farmers expand their network and product range by providing last-mile deliveries to hard-to-reach communities as well as data for better demand and business planning.
The platform does not only support product distribution but also helps service providers such as financial institutions to reach and provide their services (for example credit, savings and insurance) to the communities via our network of small retail outlets – Kiosks. Kyosk is present in over 40 territories across Kenya, Tanzania, Uganda and Nigeria.
Are you looking to sharpen your Software Development skills to stay relevant in the market? CLICK HERE to have a look at the top schools.
For all your IT certification needs, please, click here for information on how to get started