Open Vacant Position at Kyosk Digital Services
Open Vacant Position at Kyosk Digital Services
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 – Back End
- Play a leading role in the design and development of software solutions
- Triage, investigate and resolve errors
- Adhere to, promote and help to improve Kyosk’s development processes
- Code reviews
- Mentor less experienced software engineers
- Experiment with new technologies/solutions and develop a PoC
Minimum Technical Requirements:
- 6 years of software development experience
- 2 years experience in the full SDLC (analysis, design, development, testing, integration, deployment, documentation, triage)
- Experience working with Agile methodologies
- Proficiency with administrative tools, e.g. Issue Tracking, Wikis, etc
- An advanced level user of dev toolchain (e.g. IDE, CI/CD, version control)
- Backend dev: Advanced knowledge of Java, SpringBoot, and Hibernate.
- Frontend dev: Advanced knowledge of Angular
- Working knowledge of containerization and orchestration
- Experience implementing the microservices design pattern
- Working knowledge of any cloud platform
- Experience designing and implementing a system from scratch
- Experience 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 ethic
- Focus on delivery
- Works independently
- Expectation management
- Passion for learning
- Ability to lead a discussion with clients in a professional manner
- Ability to give reasonably accurate time estimates
- Proactively accommodates value chain outside of the sphere of responsibility
- Ability to communicate technical information clearly and concisely
- Can take the lead on small projects
Desired Technical Competencies
- 8+ years of software development experience
- 3+ years of experience in the full SDLC
- Working knowledge of Kafka
- Frontend dev: working knowledge of NestJS
- Experience in e-commerce, payments, and/or distribution of FMCG products
- Experience using GCP
- Working knowledge of Docker containers and Kubernetes for orchestration
- Practitioner of the shift-left approach
- Experience introducing automated tests into a code base
- Experience architecting, designing and implementing a software system
Software Engineering Manager
- Leadership: Be the leader who your team looks up to. Improve processes to make your team more effective. Develop knowledge and domain expertise. Take ownership of what you and the team build and coordinate efforts across the team to ensure efficient completion of tasks. Eliminate obstacles that prevent your team from performing optimally.
- People Management: Actively seek to build a great team. Ensure effective recruitment, training and development programs are adopted to promote productivity, retention, motivation and morale. Manage the career path and goals of your team members, conducting regular 1-on-1s and having monthly performance dialogues. Review candidate profiles and conduct interviews keeping Kyosk’s growth and culture objectives in mind.
- Performance Management: Set and review performance and development goals for your team. Identify timeframes and readiness for promotion of direct reports; solicit cross functional feedback in support of promotions and employee rewards. Coach and mentor engineers, showing them the next steps in their careers. Craft a winning culture built on collaboration and shared accomplishments while having fun along the way.
- Capacity Planning: Establish staffing needs and a hiring strategy by working collaboratively with the broader Product and Technology management team. Balance the size and composition of your teams against the expected deliverables while ensuring optimal team performance.
- Strategic Thinking: Plan and execute long term strategies that benefit the team and their product(s). Work with a Product Manager and Tech Lead to ensure that the roadmap is realistic and clearly understood by the team.
- Technical Delivery: Take ownership of the progress, costs, and quality of delivering engineering outcomes. Adopt, enforce, and contribute to the agile processes that define Kyosk’s way of working to deliver multiple product releases at scale. Own and refine the processes that your team uses to build and support products within the business.
- Technical Monitoring: Build a deep understanding of how our products work and are built. Though you will not be expected to code regularly or at all, you need to grasp code and architecture concerns. Identify and track metrics that can be used to ensure objectives are met and recommend process improvements. Understand engineering metrics and seek to improve them.
- Process Improvement: Regularly monitor, determine and recommend methods to streamline and improve development processes and procedures. Spearhead various research and development initiatives to identify opportunities for new projects and improved processes.
- Stakeholder Management: Prepare and deliver various engineering-related presentations, both internally and externally. Act as the point of contact with the business and technical leadership communicating their priorities to the team and vice versa.
Minimum Requirements & Key Skills:
- 7+ years of software development or technical product management experience with the full software development life-cycle: design, coding, testing, mocking, deployment and maintenance of software to real production environments;
- 3+ years as a manager with people management responsibilities and a track record of hiring and growing a talented team of engineers;
- Experience working with Agile methodologies, Scrum and demonstrated experience in managing end-to-end software development lifecycles.
- Proficiency with tools of the product and engineering trade such as Issue Tracking, Wikis, Diagramming, Roadmapping, Project Management, CI/CD, etc.
- The ability to align people behind a common goal. You can explain and materialize objectives of the team;
- Working knowledge of large-scale service-oriented infrastructure and the design of scalable, highly available systems in the real world;
- Strong overall knowledge of development and quality assurance methodologies;
- Ability to successfully collaborate with multiple technical functions in the areas of infrastructure, devops, architects and other software engineers;
- Outstanding organizational, communication, interpersonal and relationship building skills
Desired Technical Competencies
- Conversational knowledge of modern programming language and frameworks like Java, Angular, C++, Android, Python, etc;
- Experience organizing, leading, and growing an engineering team or organization from scratch preferred;
- Experience in e-commerce, payments, and/or distribution of FMCG products is a plus
- Exposure to micro services, Kubernetes/Docker, and GCP/AWS services strongly preferred;
- You’ve worked with 3rd parties to integrate and scale products and services for rapid product growth.
- You have a genuine knack for numbers and how they are represented, and you are super comfortable with Excel and/or Google Sheets.
Desired Behavioral Competencies
- You have experience in handling the pressure of fast-paced environments typical of a tech startup environment where you wear multiple hats and have access to limited resources
- You have a strong desire for continuous improvement
- You can work under pressure, with tight timelines and ambitious deadlines
- You have a passion for digital products
- You can stay motivated through difficult challenges, and occasional long hours
- Your passion is contagious, and you use it to inspire the rest of the team
- You have equal empathy for internal users, and our target market of informal retailers
- You have a strong work ethic and exhibit genuine care for the team and their products, with a willingness to go to any necessary length to ensure their success
- You have integrity: You do what you say you will do and make no excuses.
- You develop a deep understanding and respect for what each team member is responsible for, and trust them to do their job
- Your confidence and experience make you trust your instinct and communicate persuasively. You know when to make decisions (even when others might disagree) vs when to build consensus, and you can articulate the strategy and business rationale behind your decisions.
- You are comfortable taking the blame if something goes wrong, and equally quick to give credit to the rest of the team when it goes well
- You are detail-oriented, process-driven, and organized, and can stay two steps ahead of the work your team is doing
- You understand devops as culture not as a role, and seek to automate manual processes where it makes sense.
Method of Application
Use the link(s) below to apply on company website.