Posted:Nov 11
By:Hiring Kenya
Company Details
Industry:
Non-Profit Organization Management
Description:
Since the sale of our first kit in 2013, SunCulture has been on a mission to help smallholder farmers in Africa improve both crop yields and quality. We are driven to constantly innovate and improve our technology to make solar powered irrigation solutions truly affordable for the millions of farmers on the continent
Job Description
- As a Software Engineer at SunCulture, you will play a crucial role in designing, developing, and deploying scalable software solutions that drive the adoption of our innovative products. You will work closely with cross-functional teams to ensure that our technology meets the highest standards of reliability and performance, contributing directly to the empowerment of smallholder farmers across Africa.
Key Responsibilities
- Software Development: Design, develop, and maintain high-quality software applications using modern frameworks and technologies. Provide technical guidance and mentorship to junior software engineers, promoting best practices in software development.
- System Architecture and Performance Optimization: Collaborate with the architecture team to design scalable and maintainable software architectures. Optimize application performance, scalability, and reliability, identifying and addressing bottlenecks and issues.
- Code Review, Testing, and Continuous Integration: Conduct code reviews to ensure adherence to coding standards and best practices. Develop and execute unit and integration tests. Implement and manage CI/CD pipelines using tools such as GitHub Actions, ensuring seamless integration and deployment of software.
- Cloud Management and Containerization: Utilize cloud services (AWS, Azure, GCP) to develop and manage scalable and resilient applications. Implement and manage containerized applications using Docker and Kubernetes.
- Cross-Functional Collaboration: Work closely with QA, DevOps, and product management teams to ensure the successful delivery of software projects. Actively contribute to and participate in agile squads, ensuring effective collaboration and delivery of squad goals.
- Technical Documentation: Maintain comprehensive documentation of software design, implementation, and testing processes.
- Innovation and Emerging Technologies: Stay current with industry trends and emerging technologies, evaluating their potential impact on the company’s technology stack.
- IoT and Firmware Development: Experience with IoT firmware development is a plus.
Tech Stack
- JavaScript Frameworks: Node.js, TypeScript, React
- Backend: Python Fast API, AWS Gateway and Lambda, Elastic Beanstalk
- Databases: AWS RDS for MySQL and PostgreSQL, Redis
- Messaging: Kafka
- CI/CD: GitHub Actions, GitHub
- Mobile: React Native for Android
- Cloud Services: AWS, Azure, GCP
- Containerization and Orchestration: Docker, Kubernetes
Does this sound like you?
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Minimum of 2 years of progressive experience in software development.
- Strong technical expertise in JavaScript frameworks (Node.js, TypeScript, React) and backend technologies (Python, AWS Lambda).
- Experience with cloud technologies, particularly AWS, Azure, and GCP.
- Proficiency in Agile methodologies and DevOps practices.
- Experience with containerization and orchestration using Docker and Kubernetes.
- Exceptional problem-solving skills and the ability to work effectively in a fast-paced, dynamic environment.
- Excellent communication and collaboration skills, with a focus on teamwork and continuous improvement.
- Experience with IoT firmware development is a plus.
Education: Degree, Diploma
Employment Type: Full Time