Software engineer. Machine learning researcher. Life long learner. Longboarder. Lover of coffee and tea. Tinkerer.

I started programming at the age of 8, using Visual Basic, after one of my dad’s colleagues had left some textbooks at our house. In my early teens I started doing freelancing work, mainly in web development, until I landed a part-time position at a game development studio (BrightMind Studios) based in Cape Town. I led a team of 3 as we worked on a series of brain-training puzzle games. After a few more years of freelancing I joined a South African media agency (MadePod) as a director and head of development. Our portfolio included Carte Blanche, Sage, Jacaranda FM and Netcare.

I eventually left to further my studies and focus on my own company. I am currently a software engineer at Entelect and am finishing my honours degree in computer science. I am a firm believer in being a life-long learner and am continually striving to improve myself. I value the opinion of others and think it can be observed in my daily actions that I aim to make the world a better place. I also like to think I have a good sense of humour. My professional strengths include various programming languages (though a new one is easily learnt), leadership skills, project management, strong problem-solving skills and a lot of passion for what I do.


BSc (Computer Science) – University of Pretoria

Associate Android Developer – Google

Certified Java 8 Associate - Oracle

Certified Java 8 Professional - Oracle

Certified Associate Cloud Practitioner - Amazon Web Services

Certified ScrumMaster® (CSM) – Agile Alliance


  • Scala: Functional Programming meets Data Science
  • Building Enterprise Systems with the Play! 2 Framework
  • Particle Swarm Optimisation in Python
  • Optimise Your Microservice Dev Workflow
  • Selling the Cloud


Three-Valued Bounded Model Checking with Cause-Guided Abstraction Refinement, Nils Timm, Stefan Gruner, Dewald de Jager [Awaiting Publication]

Open-Source Projects

  • CIlib
  • Three-Valued Bounded Model Checker
  • AccordionSwift