I build and secure the software that diagnoses and updates vehicles: a diagnostic tool for production and workshop, seed-and-key for three ECUs, two-factor protected diagnostics, and a CAN gateway in production. Before that I built secure messaging for the military. Linux and security are what I know best, and I like teaching colleagues to work with both.
02 // PROFESSIONAL EXPERIENCE04 RECORDS
OCT 2021 — PRESENT
Senior Software Developer
Cimsolutions, placed at VDL Bus & Coach
Diagnostic tool
2022 — PRESENT
UDSOTXVue.jsDebian
Built and maintained the UDS/OTX diagnostic and maintenance tool for the Citea bus: fault codes, parameter calibration, software updates and I/O monitoring. Four releases shipped.
Unblocked production the same day by temporarily connecting the tool on battery voltage alone for a vehicle with a bad connector; the signal script I wrote to diagnose it is still in use.
Implemented seed-and-key for three ECUs — battery management (BMS), Speedometer Assist (ISA) and secure gateway (SGW) — which made the security-gated functions available in the tool and in production flashing.
For new ECUs, decided to roll keys out at runtime with OpenSSL instead of baking secrets into the software.
Automotive cybersecurity
2023 — PRESENT
ISO/SAE 21434TOTPCSMSIDS
Gave the technical input to the UN R155 and ISO/SAE 21434 risk analysis.
Completed ISO/SAE 21434 Level 1 and helped implement the cybersecurity management system that passed its audit in early 2024.
Designed TOTP-protected diagnostics with a cybersecurity consultant and implemented the client side myself.
The intrusion detection system is running; integrating it with the Security Operations Center is in progress.
Secure gateway
2025 — PRESENT
NXP S32YoctoU-BootISO-TPECDSA
Investigated a cyber-secure CAN gateway on NXP S32 with embedded Linux: configured the hardware CAN drivers through debugFS and tested routing between networks at different baud rates.
Integrated the chosen gateway: key provisioning, the client side of an ECDSA handshake, and production monitoring while further features are built.
03 // EDUCATION2013 → 2018
2013 — 2018B.Eng Computer and Electronic Engineering — North West University
2008 — 2012High School — Die Afrikaanse Hoër Seunsskool. Distinctions in Mathematics, Physical Sciences and Afrikaans.
02 // PROFESSIONAL EXPERIENCECONTINUED // 2017 → 2021
JAN 2019 — OCT 2021
Software Developer
Nanoteq
AppliedC++QtPostgreSQLFreeBSDIPsecPHPPython
Helped design end-to-end encryption on XMPP: Diffie-Hellman key exchange, rolling keys for forward secrecy, and windowed decryption so only the visible messages are decrypted.
Ported one-to-one messaging from SIP to XMPP with the mobile team; group chat went live in early 2020.
Built a solo Jitsi proof of concept with end-to-end encryption, reusing the group-key work, then handed it to a sysadmin for internal use.
Maintained the SIP and XMPP system, server and Qt configuration front-end; prototyped SIP, GNU Ring and XMPP, then chose ejabberd after testing servers for extensibility and FreeBSD compatibility.
Worked inside an air-gapped build system, which is where I learned qmake, Clang, SVN, GNU Make and the FreeBSD ports system.
AUG — NOV 2018
Engineer in Training
Hatch
AppliedPythonSQLiteExcel
Ran a Day In The Life Of study at the Amandelbult platinum mine — minute-by-minute data collected underground with the mining captain, shift boss, mining engineer and section chief — and wrote the Python and SQLite pipeline that served it as Excel, CSV or SQL.
JUN 2017 — JAN 2018
Internship
Denel Aerospace
AppliedCANSTM32ARM mbedC++
Built a low-cost, universal CAN node on an STM32F303K8 with a custom transceiver PCB as a proof of concept for avionics networking, and wrote the ARM mbed libraries teammates used to join the same network.
04 // PRACTICEHOW I WORK
Made most of the team's choices on packaging software for Debian, automated the packaging, and helped other developers add that automation to their CMake projects.
Agile with acceptance criteria and a review on every ticket; for junior colleagues the reviews are learning moments.
Onboarded a colleague who works from Belgium, and presented the sprint demo to the wider team.
05 // COMMUNITY INVOLVEMENT05 RECORDS
2020 — 2021Bass Guitarist — Dutch Reformed Church of Africa. Played bass guitar in my church band.
2018Lecturer's Assistant (Demonstrator) — North West University. Gave facilitation lectures and evaluated practical and written assignments for Web Programming and Database Design.
2016 — 2019High School Tutor — Potch Tutoring. Tutored Mathematics, Engineering Science and Machining Theory, including students with maths anxiety.
2013 — 2018Deacon — Dutch Reformed Church of Africa. Organised church and community projects alongside my responsibilities as deacon.
2011 — 2015Violinist: Unisa grade 4 with honours (2011), Simfonia Yuventi youth orchestra (2012), North West University Symphony Orchestra (2013–2015).