About me

My way of working in a few keywords:

  • Collaboration: when working in a team, collaboration is key. On a professional level, this means discussing what to solve and how to solve it. Once that is nailed down sufficiently and clearly written down, all team members can pick up tasks without interfering with each other’s work. It is equally important to maintain a good group dynamic. Discussing the latest and greatest games over coffee, for example, or playing a board game during lunch.
  • Self-sufficient: after discussing what needs to be done, it’s time for action! Once we, as a team, know what needs to be done, I can independently work on tasks and bring them to a successful conclusion. I continuously assess what the priority of each task is, and make sure to tackle the most important work first. When I have questions or hit a roadblock, I will proactively discuss these with other team members. That means I’m not waiting for anyone to ask me if everything is going smoothly, I make sure I can stay productive.
  • Versatile: I have a broad interest in everything that has to do with programming. I know the basics of many technologies. That means I can get started a very wide range of tasks: high-performance GPU visuals, Java applications for desktop, robust server-side solutions, Javascript Solutions for in the browser, mobile applications for Android, you name it …
  • Eager to learn: I can quickly get started with new technologies. I follow technology sites like Hacker News and follow up on technological trends. If anything interests me, I try it I’ll dig a little deeper into the documentation and experiment where possible.
  • Fit and finish: I think the quality of my work is important. The task isn’t done simply when “it works”. A task is only truly finished when it is sufficiently tested and documented, and the code factored appropriately.
  • Engaged: A better world starts with yourself. I try to look past the end of my nose and make choices that are not beneficial to just myself, but to my team and society at large.

Outside of work, I am also a devoted husband, father of 4, avid badminton player and a potter.

Career

Senior Software Engineer

2018 - Now

As a senior software engineer, I was responsible for delivering roadmap features.

This went from the conceptual phase to the finishing phase. In other words, I

  • sat down with the product manager and CEO to clarify requirements
  • consulted with our architects to work out the design of the features
  • managed a team to implement the functionality
  • also co-wrote the code myself

Team Lead

2019 - 2022

For two years I was in charge of one of two developer teams at Datadobi. The focus here was on coordination and team working.

In this role I

  • held regular one-on-one meetings with my 6 team members, 3 of which were remote
  • followed up on the status of the various projects that were assigned to my team
  • reported to the management team on progress and obstacles
  • did the necessary administration for those team members who worked as consultants for Datadobi

After two years we hired a VP of Engineering, who took over many of these responsibilities.

I held this position in addition to my role as senior software engineer.

Support engineer

2019 - 2022

As a support engineer I helped customers when they had technical problems with our software or had problems with their migration projects. I also participated in the telephone on-call rotation.

Software Developer

2005 - 2018

As a software engineer I worked on various functionalities in all Luciad products.

Among others:

  • Editing recorded radar data in a Java Swing-based desktop application
  • Introducing “Clustering” to make visual analysis of nearby points on the map clear
  • Extending an HTML5 based browser product with OGC WMS GetFeatureInfo support, an important open standard
  • Extending the LuciadMobile Android library with support for a specific format for satellite images
  • Bugfixes and improvements requested by customers

Project Leader

2015 - 2018

For 4 releases of our products, I managed 4 different teams to implement various features:

  • Clustering (see above)
  • Adding macOS support for OpenGL based applications
  • Improvements to the speed and smoothness of visualizing satellite data
  • Providing server-side solutions for managing large point cloud data sets.

Release Engineer

2008 - 2015

As release engineer I was responsible for

  • all build processes of all Luciad products
  • maintaining all infrastructure for the build processes and automatic tests, in consultation with our system administrators.
  • building and distributing patch releases on time

Some important things I achieved as a release engineer:

  • modern source control: conversion from CVS to Mercurial, with full preservation of history.
  • introduction of continuous integration: installation of Jenkins as CI server, and all processes to immediately start all compilation jobs and automatic tests with every change in source control.

Quality Controller

2008 - 2018

As a quality controller I was responsible for the coordination in the development of new versions of our products

  • coordinating all intermediate ‘milestones’, so that the different teams were ready at each milestone. Starting in 2008, I coordinated 2 releases per year, on time and with high quality.
  • planning manual tests at each of these ‘milestones’.
  • Setting up and adjusting ISO 9001:2015 processes in a Quality Management System.

Technical Customer Support Engineer

2007 - 2018

As a support engineer I helped customers when they encountered technical problems with our software.

Education

Master in Industrial Engineering

2001 - 2005
GroepT Leuven

Specialisation ICT. Graduated magna cum laude

Languages

LanguageComprehensionWritingSpeaking
DutchNative tongueNative tongueNative tongue
EnglishExcellentExcellentExcellent
FrenchGoodModerateModerate

Skills

Programming languages

Desktop Java

Server-side Java

Javascript

Android development

Typescript

Rust

XSLT

Technologies

OpenGL

TeamCity Continuous Integration Server

Maven

Gradle

Jenkins Continuous Integration Server

cmake

Source control

Git

Mercurial

Subversion

Domains

NAS systems

Geodesy and projections

Collaboration tools

JIRA

Confluence

Office365

Management techniques

Scrum