Bernardt Duvenhage, Developer in Rocky Mountain House, AB, Canada
Bernardt is available for hire
Hire Bernardt

Bernardt Duvenhage

Verified Expert  in Engineering

Machine Learning Developer

Location
Rocky Mountain House, AB, Canada
Toptal Member Since
October 21, 2020

Bernardt is passionate about developing technology that fundamentally improves lives and broadens our knowledge. He led teams and developed software for computer vision, natural language understanding, modeling and simulation, and computer graphics projects. Bernardt has experience programming in C++ and Python, using frameworks such as scikit-learn and PyTorch for machine learning and deep learning, transformers, TorchVision, CUDA, OpenGL, Open Scene Graph, OpenCV, and NLTK.

Portfolio

Praekelt Consulting (Now called Helm)
Data Analytics, REST APIs, Google Cloud, BigQuery, Google BigQuery...
Council for Scientific and Industrial Research
3D Math, OpenGL, Embedded Software, Assembly, OpenSceneGraph, GLSL, OpenCV, C++...
Council for Scientific and Industrial Research
3D Math, Rendering, OpenGL, C++, Real-time Vision Systems, GPU Computing...

Experience

Availability

Part-time

Preferred Environment

C++, Python, MacOS, Linux

The most amazing...

...project I've developed is a natural language understanding and computer vision service used to build conversational agents in low-resource languages.

Work Experience

Machine Learning Lead, Conversational AI Systems

2017 - PRESENT
Praekelt Consulting (Now called Helm)
  • Developed a natural language processing and computer vision service to build task-oriented conversational agents for low-resource languages. Technologies include transformers, PyTorch, TorchVision, Flask-RESTful, and PostgreSQL.
  • Created intent classification, sentiment, and entity extraction models that rely on a variety of deep learning and classical machine learning techniques to accommodate various languages. Used transformers, sklearn, PyTorch, and TensorFlow.
  • Developed a machine vision-based quality assurance application with a machine vision camera interface. The technologies include TorchVision, Flask-RESTful, GeniCam, and React. Used deep transfer learning to improve sample efficiency of clients' data.
Technologies: Data Analytics, REST APIs, Google Cloud, BigQuery, Google BigQuery, Deep Neural Networks, Neural Networks, Data Science, Generative Pre-trained Transformers (GPT), Natural Language Processing (NLP), GPT, Artificial Intelligence (AI), Google Cloud Platform (GCP), Flask-RESTful, Python, Computer Vision, Natural Language Understanding (NLU), Machine Learning, Sentiment Analysis, Text Classification, Image Classification, Leadership, GPU Computing, Image Recognition

Research Group Leader | Principal Research Scientist

2014 - 2017
Council for Scientific and Industrial Research
  • Developed a real-time image processing framework as well as image enhancement, target detection, object tracking, and state estimation algorithms.
  • Developed software interfaces to hardware devices like cameras, pan-tilt-zoom systems, communication radios, and real-time clocks.
  • Led the company's image processing team of full-time employees and students, published some papers, and helped with talent management and screening.
Technologies: 3D Math, OpenGL, Embedded Software, Assembly, OpenSceneGraph, GLSL, OpenCV, C++, Real-time Vision Systems, Leadership, GPU Computing, Image Recognition, Video Capture, Facial Tracking, Facial Recognition

Senior Research Scientist, Optronic Sensor Systems

2008 - 2014
Council for Scientific and Industrial Research
  • Developed models for a physically based optronics scene simulator. The models were developed in C++ and an in-house 3D modelling tool.
  • Developed physically based renderers for the long and medium wave infrared bands. The full software and hardware accelerated renderers were developed in C++ and OpenGL with GLSL. The rendering algorithms ranged from simple to path tracing.
  • Developed physically based renderers for the short wave (reflective) and visual bands. The software and hardware accelerated renderers were developed in C++ and OpenGL with GLSL. The rendering algorithms ranged from simple to path tracing.
Technologies: 3D Math, Rendering, OpenGL, C++, Real-time Vision Systems, GPU Computing, Video Capture, Facial Tracking, Facial Recognition

Senior Research Scientist, Modelling and Simulation

2004 - 2008
Council for Scientific and Industrial Research
  • Developed a faster than real-time distributed modelling and simulation framework for wargaming type simulations. The simulation framework was implemented in C++ and employed TCP communication between the nodes.
  • Developed vehicle and equipment models for wargaming type simulations. The models ranged from behavioural to physically based and were implemented in C++.
  • Developed a 3D simulation viewer and analysis tool using Open Scene Graph and OSGEarth.
Technologies: Simulations, Algorithms, OpenSceneGraph, Modeling, OpenGL, C++, GPU Computing, NVIDIA CUDA, Video Capture

A Natural Language Understanding and Computer Vision Cloud Service

A Python-based cloud service for training and deploying natural language understanding and computer vision models for task-oriented conversational agents. I was responsible for developing the data science workflow, model, and data management as well as the production service. I was also responsible for implementing and training a number of models for image segmentation and classification, intent detection, sentiment, and entity extraction. The technologies used include PyTorch, TorchVision, TensorFlow, SKlearn, Pandas, swagger/OpenAPI, Flask, and PostgreSQL.

Real-time Image Processing Framework

An image processing and machine vision framework implemented in C++, CUDA, and GLSL and optimized for real-time execution on multiple simultaneous high-resolution camera streams. The framework also included my own long-range and low light image enhancement algorithms, image stabilization, object detection, and target tracking implementations as well as software interfaces to hardware devices like machine vision cameras, pan-tilt-zoom systems, and communication radios.

Physically-based Path Tracing Renderer

A physically-based renderer for indoor scenes written in C++. The renderer used path tracing and other ray tracing variants to create simulated images of indoor and outdoor scenes for a surveillance modeling application. The implementation included area and skylights, various bidirectional scattering functions, and acceleration structures to support large complex scenes, as well as concepts such as flux, radiance, irradiance, and brightness.

Languages

Python, C++, GLSL, Assembly

Libraries/APIs

PyTorch, REST APIs, TensorFlow, Flask-RESTful, OpenCV, OpenGL, Scikit-learn, Natural Language Toolkit (NLTK), NumPy, Pandas

Platforms

Linux, MacOS, Google Cloud Platform (GCP), NVIDIA CUDA

Other

NLU, Computer Graphics, Machine Learning, Computer Science, Artificial Intelligence (AI), Natural Language Processing (NLP), Neural Networks, Text Classification, Image Classification, AI Design, GPT, Generative Pre-trained Transformers (GPT), Computer Vision, Modeling, Google BigQuery, Data Analytics, Simulations, Facial Recognition, Facial Tracking, Video Capture, Image Recognition, Rendering, Visual Computing, Sentiment Analysis, Real-time Vision Systems, Leadership, GPU Computing, Mathematics, Physics, Molecular Biology, Hardware Development, Data Engineering, Deep Reinforcement Learning, Deep Learning, Natural Language Understanding (NLU), Embedded Software, Torchvision, Transformers, Image Processing, Hardware Drivers, Graphical User Interface (GUI), Ray Tracing, Algorithms, 3D Math, Deep Neural Networks, Generative Adversarial Networks (GANs)

Tools

BigQuery, OpenSceneGraph

Paradigms

Data Science

Storage

Google Cloud

2008 - 2015

PhD in Computer Science

University of Pretoria - South Africa

SEPTEMBER 2020 - PRESENT

Deeplearning.ai NLP Specialization (In Progress: 3/4 Course Certificates Completed)

Coursera

DECEMBER 2019 - PRESENT

Deep Reinforcement Learning for Enterprise Nanodegree

Udacity

SEPTEMBER 2018 - OCTOBER 2020

Google Cloud Certified - Professional Data Engineer

Google Cloud

AUGUST 2018 - PRESENT

Deep Learning 5-course Specialization by Deeplearning.ai

Coursera

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring