ByteFuse2025-now·Senior Engineer·Own the architecture and engineering standards for the platform our 5 teams build on, lead the enterprise engineering team, and join other teams' sprints to help with their hardest problems.
Started the company's RFC process and set its format, proposed the architecture forum and bi-weekly senior engineering sync, and drove the move to shared task boards across teams.
Built the guardrails that let engineers and AI agents change the platform with confidence, rolling out type checking, API codegen, deterministic builds and integration tests in CI.
Proposed and led the chat-first redesign of our AI document product, and built most of it in 2 weeks for client pilots.
Designed and built a number-plate and vehicle recognition service with image inference and billing, live with customers and able to handle millions of requests a month.
Advised the other team leads, mentored engineers across teams, and led an external contract team on our AI image editing tools.
+8 more-8 less
Pushed AI-assisted development across the company through shared rule files, a plugin marketplace of skills, demos and training, as its heaviest user of coding agents.
Designed and built the agent framework behind our AI products (background agents, sub-agents, one file per capability), and guided the design of its replayable evals.
Designed and built the platform's security layer, including capability-based permissions on every API route, API tokens for external customers and audit logs.
Planned and sequenced large cross-repo changes so that colleagues could build parts in parallel while I built the core.
Took our AI document checking product from prototype to client pilots, building in source provenance for every input format and an AI rules engine, and presented it to clients as its creator.
Built the platform's email service and AI image editing tools for enterprise clients.
Brought in lakeFS for versioned datasets, built a Rust filesystem that mounts it locally, and built the eval suite for our retrieval system.
Designed our traffic cameras' on-device vision system, made detection 36x faster on NVIDIA Jetson, and reverse engineered the FLIR camera protocol.
Dragonfruit AIML Intern to leading teams in 18 months, Technical Lead in 292024-2025·Technical Lead·Responsible for architecture, process and standards across engineering, reporting to the head of engineering. Designed new systems and led the project teams that built them.
Wrote most of the end-to-end spec for moving the core video platform from batched to real-time processing, extending the design proven in the fraud detection pipeline.
Rewrote the build system to be deterministic on ephemeral machines, so that many builds could run at the same time across many build machines. This made the on-device bundle of microservices testable with mocks and swappable models, and cut regressions.
Led technical hiring company-wide and all recruitment in South Africa, as primary technical interviewer for 135+ interviews.
Designed and built an AWS Lambda-like, event-driven compute platform for on-demand allocation of on-prem Apple silicon devices.
Led UX overhauls of the core app platform and video streaming experience with the design team. Rebuilt the frontend for per-customer theming and a federated app layer, and led live webcam streaming with real-time stats and metadata.
2023-2024·Member of Technical Staff·Led the self-checkout fraud detection team (~5 engineers) and architected the system end to end, which was delivered to a customer and later became a product.
Wrote the company-wide guidelines for code, testing and review and enforced them in CI, and in 2023 introduced automated code review with generative AI to catch issues linters miss.
Combined camera vision with point-of-sale data on a cloud-agnostic video pipeline (RabbitMQ, vector DBs) that processed 3 years of video in 24h across 100+ nodes on multiple clouds.
Built endpoints, CLIs and libraries giving engineers direct access to video and data through the core API, cutting data access for local experiments from hours to minutes.
Designed and led a real-time device status system, showing customers on-prem faults like a slow network or full disk in the browser, and refactored its WebSocket service with metrics and tests to stop regressions.
Doubled inference efficiency on Apple's Neural Engine with a multiprocessing layer, supporting more cameras per device and lowering rollout cost for customers.
+2 more-2 less
Built algorithms to auto-correct clock drift between tills and cameras, replacing hand-tuning and making the fraud data accurate enough to cross-link.
Tested on-prem devices as an LLM inference layer for customers, which informed business strategy and the roadmap.
2022-2023·ML Engineer·Moved into frontend at the CEO's request, then led company-wide UI/UX design reviews and website quality control.
Built camera distortion and projection correction in JAX with a novel initialisation algorithm and real-time training. Trained models swap to NumPy at runtime, so they run inside lightweight services (patent pending, co-inventor).
Optimised spatial analytics (~100x), allowing queries over longer time ranges with lower resource use.
Refactored legacy systems for types and tests, and improved Docker and dependency resolution across repos, for smaller images, faster builds and safer changes.
Cut CI time with caching (~7x) and model training time (~10x), for faster feedback and more experiments.
2022·ML Intern·Built and deployed custom models for live CCTV analysis, including smoke and fall detection.
Built the Flyte training pipeline (containerised, deterministic and observable) that became the standard way engineers trained models.
Trained fire and smoke detectors from scraped data, with a custom augmentation pipeline matched to real camera conditions (object size, brightness, compression) so they generalised better. They shipped as a paid customer service.
Took models trained on NVIDIA GPUs to on-prem Apple silicon, tracing, converting, benchmarking and optimising them for on-device inference.
University of the Witwatersrand2020-2022·MSc. Computer Science (Machine Learning) with Distinction·Identified the assumptions and failure cases of VAE disentanglement frameworks, showing that intuitive representations arise from the data. Also worked as a teaching assistant for computer vision and data science from 2019 to 2020.
Introduced 3 datasets, 5 model frameworks and 2 metrics for disentanglement research, including an adversarial dataset that breaks pixel-wise reconstruction losses.
Wrote disent, the open-source framework the research runs on. Meta Research's code for an ICLR 2023 paper credits it as a reference implementation of disentanglement metrics.
Awarded Best Computer Science Dissertation of 2022 (88%) for "Disentanglement using VAEs..."
Awarded Best Tutor for designing the computer vision course project on solving tabletop puzzles from images, which is still in use.
Awarded Coolest Coder at Indaba X 2021 for the disent repository.
2016-2019·BSc. & BSc Honours Computer Science with Distinction
Specialised in High-Performance Computing, Robotics, and Reinforcement Learning.
Placed 3rd in the International ISC Student Cluster Competition (HPC), 2018.
Placed first in class in the reinforcement learning course project (Unity Obstacle Tower), 2019.
Video Surveillance Processing Based on Distortion Identified in Video Streams2024·Patent pending, co-inventor. US20250285291A1, filed by Dragonfruit AIgoogle patents
Overlooked Implications of the Reconstruction Loss for VAE Disentanglement2023·IJCAIpaperarxivcode
Disentanglement Using VAEs Resembles Distance Learning and Requires Overlapping Data2022·MSc thesis, Witsthesiscode
Accounting for the Sequential Nature of States to Learn Features for Reinforcement Learning2022·RLDM, extended abstractpaperpostercode
Bandit PBT: Enhancing Population-Based Training with Smart Exploit Strategies2019·BSc Honours report, Wits, unpublishedcode
talks
Identifying 100,000+ MTG cards in real-time2025·PyData Johannesburgslidescode
Overlooked Implications of the Reconstruction Loss for VAE Disentanglement2023·IJCAI 2023, paper presentation (Macao)slidesposter
Data Overlap: A Prerequisite for Disentanglement & Metric Learning Solutions2021·Brown University Intelligent Robot Lab, invited talk (online)slides