Benjamin Gallois

Hi, I'm Benjamin Gallois, a PhD in Physics and currently a developer. This page is a detailed presentation of my career path, showcasing my diverse education and work experience across various fields, including fundamental physics, evolutionary development, computer vision, neuroscience, and blockchain technology. For my professional portfolio and freelance development work, please visit freelance.gallois.cc and for my short CV click here.

The following sections explain each step of my journey, emphasizing what I learned and how these experiences have shaped the future direction of my career. It also gathers all the documents and presentations I have written and delivered over the years, as well as all the scientific papers I contributed to.

BSc: Fundamental Physics

Completed: 2012-2015

During my BSc in Fundamental Physics at the University of Paris 7 Diderot, I studied general physics for three years, specializing in hydrodynamics. I focused on theory as well as experimentation, which gave me a solid foundation in scientific methodology, data analysis, and mathematics.

At the end of this program, I contributed to a scientific project at the MSC Laboratory in Paris 7 Diderot with Vincent Fleury, conducting research related to the viscoelasticity of chick embryos. I was responsible for performing the experiments and developing novel approaches to the experimental setup. The work involved preparing chick embryos at the blastula stage, applying constant elongation to the embryos, and measuring their relaxation using video tracking. The abstract of this work can be found in l3.pdf (in French).

This foundational work was later incorporated into a scientific publication: Vincent Fleury, Ameya Vaishnavi Murukutla, Nicolas R. Chevalier, Benjamin Gallois, Marina Capellazzi-Resta, Pierre Picquet, and Alexis Peaucelle. "Physics of Amniote Formation." Phys. Rev. E, 94:022426, Aug 2016.

This project marked my first steps with computer vision and image analysis, as well as the application of rigorous methodologies in a research lab. It was also my first experience manipulating living samples and working with embryos and animals.

MSc 1: Fundamental Physics

Completed: 2015-2016

During the first year of my MSc, I continued my study of fundamental physics, building upon the previous three years and focusing on fields related to hydrodynamics. This year, I deepened my knowledge of theoretical concepts and experimental design, further enhancing my understanding of the scientific method. The year concluded with a three-month project at the MSC Laboratory with Vincent Fleury, where I studied the vascular properties of chick embryos and tested a potential cancer treatment.

This project had two main components: preparing chick embryos to observe the vascular system of the chorioallantoic membrane and developing experimental setups and image analysis tools to quantify its hemodynamics. The detailed work can be found in m1.pdf (in French).

The second part of the project involved testing a novel cancer treatment drug in collaboration with Antonio Claudio Tedesco from the University of São Paulo, who was visiting the lab at the time. I was responsible for inducing tumor growth on the chorioallantoic membrane of chick embryos and applying the treatment to study its influence on hemodynamics and quantify its impact. This work was later published as Sophie Richard, Amanda Brun, Antonio Tedesco, Benjamin Gallois, Naoual Taghi, Philippe Dantan, Johanne Seguin, and Vincent Fleury. "Direct Imaging of Capillaries Reveals the Mechanism of Arteriovenous Interlacing in the Chick Chorioallantoic Membrane." Communications Biology, 1(1):235, 2018.

This project significantly enhanced my techniques in animal manipulation for experimental purposes, as well as my overall experimental skills, particularly in designing and constructing experimental setups and creating image analysis pipelines to quantify experimental results. My programming and computer vision skills were still relatively primary at this stage. I primarily relied on ImageJ and simple Java programming to implement tools used in the lab, which were not user-friendly.

MSc 2: Biophysics

Completed: 2016-2017

In the second year of my MSc, I specialized in biophysics through a program at the interface of biology and physics. I continued to study biology-related physics while also taking pure biology courses. This year was fundamental in developing my ability to collaborate and work in a multidisciplinary environment where team members often have different backgrounds and technical languages.

Six months of this year were dedicated to a research project I conducted at the Curie Institute in the lab of Emmanuel Farge, under the supervision of Tatiana Merle, a PhD student at the time. The project focused on the mechanical induction of the β-catenin pathway in Nematostella vectensis embryos. We prepared and observed Nematostella vectensis embryos at the gastrula stage under different mechanical constraints, using confocal microscopy to investigate the mechano-induction of mesoderm differentiation.

My primary contribution involved developing an image analysis pipeline to process 3D images of the embryos and quantify β-catenin expression. The details of this work are in m2.pdf (English). This research laid the groundwork for a more detailed analysis, which was further developed after I departed from the lab. Tatiana Merle’s PhD thesis describes the continuation of this work, which culminated in its application in a study published in Frontiers in Cell and Developmental Biology.

This project marked the first time I developed an analysis tool that would be used by several researchers who were not trained in programming, following standard programming best practices, such as version control and release management. At this stage, my programming skills drastically increased as I mastered Git and became proficient in Python and C++. It also taught me a great deal about statistics and data analysis in a field where effects and sample sizes are relatively small, and where it is costly and time-consuming to increase them.

During this project, I enjoyed developing technical solutions and techniques for researchers more than performing the research myself. This realization influenced the course of my academic path, prompting me to seek a thesis where I could spend half of my time developing tools.

PhD

Completed: 2017-2021

My PhD research was a unique blend of neuroscience and physics, focusing on the chemical perception of young zebrafish. This interdisciplinary project, conducted in a physics laboratory, the laboratoire Jean Perrin, with Raphaël Candelier, is detailed in my thesis (English).

Over these four years, I taught myself numerous skills, ranging from workshop tools (mechanical, electronic, CAD, and 3D printing) to designing and building complete experimental setups, as well as the latest computer vision algorithms and statistical analysis methods. I also developed GUI programs to interact with these experimental setups, integrating multiple sensor inputs and control modules. This part of my PhD taught me much about low-level programming, deploying software for non-technical users, and, more importantly, how to teach myself new skills.

During this time, I also enjoyed popularizing our lab work by participating in the national "Fête de la Science" initiative. We designed small-scale experiments for this event using open hardware and open-source software. Over a weekend, students aged 4 to 18 and families engaged in these experiments under our supervision, applying the scientific method to formulate and test hypotheses. A small website created for this occasion can be accessed here.

Another significant aspect of this project was realizing that many researchers in this field lacked computer skills and struggled to analyze their experiments. They often relied on small, "time-tested" opaque pieces code. To address this issue, I started FastTrack, a complete GUI tracking software that is performant, versatile, and easy to install.

At that time, deep learning detection was emerging, but it was not easily accessible for non-technical users, and the tracking part was mainly specific to the tracked objects. Throughout my PhD, I developed complete tracking software that can be used on any computer to track any type of object, as well as several libraries and tools for data analysis.

This part of the project significantly enhanced my computing skills and exposed me to industry standards in computer programming. FastTrack, the software I initiated, is still actively maintained and has garnered close to 100 stars on GitHub. It has also been widely used and cited in numerous research papers.

Freelancing Part 0

Completed: 2021-2023

After obtaining my PhD in 2021, I started freelancing in computer vision. This decision stemmed from three motivations:

  • The ability to schedule my work as desired.
  • Gaining experience in the administrative aspects of self-employment (invoicing, taxes, accounting, etc.).
  • A desire to contribute to various projects to enhance my skills.

I initially took on small projects run by individuals, mostly involving classical computer vision techniques and small deep learning models to enhance photography or scanned images (such as denoising, rescaling, warping, etc.).

Subsequently, I landed a larger project from the You&Eye art gallery that involved designing and implementing a complete cross-platform GUI image tool. This tool would manage the analysis pipeline, from photographing an individual iris to producing an art poster. The image analysis component of this project involved working with 16-bit high-resolution images, implementing fast, robust deep-learning segmentation models for the iris and pupil, and warping these images to produce standardized and aesthetic irises. The second part of the project was to create a responsive and comprehensive UI for the artist to correct minor defects in the images and apply the analysis pipeline. This project has been deployed in nearly ten art galleries across Europe.

In parallel, I worked as a consultant on sports data analysis projects, focusing mainly on extracting cardiac parameters from photoplethysmography (PPG) signals and video-acquired PPG signals to accurately determine RR intervals (the time between successive heartbeats) and compute heart rate variability (HRV) metrics. These small projects involved classical signal processing and deep learning using convolutional neural networks (CNNs).

This first part of my freelancing career taught me a great deal about working with clients, communicating with them to uncover their expectations for the software, selecting pricing, choosing the right tools, and integrating smoothly with existing internal teams. I gained experience in aligning with team workflows and maintaining clear communication to ensure project success.

Much of this work is not open-source or publicly available, but some insights can be found in my portfolio for selected projects. To the greatest extent possible, I aimed to implement a basic open-source library with the general technology used for each project, which I then adapted for the proprietary software required by the client.

Freelancing Part 1

Completed: 2022-now

2022 was a crucial year in my professional development. Until then, I had focused on scientific fields like computer vision and data analysis. In 2022, a friend (the same one who connected me with my thesis advisor) encouraged me to work on the Duniter blockchain to learn Rust.

The Duniter project is an open-source initiative that implements the "monnaie libre" theory using blockchain technology and the Substrate framework. At the time, the project had secured funding to continue developing, and a Rust developer was needed.

My first task was to implement the Substrate benchmark for all the custom pallets of the Duniter project. To complete this task, I first had to understand the logic of the Substrate framework to comprehend what constituted the weight and why the pallet needed benchmarking. I also needed to grasp the basics of the Substrate node and the detailed logic of each custom pallet. Simultaneously, I learned Rust and gained a deeper understanding of the project and the Rust ecosystem.

As my skills progressed, I was tasked with upgrading the project to the latest Substrate version, fixing bugs, implementing features, and performing refactoring. With the opportunity to work full-time on a Substrate node for several months, I quickly began to gain expertise in substrate-based blockchain development.

In parallel, I educated myself about blockchain technology as a whole, exploring the technical aspects and its philosophical and societal implications. I gradually became convinced of the importance of decentralized technology and the various applications where blockchain can replace third-party intermediaries.

These months marked a shift in my career perspective as I began transitioning from science-related topics to Web3 and decentralized technologies.

And Now

Now

I am actively seeking a position within the Web3 ecosystem, where I can continue working on blockchain technology, particularly within the Polkadot ecosystem (Polkadot-SDK, Ink!).

Throughout my journey, I have developed strong technical skills in collaborative development tools like Git, GitHub, and GitLab. I also possess direct programming expertise in C++, Python, and Rust, which can be verified through my diverse projects and contributions available on GitHub. Additionally, I have expertise in computer vision, artificial intelligence, signal processing, data analysis, and written and verbal communication of technical concepts honed through my background in academia.

As a maintainer of FastTrack, I have honed my skills in documentation writing, CI/CD practices, deploying cross-platform applications, and maintaining a project critical to several research labs.

My freelance journey has equipped me with valuable skills in communicating effectively with clients and non-technical individuals and collaborating with knowledgeable communities.

In addition to my professional experiences, I have been actively engaged in personal projects related to sports data analysis and, more recently, smart contracts. These projects have enhanced my skills in web application development (TypeScript, Python) and managing web servers and websites, which can also be found on my GitHub profile.