About the Role
Our client, a dynamic player in the AI & Emerging Technologies sector, is actively recruiting a seasoned Senior Software Engineer to contribute to their cutting-edge AI Platform team. This role is located in Welkom, Free State, offering a hybrid work model that balances in-office synergy with remote flexibility. You will be responsible for designing, developing, and maintaining scalable and robust software systems that underpin our client's advanced AI capabilities. This position requires a deep understanding of software engineering best practices, coupled with experience in building infrastructure for machine learning and data processing. The ideal candidate is passionate about solving complex technical challenges and has a proven ability to deliver high-quality, performant software solutions. You will collaborate closely with data scientists, ML engineers, and other stakeholders to ensure the platform meets the evolving needs of the organization. This is an excellent opportunity to work with a talented team on impactful technologies that are shaping the future.
Key Responsibilities
- Design, develop, test, and deploy robust, scalable, and maintainable software for the AI platform.
- Build and optimize infrastructure components for machine learning workflows, including data pipelines, model training, and inference services.
- Collaborate with data scientists and ML engineers to understand their requirements and provide them with efficient tools and services.
- Implement and maintain CI/CD pipelines for automated testing and deployment of platform services.
- Develop monitoring and alerting systems to ensure platform reliability and performance.
- Troubleshoot and resolve complex technical issues across the AI platform stack.
- Contribute to architectural decisions and technical roadmap planning for the AI platform.
- Write clear, concise, and well-documented code, adhering to high-quality standards.
- Participate in code reviews and provide constructive feedback to peers.
- Mentor junior engineers and share best practices in software development and AI infrastructure.
Requirements
- Bachelor's degree in Computer Science, Engineering, or a related technical field.
- Minimum of 6 years of professional software engineering experience, with a significant focus on backend systems and infrastructure.
- Proficiency in one or more programming languages such as Python, Go, Java, or C++.
- Experience building and managing distributed systems and microservices architectures.
- Familiarity with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes).
- Understanding of machine learning concepts and experience working with ML frameworks or platforms is highly desirable.
- Experience with database technologies (SQL and NoSQL).
- Strong problem-solving, debugging, and analytical skills.
- Excellent communication and teamwork abilities.
- Experience with MLOps principles and tools is a plus.
Benefits
- A competitive annual salary between ZAR, commensurate with experience and skills.
- Comprehensive health, dental, and vision insurance plans.
- Generous paid time off and company holidays.
- Opportunities for professional development, including access to online courses and industry certifications.
- A stimulating hybrid work environment that encourages collaboration and innovation.
- Exposure to cutting-edge AI technologies and complex engineering challenges.
- Retirement savings plan with company matching contributions.
- Regular team-building events and a supportive company culture.