OVERVIEW OF THE ROLE
We are seeking a short-term hire for a highly motivated and results-oriented Full stack software developer to join our team at ACRE Africa. The Full Stack Software Developer, reporting to the Manager, Digital & Technology Programmes, is responsible for software development, system maintenance, and ensuring the availability, performance, and security of systems. This role involves collaborating with cross-functional teams to enhance existing features and develop new functionalities while maintaining a high standard of code quality and documentation.
Knowledge & Capabilities
Education: Bachelor’s degree in computer science, software engineering, information systems, or a related technology field.
Experience: Proven experience as a programmer or software developer, including troubleshooting user support issues and testing components for quality application delivery.
Programming Proficiency: Strong programming skills in C#, and familiarity with PHP, Python, cross-platform mobile app development, USSD, and SMS development.
Desirable Skillsets
System Design Principles: Deep understanding of designing complex systems, including modularity, scalability, flexibility, and maintainability.
Architecture Patterns: Proficiency in architectural patterns like microservices, monolithic, serverless, and event-driven architectures, and choosing the appropriate one for the project’s needs.
DevOps Knowledge: Experience with Git deployment, automation of CI/CD pipelines, version control, containerization.
ODK Expertise: Experience in configuring, setting up, tweaking, and integrating ODK tools.
Database Skills: Proficiency in relational databases and SQL. In-depth knowledge of various databases (SQL, NoSQL, MysQL, MSSQL, caching) and when to use each based on the application’s requirements.
API Driven and Micro service design: Experience with RESTful and SOAP APIs, as well as microservice-driven and API-driven system design. Both consuming external APIs and creating your own, for dynamic applications.
Front-End Frameworks: Familiarity with popular frontend frameworks like React, Angular, or Vue.js, and backend frameworks like Django, Ruby on Rails, Spring Boot, or Express.js to speed up development and maintainability.
Agile Methodology: Experience working with agile software development methodologies.
Advanced Expertise: Proactively developed expertise in end-to-end processes and technologies related to Machine Learning, Blockchain, and IoT.
Layer Management: Proficient in managing development layers, including local and test environments, server and OS setup, database management, application layer, and presentation layer for web and mobile applications.
Key Responsibilities
Software Development: Collaborate with product managers, product owners, and system analysts to execute programming and software development tasks.
Server Environment: Configure server environments using DevOps technologies like containerization and load balancing to ensure reliable platform operations.
Collaboration: Work with internal staff, external partners, and testers to create new features and improve existing ones.
Technical Input: Participate in technical discussions regarding system features, processes, and functions.
Code Quality and Documentation: Deliver high-quality code and thorough technical documentation. Assist fellow developers with integration efforts.
Troubleshooting: Address technical issues with user-centered solutions, including bug fixes, refactoring, and identifying areas for enhancement.
System Management: Maintain and secure existing data and software environments to sustain optimal performance.
go to method of application »
Interested candidates should submit a CV and a cover letter to be sent to hr@acreafrica.com and cc bnjuguna@acreafrica.com. Closing date: 25th August 2023. Shortlisting and interviews will be conducted on a rolling basis.Only qualified candidates will be contacted.
Apply via :
hr@acreafrica.com