Fabien Rohrer — Software Engineer EPFL - Freelance – Bassecourt, Jura
Reliable technical solutions designed to last.
Reliable technical solutions designed to last.
EPFL engineer with many years of experience, now helping diverse projects with a clear, rigorous and practical approach.
Bachelor and Master in Computer Science at EPFL, with a specialization in computer graphics.
12 years at Cyberbotics, an EPFL-linked startup and creator of the Webots robotics simulator, working across simulation, 3D and software engineering.
Today I work as a freelance software engineer based in Bassecourt, Jura, Switzerland, from technical framing to implementation, applying scientific methodology and the same level of quality in strategy and execution.
A versatile offer focused on concrete business outcomes.
Cross-domain expertise from product strategy to implementation detail.
A selection of projects I led or significantly contributed to.
May 2008 – Feb 2020
Lead contributor on Webots from 2013 to 2019.
Webots is a cross-platform, open-source (since 2019) desktop application for robot simulation. It offers a complete development environment for modeling, programming, and simulating robots, and is widely used across industry, academia, and research. I was the lead contributor on this project for several years (roughly 2013 to 2019), actively driving its evolution. My contributions included migrating it to an open-source model, building its automated test suite, overseeing the development of a custom rendering engine, integrating the physics engine and Qt-based GUI, extending its API (Python, C++, Java, ROS, MATLAB), building a web streaming feature, and establishing its documentation system.
May 2019 – Jul 2019
DJI Mavic 2 PRO drone simulation in Webots, from modeling to flight control.
To showcase Webots' capabilities for simulating autonomous aerial vehicles, I built a DJI Mavic 2 PRO model, tuned its physics parameters (propellers, fluid dynamics), and wrote a low-level controller to stabilize the drone in flight. I then promoted the work through a YouTube demo video.
Jan 2016 – Jun 2019
Built an automated QA and CI/CD pipeline for the Webots simulator.
To strengthen the robustness and quality of the Webots open-source simulator, I built a comprehensive test suite covering regression tests, API functions, physics, and source code quality (style, common issues, etc.). The suite runs automatically on every GitHub event, ensuring consistently high code quality. I also contributed to setting up a build farm enabling continuous development, with nightly builds across Linux, macOS, and Windows.
Dec 2018 – Jan 2019
Led the migration of Webots to Apache 2.0 open source.
I played an active role in migrating Webots from a proprietary, license-based application to an Apache 2.0 open-source project. My involvement spanned both the marketing side — including producing a promotional video — and the technical side, building specialized tools for the new open-source community.
Jan 2017 – Dec 2018
R&D consulting for autonomous vehicle simulation at Perrone Robotics.
I collaborated on several R&D projects with Perrone Robotics, serving as their main point of contact. The work involved simulating autonomous vehicles and mining trucks, as well as generating realistic terrain maps using OpenStreetMap and the Google Elevation API.
Oct 2018 – Dec 2018
Drag-and-drop web robot designer for the HBP Neurorobotics Platform and Webots.
For the Human Brain Project (HBP), I developed a web application allowing users to assemble robot models from modular parts, fully compatible with Webots and the HBP Neurorobotics Platform (NRP). Built with JavaScript ES6, the tool lets users drag and drop components onto predefined slots in a 3D scene. Robot configurations are saved as JSON and can be loaded directly into Webots for simulation.
Feb 2018 – Jul 2018
Led the development of WREN, Webots' custom real-time rendering engine.
I led the development of a custom real-time rendering engine for Webots, named WREN (Webots Rendering ENgine). Written in C++ with OpenGL 3.3 and GLSL, WREN supports advanced graphics features including Physically Based Rendering (PBR), ground-truth ambient occlusion (GTAO), and Bloom post-processing. I also contributed to building an equivalent web-based rendering component using Three.js.
May 2017 – Jul 2017
Designed and built a collaborative, version-tracked documentation system for Webots.
I designed and built a custom documentation system for Webots using Markdown, JavaScript, and a CDN. The system supports collaborative editing and version tracking. It is publicly hosted on GitHub and surfaced both on the official Cyberbotics website and embedded within the Webots application itself. It also features interactive 3D web components for visualizing robot models.
Jul 2013 – Mar 2014
Built the PR2 robot's virtual model in Webots, covering ROS, physics, and 3D rendering.
This project gave me deep insight into realistic simulation and professional software development. It spanned a broad range of disciplines: ROS integration, mechanical modeling, visual rendering, and C++/Python programming. Building the virtual PR2 robot model was a significant technical challenge, and the quality of the final demo made it a very rewarding experience.
More projects are available on my LinkedIn profile .
A few endorsements from colleagues and partners I enjoyed working with.
"Always impressed by his excellent technical skills and ability to adapt to the newest technologies."
I have been working with Fabien for many years at Cyberbotics and I was always impressed by his excellent technical skills and ability to adapt very quickly to the newest technologies and tools. Fabien also has wonderful qualities when it comes to graphical design and user interfaces. That makes him a very good software developer. In addition to this, he is also very professional and a very much appreciated team worker, being able to work remotely very efficiently.
"He played a key role in the development and adoption of Webots among the community."
It has been a real pleasure to work with Fabien all these years. Thanks to its rigorous workflow and innovative solutions, he played a key role in the development and adoption of Webots among the community. He has always been friendly and helpful, first as my mentor and then as a colleague on whom I have always been able to rely on.
"His influence was instrumental not only to the way I approach code, but also to how I communicate with my team."
Having had the privilege to work with Fabien when entering the professional world, I am confident in saying that his influence was instrumental not only to the way I approach code, but also to the way I communicate with my team. Being a great developer, Fabien strives in finding the finest compromises while ensuring the best quality of code both for his own features as well as those he finds himself reviewing. However difficult and varied the tasks he was assigned were, Fabien was successful in breaking it down and finding solutions. Whenever I needed his advice, he has always provided extremely constructive input, and has at all times remained a friendly and reliable figure.
"His deep knowledge and eagerness to learn make him a great asset for any development team."
I had the pleasure of working with Fabien in a tight-knit group of software engineers. His experience allows him to come up with sound solutions that demonstrate an understanding of both low and high levels of the software architecture. That coupled with his deep knowledge of programming languages and development methodologies, his eagerness to learn and his friendly personality make him a great asset for any development team.
"Gifted & knowledgable across a wide range of areas, from Web Design to 3D graphics & beyond."
I worked with Fabien for 2 years at Cyberbotics. Fabien's commitment to robust, high quality application development and attention to detail made it a pleasure to work together with him on numerous projects during my time there. Fabien is gifted & knowledgable across a wide range of areas, from Web Design to 3D graphics & beyond. I learnt much about what skills & attitude are needed to be a good engineer from him & his work.
"A very energetic and ative individual."
A very energetic and ative individual. Extremely helpful and friendly when asked for help and advice.
Full testimonials are available on LinkedIn > Recommendations .
Share your context, goals and constraints briefly, and I will get back to you with a clear and pragmatic next step.