Two-a-Day Group (Pty) Limited, situated in Grabouw, is actively involved in the packaging and cold storage of deciduous fruit and supplies it internationally as well as locally. We are an employer that promotes equal opportunities.
About the Role
Two-A-Day Group operates one of the largest apple and pear packhouses in the Western Cape. Fruit moves through our lines at high throughput, and cameras, machine learning models and edge devices increasingly govern how it is scanned, graded, flagged and tracked.
We are seeking a Senior Software Engineer to develop and own this capability. The role sits at the intersection of computer vision, machine learning, embedded hardware and production software.
The successful candidate will design vision systems from camera capture through to the action taken on the line, train and deploy the underlying models, and integrate the results into the business systems that depend on them.
This is an applied engineering position rather than a research post. The role includes building production web applications in Django alongside the models themselves, as a vision system delivers value only once operational staff are able to view, configure and act on its output.
The key performance areas, performed within a team context, include:
Machine Vision and Machine Learning
- Design and build end-to-end computer vision solutions, from camera capture and image acquisition through inference to the action taken on the line
- Train, validate, deploy and version deep learning models for object detection, classification and defect identification (TensorFlow, PyTorch, YOLO)
- Develop and optimise image processing and feature extraction algorithms using OpenCV and related libraries
- Run inference at the edge on camera and embedded devices, and manage the performance trade-offs between CPU, GPU and on-device processing
- Establish and maintain the data foundation for machine learning, including dataset collection, labelling workflows, augmentation, evaluation methodology and monitoring for model drift in production
- Apply data science techniques to production data to quantify system performance and support operational decisions
Systems and Line Integration
- Integrate vision systems with packhouse equipment, PLCs, graders, scanners, label printers and vendor control systems
- Architect automation and sensing solutions using Raspberry Pi, embedded Linux devices and industrial cameras
- Build and maintain full Django web applications, not just APIs: the operator dashboards, configuration interfaces, review and labelling tools, and reporting screens that make a vision system usable by the people running the line
- Design and expose Django REST Framework APIs so vision results feed the wider business systems
- Store, query and report on high-volume production data across PostgreSQL and Microsoft SQL Server
- Design for packhouse operating conditions, including dust, vibration, intermittent network coverage, seasonal throughput peaks and minimal tolerance for downtime during harvest
Cloud, Infrastructure and DevOps
- Build and deploy services on AWS (EC2, Lambda, S3, RDS, API Gateway, IAM, CloudWatch)
- Automate glue work and orchestration between systems, including workflow automation tooling such as n8n
- Maintain CI/CD pipelines using GitHub Actions and Docker for containerised deployment to both cloud and edge
- Administer Linux systems, write Bash for deployment and diagnostics, and troubleshoot networking issues between plant and cloud
- Monitor system health and act as escalation for critical production incidents
Collaboration and Leadership
- Lead technical design sessions, pair programming and code reviews
- Mentor developers and placement students in Python, machine learning and vision fundamentals
- Work directly with Operations, Quality and Engineering to translate line problems into technical solutions
- Produce and maintain documentation to a standard that ensures operational continuity independent of any single individual
- Bachelor's degree in Computer Science, Electronic or Electrical Engineering, Mechatronics or a related field, or equivalent demonstrable experience
- 5 or more years' experience building and shipping production software, including work in computer vision or machine learning
- Strong Python, with proven experience building and deploying complete Django web applications: models and ORM, migrations, views, templates, authentication and permissions, Django REST Framework and testing
- Hands-on computer vision experience with OpenCV and object detection models such as YOLO
- Practical experience training and deploying models with TensorFlow or PyTorch, not just running pre-trained ones
- Strong SQL, with hands-on PostgreSQL and Microsoft SQL Server
- Confident on Linux with strong Bash scripting for deployment, scheduling and diagnostics
- Practical AWS experience (at minimum EC2, S3, Lambda, IAM)
- Docker, Git and CI/CD pipelines
- Embedded and edge hardware experience (Raspberry Pi, industrial or depth cameras, serial and GPIO interfacing)
Strong Advantage
- React or React Native for building interfaces onto vision and production systems
- Edge inference platforms such as Luxonis DepthAI, NVIDIA Jetson or Coral
- Industrial integration experience: PLCs, Modbus, OPC UA, machine vision cameras, barcode and QR scanning at speed
- Workflow automation tooling such as n8n
- Real-time or high-throughput processing, including multi-threading and queueing
Desired Requirements
- Agriculture, food processing or manufacturing experience
- Postgraduate qualification or formal coursework in machine learning, deep learning or computer vision
- Published research or open source contributions
- Advanced certifications in relevant technologies, for example AWS or NVIDIA
- Formal project management or Agile training
How We'll Measure Success
- Vision and ML systems deployed to production and running reliably through a full season
- Measurable improvement in model accuracy and in the operational metrics those models drive
- Line integrations delivered on time and stable during peak throughput
- Production services meeting agreed uptime targets with fast incident resolution
- Clear documentation and reproducible pipelines for every system you own
- Visible growth in the developers you mentor
- Web interfaces and dashboards delivered alongside every vision system, adopted and used by line staff
- New tools, models or processes that improve how the team and the packhouse work