Live opening · Posted 2 days ago
At a glance
The key details from the original listing.
About the role
Description supplied by the original job listing.
Who will you be working with?
You will work as part of the Engineering team, reporting directly to the Engineering Manager and partnering closely with software, electronic, hardware, mechanical, production, quality, field support, and product management teams.
In this role, you will act as the technical leader for a team developing collision avoidance, proximity detection, and driver monitoring solutions used in mining and heavy industrial environments. You will collaborate across disciplines to ensure software reliability, safety, performance, and successful product delivery while mentoring engineers and driving engineering best practices.
How will you make a difference?
As a member of the Digital Mine Engineering team, you will be responsible for providing technical leadership across the software and firmware stack supporting safety-critical mining solutions. You will define technical direction, own architectural decisions, manage the software backlog, and contribute directly to software development activities.
The role combines hands-on engineering with technical leadership, ensuring the delivery of reliable, scalable, and maintainable software products. You will serve as the primary escalation point for complex software challenges, provide mentorship to the engineering team, and help drive continuous improvement in development processes, tooling, and software quality standards. Your contributions will directly support products designed to improve safety, operational performance, and reliability in demanding industrial environments.
What do we want to know about you?
Required Qualifications & Experience
Bachelor's degree in Computer Engineering, Electronic Engineering, Computer Science, or a related discipline. Equivalent experience will be considered for exceptional candidates.
Minimum of 7 years of professional software development experience.
Minimum of 2 years of experience in a Technical Lead, Principal Engineer, Senior Engineer, or similar technical leadership role.
Must be resident in South Africa and legally authorized to work in South Africa.
Required Technical Skills
Strong hands-on programming experience in both Python and C++.
Experience developing software or firmware that interfaces directly with hardware devices, sensors, and peripherals.
Experience working with Linux on ARM-based platforms, including cross-compilation and deployment.
Experience debugging hardware-software integration issues using tools such as oscilloscopes, logic analyzers, or protocol analyzers.
Experience designing and maintaining CI/CD pipelines, automated build processes, software quality checks, and release management workflows.
Strong knowledge of Git and modern software development practices.
Hands-on experience with machine vision and deep learning frameworks such as OpenCV, PyTorch, TensorFlow/TensorFlow Lite, and ONNX.
Understanding of machine vision model lifecycle management including dataset creation, model training, evaluation, and deployment.
Strong system troubleshooting, problem-solving, and root cause analysis skills.
Excellent written and verbal communication skills.
Preferred Qualifications
Experience with GitLab CI/CD.
Familiarity with Jira and Confluence.
Experience working within Agile or Scrum development environments.
Knowledge of edge AI deployment, model optimization, and embedded inference.
Experience with Yocto, Buildroot, or similar embedded Linux build systems.
Experience with CAN Bus, RS232/485, TCP/IP, MQTT, or related communication protocols.
Experience with IoT, telemetry, telematics, GPS, Bluetooth, or Wi-Fi technologies.
Familiarity with functional safety standards such as IEC 61508 or ISO 26262.
Experience within mining, heavy industrial, automotive, or other safety-critical industries.
What will your typical day look like?
Define and maintain software architecture, technical standards, and engineering best practices across the software and firmware ecosystem.
Own and manage the software backlog, including work breakdown, prioritization, estimation, and task assignment.
Design, develop, review, and maintain production software using Python and C++.
Develop and support software and firmware that interfaces directly with company hardware platforms and sensors.
Provide technical leadership and oversight for machine vision development, model training, evaluation, and deployment activities.
Lead troubleshooting and root cause investigations for complex software, firmware, and hardware integration issues.
Drive improvements to CI/CD pipelines, build automation, software quality processes, and release management.
Conduct code reviews and promote high standards for software quality, testing, documentation, and maintainability.
Mentor software engineers through coaching, technical reviews, knowledge sharing, and professional development support.
Partner with cross-functional teams including hardware, electronics, production, quality, field support, and product management.
Support technical recruiting efforts, including candidate assessment and interview participation.
Ensure software development activities align with safety, quality, traceability, and regulatory expectations for products deployed in mining and industrial environments.
Occasionally travel to customer and mine sites to support deployment, troubleshooting, and technical discussions.
#LI-PROMOTEDJOBS
Employment type
Full-time
Work arrangement
No
Your early-applicant advantage
Live timing from JobBeeper.
More openings worth a look
Recently tracked roles with full details and direct application links.