Software Engineer (Machine Learning)

Sanlam

Cape Town

On-site

ZAR 900,000 - 1,200,000

Full time

3 days ago
Be an early applicant

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

Sanlam in Cape Town is expanding its digital first strategy with a Software Engineer (ML) role. You will own ML-driven features end-to-end, mentor juniors, and collaborate with product and design to translate requirements into production-ready solutions.

Expect to design ML pipelines, manage data workflows, and deploy scalable models using scikit-learn, TensorFlow, or PyTorch, while ensuring best practices in testing, monitoring, and incident response.

Qualifications

  • Degree in CS/IT or equivalent practical experience.
  • 5+ years of software engineering experience.
  • Experience with ML frameworks and data pipelines.
  • Knowledge of distributed systems and scalable architectures.
  • Ability to mentor junior engineers and collaborate with cross-functional teams.

Responsibilities

  • Own ML-driven features from concept to production.
  • Design and maintain data pipelines and ML workflows.
  • Develop model serving APIs and monitoring.
  • Collaborate with product and design teams on requirements.
  • Contribute to team practices and code quality.

Skills

ML engineering
Data pipelines
Distributed systems
Python
Code reviews
Mentoring
Cross-functional collaboration
Algorithms & data structures

Education

Bachelor's degree in Computer Science or related field

Tools

scikit-learn
TensorFlow
PyTorch
AWS
Docker
Kubernetes

Job description

Who are we?

Sanlam was established as a life insurance company in South Africa but has since transformed into a diversified financial services group that operates across the African continent, India, Malaysia and selected developed markets, with listings on the Johannesburg, A2X and Namibian Securities Stock exchanges. In 2018 the Group celebrated its centenary as well as 20 years since demutualisation and listing in South Africa and Namibia. Sanlam is one of the largest internationally active insurance groups in the world with a presence in 27 countries and has the biggest non-banking financial services footprint on the African continent.

Who are we?

Sanlam was established as a life insurance company in South Africa but has since transformed into a diversified financial services group that operates across the African continent, India, Malaysia and selected developed markets, with listings on the Johannesburg, A2X and Namibian Securities Stock exchanges. In 2018 the Group celebrated its centenary as well as 20 years since demutualisation and listing in South Africa and Namibia. Sanlam is one of the largest internationally active insurance groups in the world with a presence in 27 countries and has the biggest non-banking financial services footprint on the African continent.

The Group's four business clusters (Sanlam Life and Savings, Sanlam Investment Group, Sanlam Allianz and Santam) house the Group's business operations. The Group Office provides strategic direction and support to the four clusters, assisting them in realising their strategies and meeting their business objectives. The Group Office is responsible for governance and for the Group's centralised functions, which include: Group Tecnhnology, Finance, Actuarial, Risk and Balance Sheet Management, Strategy, Human Capital, Brand, Marketing and Corporate Affairs. The Group Office ensures cohesive management across the organisation.

Position Overview

SFTx is a newly established digital first business unit within the Sanlam Group on a mission to democratize financial advice and solutions for everyone across the African continent. We exist to pioneer inclusive financial confidence helping people build strong foundations to bridge the gap in generational wealth. Our culture is that of agility and constant deployment, we believe in learning fast, learning cheap and learning forward. Our aim is to provide a work environment where knowledge workers can accelerate the development of their ideas and bring innovation to market, at the same time provide compelling career and development proposition that will enable them to realize their dreams.

A Software Engineer (ML) is an independent contributor who takes ownership of ML-driven and data-intensive features from concept to production, whilst mentoring junior engineers and actively improving team practices. This role requires the ability to work autonomously, solve problems across the codebase and data/ML stack, and collaborate effectively with cross-functional teams. SEs in this track deliver complete features and models independently whilst demonstrating growing influence beyond individual tasks to impact the broader team.

Reporting to a Tech Lead, this role requires solid technical expertise, proven ability to deliver end-to-end solutions across data and ML systems, and emerging leadership skills in mentoring and process improvement. You will work closely with Product Management and Design teams to understand business context, collaborate with engineering peers to deliver high-quality solutions, and actively participate in improving development, testing, and operational practices across the team.

What will you do?
Feature Ownership & Delivery
  • Take full ownership of new features and ML/data products, delivering them from concept to production independently.
  • Work independently to create solutions without constant direction or supervision.
  • Design and implement moderately complex systems, including ML pipelines and data workflows, with understanding of trade-offs.
  • Solve problems in any part of the codebase, including data and ML components, demonstrating breadth of technical capability.
  • Balance feature delivery with long-term code quality and technical considerations.
  • Proactively identify and address small pieces of technical debt within work scope.
Code Quality & Technical Excellence
  • Focus on operational and code excellence during code reviews and feature development.
  • Contribute to coding standards and ensure code efficiency and reusability.
  • Write robust, well-tested code that meets team quality standards.
  • Participate actively in code reviews, providing constructive feedback to peers.
  • Apply understanding of design principles and software engineering best practices.
  • Work with multiple frameworks and explore libraries as needed for solutions, including ML frameworks such as scikit-learn, TensorFlow, or PyTorch.
ML Engineering
  • Apply understanding of the ML model lifecycle: training, evaluation, deployment, and monitoring.
  • Design and maintain data pipeline orchestration and workflow management.
  • Apply data versioning, feature stores, and ML metadata management practices.
  • Build and maintain model serving patterns and APIs for ML systems.
  • Articulate the pros and cons of relevant data structures and algorithms for time and space complexity, including trade-offs as scope evolves.
Operational Excellence
  • Participate actively in on-call rotations and handle incidents effectively.
  • Implement robust monitoring, logging, and alerting for owned features, services, and ML systems.
  • Respond to production issues promptly and escalates appropriately when necessary.
  • Contribute to incident postmortems and help prevent recurrence of issues.
  • Understand operational practices — scalability, robustness, fault tolerance, load balancing, and health checking — and apply them to ensure system and model reliability.
Cross-functional Collaboration
  • Work effectively with Product Management and Design teams to understand business context and requirements and shape solutions.
  • Effectively collaborate with engineering team members to bring out the best in others.
  • Communicate complex technical ideas clearly and facilitate team discussions.
  • Participate in technical discussions and contribute to team decision-making.
Team Improvement & Mentorship
  • Proactively improve the team's development, testing, and operational practices.
  • Begin mentoring junior engineers and provide constructive feedback.
  • Take ownership of tasks and demonstrate leadership in feature delivery.
  • Demonstrate growing influence beyond individual tasks to impact the broader team.
  • Start scaling through others by guiding team members and delivering through them.
Qualification And Experience
  • Relevant degree or diploma in Computer Science, IT, or related field (or equivalent practical experience).
  • Typically 5+ years of software engineering experience.
  • Proficient in multiple programming languages with understanding of language-specific best practices.
  • Comfortable with complex algorithms and optimised data structures.
  • Experience with distributed systems, APIs, databases, and scalable architecture.
  • Understanding of cloud-based infrastructure and operational practices (monitoring, metrics, fault tolerance).
  • Exposure to ML frameworks (scikit-learn, TensorFlow, PyTorch, or similar).
  • Knowledge of cloud services such as AWS VPC, Auto Scaling, serverless computing, storage (EBS, S3), containers, and DNS is preferred, though not a prerequisite.
What will make you successful in this role?
  • Independent Contribution: Proven ability to work independently on moderately complex problems, make sound technical decisions, and deliver complete features and ML/data solutions without constant supervision.
  • Problem-solving Skills: Efficient at debugging and troubleshooting moderately complex issues across code and data/ML systems. Can analyse problems systematically and develop effective solutions with minimal guidance.
  • Collaboration & Communication: Strong communication skills to facilitate team discussions, work effectively across functions, and explain technical concepts clearly. Builds positive working relationships with Product, Design
Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Software Engineer (Machine Learning)
Software Engineer (Machine Learning)

Techrepo.co.za • Cape Town

On-site
ZAR 900,000 - 1,350,000
Software Engineer (Machine Learning)
Software Engineer (Machine Learning)

Sanlam Limited • Cape Town

On-site
ZAR 900,000 - 1,500,000
Software Engineer
Software Engineer

Sanlam Limited • Cape Town

On-site
ZAR 1,200,000 - 2,100,000
Tech Lead
Tech Lead

Techrepo.co.za • Bellville

On-site
ZAR 1,500,000 - 2,100,000
SENIOR MACHINE LEARNING ENGINEER – Build Production ML at FinTech Scale – CAPE TOWN (Hybrid), R[...]
SENIOR MACHINE LEARNING ENGINEER – Build Production ML at FinTech Scale – CAPE TOWN (Hybrid), R[...]

Acuity Consultants • Wes-Kaap

Hybrid
ZAR 1,350,000 - 1,450,000
Lead Software Engineer | Johannesburg | Permanent
Lead Software Engineer | Johannesburg | Permanent

Edge Executive Search Group • Johannesburg

On-site
ZAR 1,000,000 - 1,800,000
Senior Machine Learning Engineer
Senior Machine Learning Engineer

Lula • Wes-Kaap

On-site
ZAR 900,000 - 1,500,000
Product Manager
Product Manager

Sanlam Limited • Cape Town

On-site
ZAR 900,000 - 1,500,000
ML Software Engineer: End-to-End Models & Impact
ML Software Engineer: End-to-End Models & Impact

Sanlam • Cape Town

On-site
ZAR 900,000 - 1,200,000
SENIOR MACHINE LEARNING ENGINEER (ML Engineer) - Build Production ML at Scale in leading FinTec[...]
SENIOR MACHINE LEARNING ENGINEER (ML Engineer) - Build Production ML at Scale in leading FinTec[...]

Acuity Consultants • Wes-Kaap

Hybrid
ZAR 1,260,000 - 1,540,000