aduvenhage.github.io

My Page

Follow me on GitHub

Clean raytracing (no monte carlo) Clean raytracing (no monte carlo) Clean raytracing (no monte carlo)

About Me

Programming is awesome! I started with C++ while still at school. Discovered star-fields and doom fire in sweet 320x240. Was inspired by the PC demoscene, created my own graphics demos for school events and really wanted to make game engines.

Went on to study engineering. Became interested in AI, 3D graphics and aircraft flight dynamics. Created an air-to-air combat flight simulator as my final year engineering project for completion of my degree.

Got a research and development job at South Africa’s leading research institute and worked in the area of real-time modelling and simulation. Worked on simulation models for aircraft, missiles, air-defence guns, RADARs and command and control systems. Worked on 3D viewers and simulation based decision support tools. Briefly worked on customising 1st person shooter games for military training purposes.

Led the development of an in-house high-performance distributed real-time simulation framework, using C++. Extended this framework to integrate with a whole range of military systems to support live training exercises and field trials. Ran with all of this for about 10 years and helped many others to make use of the framework too.

Moved on to the earth observation and remote sensing domain as a Principle Engineer, working on vessel tracking and analysis. Enjoyed creating a high performance web-socket backend for realtime vessel data (using C++) — creating a whole web-server and data integration framework in the process. Used this a part of a vessel tracking system for the South African government.

Left the research institute and joined Takealot, South Africa’s largest online retailer, as a Senior Python Engineer in the Supply Chain team. My role was to developed and maintained micro-service based systems (using Python, Kafka and Kubernetes) for the retail system backend, integrating with warehouse and logistics systems.

Now back to C++ again, with Bohemia Interactive Simulations. At BISim I’m part of the Blue R&D team, helping to improve the data pipeline and engine integrations of the Blue whole world visualization technology used in VBS4. I also led the development of the second round Epic Mega Grant project to integrate the Blue data pipeline with the Unreal Engine.

Lost & Found

A while ago when I spent my days as a python web and micro-services backend programmer, I wanted to get back into some high-performance C++ work. So, Istarted some new projects in an effort to stir up some ghosts and get back to what really made me want to be a programmer in the first place.

  • Raytracer Really enjoying this one!!
  • AIS Beast AIS-Decoder unchained: more speed …
  • Fractals not much yet
  • Little game made with Unreal Engine: WIP

Popular Projects

Python Projects

Mostly just me learning Python and playing in my own time.

  • Jarvis 2.0: Home automation and integrations. WIP Project, Still Private. Hoping to integrate my solar build, home alarm, cameras, etc.
  • Docker machine API Used this on a project that required workers in AWS
  • DJANGO model import/export DJANGO model YAML data import/export

Arduino Projects

Just some tinkering (and mostly stale) …

Professional Skills and Experience

Skills

  • C++ (15+ years)
  • Python (3+ years)
  • Web-tech (2+ years)

Worked In

  • Realtime simulation
  • Performance critical software
  • Distributed systems
  • 3D Visualisation
  • Web-development
  • Location based tracking

Worked With

  • Unreal Engine
  • Docker & Kubernetes
  • Django, Flask & NGINX
  • Digital Ocean & AWS
  • RabbitMQ & Kafka
  • Qt and wxWidgets
  • OpenSceneGraph
  • OpenGL, DirectX, Cesium
  • OpenAL, libopus & portaudio
  • OpenCV
  • Cmake
  • Bootstrap.js
  • NMEA, AIS, ADS-B, RADAR & Tactical data-links
  • MySQL, PostgreSQL & SQLite
  • GMax 3D, Gimp
  • Jira & SCRUM

More profiles

Some References