Job Description
A kiosk is an informal convenience store selling everyday household items.
Known locally by their vernacular names e.g. Duka in Kenya, Spaza in South Africa, Kantemba in Zambia.
kiosk-type retail outlets are the cornerstone of African retail, accounting for over 60% of all retail trade flows.
Despite their importance, kiosk-type retail outlets face significant challenges, including high cost of stock and unreliable delivery.
Senior Software Engineer
Role Profile:
Kyosk is looking for a passionate Senior Software Engineer 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 leading role in the full SDLC of the team’s output.As a Senior Software Engineer, 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 a strong technologist, innovator and an analytical problem solver.
You will need to develop high quality, resilient, scalable software. Key Responsibilities
Play a leading role in the design and development of software solutionsTriage, investigate and resolve errorsAdhere to, promote and help to improve Kyosk’s development processes Code reviews
Mentor less experienced software engineersExperiment with new technologies/solutions and develop a PoC Minimum Technical Requirements:
6 years of software development experience2 years experience of the full SDLC (analysis, design, development, testing, integration, deployment, documentation, triage)Experience working with Agile methodologiesProficiency with administrative tools, e.g. Issue Tracking, Wikis, etcAdvanced level user of dev tool chain (e.g. IDE, CI/CD, version control)Backend dev: Advanced knowledge of Java, SpringBoot, Hibernate.Working knowledge of containerization and orchestrationExperience implementing the microservices design patternWorking knowledge of any cloud platformExperience designing and implementing a system from scratchExperience implementing complex automated tests (unit, integration, performance, etc)Demonstrates a clear understanding of system non-functional requirements (e.g. code readability, maintainability, scalability, extensibility, testability, etc), and can weigh the pros and cons of a solution w.r.t. non-functional requirements. Minimum Behavioural and Soft Skills Requirements:
Strong work ethicFocus on deliveryPunctualWorks independentlyExpectation managementPassion for learningAbility to lead a discussion with clients in a professional mannerAbility to give reasonably accurate time estimatesProactively accommodates value chain outside of sphere of responsibilityAbility to communicate technical information clearly and conciselyCan take the lead on small projects Desired Technical Competencies
8+ years of software development experience3+ year of experience of the full SDLCWorking knowledge of KafkaExperience in e-commerce, payments, and/or distribution of FMCG productsExperience using GCPWorking knowledge of Docker containers and Kubernetes for orchestrationPractitioner of the shift-left approachExperience introducing automated tests into a code baseExperience architecting, designing and implementing a software system Desired Behavioral Competencies
Constantly seeks to improve tech and processes to streamline developmentAbility to work under pressure, with tight timelines and ambitious deadlinesYou 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.