Experience

From real-time graphics to autonomous vehicles, servo drives and learning robots. For most of my career I have worked as an independent roboticist: from 2006 to 2019, and again since 2023.

Independent Roboticist Since 2023

I work as an independent roboticist, in whatever form a project needs: from software architecture and development to leading a team or giving advice. Since autumn 2025, I have been working closely with b»robotized, a Karlsruhe-based engineering group specialised in ROS 2 and ros2_control.

ros2_control for Synapticon drives 2026

The drives of a humanoid robot laid out flat on a test bench. The humanoid itself cannot be shown here.

A b»robotized client project

I developed and maintain the software that connects Synapticon motor drives to ROS 2, which is now used in two humanoids. This is where every joint of the robot meets the control software, so reliability and precise timing matter as much as features.

My work covers how the joints are controlled, including making them yield softly on contact, how the mechanics between motor and joint are modelled, and live monitoring of the drives. To keep a fast-moving code base reliable, I built test benches that automatically run the software against real drives.

AI for Industry Challenge 2026

Training: I take over with the SpaceMouse when the robot is about to fail
The learned policy inserting an SFP module into a network card

With the b»robotized team

The challenge: insert cables into a randomised task board with a UR5e arm, such as SFP modules into network cards. We used classic robotics for the large motions and learned only the contact-rich last inch, where scripted motion fails. For that, I adapted HIL-SERL, a human-in-the-loop reinforcement learning method from UC Berkeley, to ROS 2 and a robot-agnostic interface: whenever the robot is about to fail, a human takes over with a SpaceMouse, and those corrections flow straight into training. The HIL-SERL adaptations we made are open source in the b»robotized fork. Our team placed 10th in the qualification round of a challenge involving 160 teams.

Sunrise Robotics 2024-2025

The Sunrise robotic cell with two robot arms behind a curved glass enclosure, front view
The Sunrise robotic cell, front view (image: Sunrise Robotics)
Fast-tracked automation: Sunrise Robotics scales with GoFa (video by ABB Robotics) Playing loads the video from YouTube (Google). See the privacy policy.

I joined Sunrise Robotics, a start-up building simulation-trained robotic cells, at a very early stage and helped establish its robotics software architecture.

I designed and built core parts of the robotics software, covering motion planning and execution, perception, and how the robot keeps track of its surroundings. I focused on reusable components that make it easier to integrate new AI models and combine existing robot skills into applications. The architecture supports different workflows, from reinforcement learning to deployment on real robots. Parts of my work were contributed to the open source behavior tree library py_trees: ports for typed data exchange between behaviors, and an XML parser for loading behavior trees.

A guiding principle was that most of the stack should not care whether it runs in simulation or on the real robot. That kept the sim-to-real gap small and made development and testing much faster.

Multi-robot system for pallet handling Since 2023

For a start-up

For a start-up, I led the software development of a system for forklift-style robots to pick up and place pallet-like objects with high accuracy. Further details of the application cannot be shared.

I designed the software architecture and implemented most of the robotics software, spanning perception, localization, navigation, precise positioning, and robot control, with simulation tools for development and testing. I also coordinated other freelance developers, defining tasks, reviewing their contributions, and integrating their work. I remain involved in supporting the project.

TomTom 2019-2023

Trillian driving through a simulated town: Gazebo on the right, its sensors in RViz on the left
Trillian: TomTom’s Self Driving Test Vehicle (video by TomTom) Playing loads the video from YouTube (Google). See the privacy policy.
TomTom's autonomous test vehicle Trillian
Trillian, TomTom’s autonomous vehicle
The Trillian team posing with the vehicle
The Trillian team at TomTom
Trillian simulated in a town environment, shown in Gazebo and RViz
Trillian in Gazebo and RViz

Senior Robotics Engineer (Full Stack)

At TomTom, I helped bring the autonomous vehicle “Trillian” onto the road. My work spanned simulation, test environments and scenarios, hazard and risk analysis, and aspects of motion planning and localization, including contributions to experimental localization methods.

I also contributed to lane-level navigation within TomTom’s navigation software stack. Alongside development, I led technical discussions and sprint planning for our team of 11 and coordinated projects across teams and units. My later work in robotics and AI focused on generating accurate vehicle traces from sensor-derived observations.

Independent Roboticist and Researcher 2006-2019

As an independent contractor, I worked with research institutes and robotics companies in Germany, Australia and the USA, and completed my PhD at UNSW Sydney along the way.

Roboception 2016-2019

Robot picking items from a shelf at the Hannover Messe demo
Hannover Messe demo: robot shelf picking with the world model application
Roboception bin picking application using the world model (screencast overlay bottom left) Playing loads the video from YouTube (Google). See the privacy policy.

Robotics Engineering Contractor

Roboception GmbH develops perception and manipulation systems that meet the real-time requirements of industrial robotic systems.

I developed a world model that captures the environment sensed by the robot and handles object management and collision detection. It uses multiple input sources, including RGB-D images, point clouds and various forms of object detection. The world model was part of a pick-and-place application demonstrated with a KUKA robot at Hannover Messe 2018. I coordinated the team working on the components around the world model, such as object detection, robot motion, object database and customer interface.

In another project, I developed leaf detection and localization for robotic plant cutting, taking responsibility for system design, team coordination, and customer communication.

Open Robotics 2016-2017

Kinova Jaco arm grasping a cube in Gazebo
Kinova Jaco grasping a cube in Gazebo
Collision of triangle meshes computed in two physics engines side by side
Collision of triangle meshes in two physics engines at once
The same world loaded in multiple physics engines in Gazebo
One world in multiple physics engines, loaded simultaneously in Gazebo

Robotics Engineering Contractor

Open Robotics leads and supports the development of open source robotics software, including ROS and the Gazebo robot simulator, together with a worldwide community.

I developed a collision test framework for Gazebo to help debug its physics engines. The framework runs multiple physics engines in parallel to compare their results and behavior. Within this project I also contributed various improvements to Gazebo. In another project, I developed several modules to improve planning and execution of grasp actions in ROS and Gazebo. The source code is available on my GitHub.

Intersect, Sydney 2013-2015

Screenshot of the NeCTAR cloud computing course
NeCTAR cloud computing course

Computer Scientist Contractor

I developed national training materials for the Australian research community as part of the National eResearch Collaboration Tools and Resources project (NeCTAR). The course teaches the use of cloud computing for research and includes reading materials and video tutorials.

Before that, I worked as a tutor for Intersect (2013-2014), teaching introductory Unix courses, Excel, and workshops on data management and visualization.

University of New South Wales 2011-2015

Segway-based robot with a Kinova Jaco arm
My PhD robot: a Segway with a Kinova Jaco arm
Accuracy measurement setup for the Kinova Jaco arm
Kinova Jaco accuracy measurements
The PhD robot grasping a cube
Grasping a cube
The PhD robot picking up a cube
Picking up a cube
The PhD robot grasping a cube, second view
Grasping a cube, second view
The PhD robot transporting a cube in the Gazebo simulator
Transporting a cube in Gazebo

PhD thesis: Capabilities in Heterogeneous Multi-Robot Systems

My PhD explored how robots with different capabilities can describe what they can do and combine those capabilities to accomplish a task. A capability can be a simple physical action like pushing, pulling or grasping, or a computational concept like localization. Parameterized capabilities (for example, how far to push) can be combined to describe much more complex tasks.

I developed a temporal planner which, given a goal (for example, a cube at a target location), finds an executable plan for the robot to achieve it. I worked on a custom-built robot, which demonstrated a transportation task using my software framework.

My PhD thesis can be downloaded from UNSW, and my other papers are listed on the publications page.

German Aerospace Center (DLR) 2006-2011

3D rendering of the Berchtesgaden terrain
Real-time 3D terrain rendering

Robotics Engineering Contractor

I designed and implemented software for real-time visualization of terrain and other large 2.5D and 3D datasets. The work covered preprocessing datasets too large to fit in memory and rendering them with smooth transitions between levels of detail. I owned the project from research and planning through implementation in C++ and OpenGL. That included out-of-core mesh preprocessing, real-time visualization, remote control of the visualization application, and other tools.

Airbus, Hamburg 2004-2005

Animated characters demonstrating motion mixing
Motion mixing for crowd animation at Airbus

Diploma thesis

I completed my diploma thesis in the R&D department, following an internship in the same department. The topic was “Realistic animation of characters in a crowd simulation”, which included developing a C++ library for animation mixing of the character movements. The thesis was awarded best diploma thesis of the year.