Skip to content
View Thiebauts's full-sized avatar

Block or report Thiebauts

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Thiebauts/README.md

Hi, I'm Thiebaut 👋

I'm a data scientist based in Gothenburg, Sweden, transitioning from over eight years in academic astrophysics research. I decided to leave academia both because I wanted to settle permanently in Gothenburg, and because I felt the need to tackle new challenges where I can more directly help people in their daily lives. Among the topics I care most about: medicine, environment, and sport.


Background

I hold a Licence and Master's degree in Physics from the Ecole Normale Superieure Paris-Saclay, a Master's degree in Astrophysics from the Observatory of Paris, a PhD in Astrophysics from Universite Paris-Saclay, and completed a postdoc in Astrophysics at Chalmers University of Technology in Gothenburg.

Over more than eight years of research, I developed solid expertise in Python programming and large-scale data analysis. I led data-driven projects applying a range of methods -- from statistical signal processing techniques (wavelet analysis, Monte Carlo methods) to machine learning -- that resulted in scientific publications and international presentations. This taught me to communicate with varied audiences, including non-specialists. Working in national and international teams reinforced for me the value of collaboration and the importance of confronting your ideas with others in order to improve.

Being an AI enthusiast, I am starting to see all the amazing things it can bring, but I also notice in my own work the risk of relying too heavily on it and losing deep understanding. In a future where many data scientists will have training focused primarily on machine learning, I believe my background in physics and astrophysics gives me a different and complementary profile. Most of my recent personal projects are developed with the help of LLMs, which I see as a powerful tool when used with critical thinking.


What I work with

Languages and tools: Python (NumPy, SciPy, Pandas, Matplotlib, Dash/Plotly, Scikit-learn, TensorFlow, Optuna, MLflow), SQL, Fortran, LaTeX, GitHub, Railway

Currently learning: Azure Data Scientist certification (DP-100), React Native, Next.js

Strengths: team collaboration, student supervision, conference organisation, creative problem-solving, curiosity-driven, helpful mentorship


Featured Projects

A Python framework developed during my postdoc at the Department of Space, Earth and Environment at Chalmers, for modelling the dust emission around evolved stars known as water fountains — old stars with bipolar jets traced by water maser emission. The code wraps two astrophysics tools: RADMC-3D for Monte Carlo radiative transfer, and Optool for computing dust opacities from laboratory measurements of silicates by Demyk et al. (2022). The key challenge is that dust opacity depends on temperature, but temperature itself depends on opacity. The wrapper solves this by iterating: it classifies grid cells into temperature zones, assigns the corresponding opacity to each zone, reruns the simulation, and repeats until both the temperature field and the zone assignments converge. It also includes a parameter grid explorer for systematic exploration of the physical parameter space.

Python · NumPy · Matplotlib · RADMC-3D · Optool


Built for someone who needed to read handwritten blood pressure logs several times a day, compute daily averages, and track trends over time. The app lets you photograph a handwritten log, sends the image to a vision LLM via OpenRouter, and returns structured readings that can be reviewed, edited, and exported as a PDF report.

To choose the right model, I built a separate benchmarking tool — BP OCR Bench. With a friend, I created a dataset of handwritten notes at varying difficulty levels, then evaluated 18 vision models (from Google, OpenAI, Anthropic, Mistral, and others) on extraction accuracy, cost per request, and response time. The result: Gemini Flash 3.0 and Gemini 3.1 Flash Lite sit on the Pareto frontier, achieving 95–98% accuracy at ~$0.001/request — two orders of magnitude cheaper than frontier models for comparable precision.

TypeScript · Next.js · React · OpenRouter API · Vite · IndexedDB


I'm a member of Triathlon Väst in Gothenburg, a club that organises competitions in running, swimming, cycling, triathlon, duathlon, and swimrun throughout the year. That generates a lot of results data, so I built a dashboard where members can browse competition results, view athlete profiles, track accumulated points, and explore club rankings across seasons (2021–2025). The data comes from CSV exports of the competition management system, parsed and bundled at build time. The app is bilingual (Swedish/English) and open to contributions — members can request features or submit pull requests directly.

TypeScript · Next.js · React · Recharts · Tailwind CSS · Vercel


Let's talk

🌐 thiebautschirmer.com  |  💼 linkedin.com/in/thiebaut-schirmer  |  📍 Gothenburg, Sweden

Pinned Loading

  1. radmc3d-iterative-wrapper radmc3d-iterative-wrapper Public

    RADMC-3D wrapper for temperature-dependent dust opacity calculations in water fountains

    Python

  2. bp-ocr-bench bp-ocr-bench Public

    Local web app for extracting blood pressure readings from handwritten log images using vision LLMs via OpenRouter

    TypeScript

  3. MeanBloodPressure MeanBloodPressure Public

    AI-powered blood pressure log: scan photos, track readings, compare LLMs, export PDF

    TypeScript

  4. triathlon-vast-dashboard triathlon-vast-dashboard Public

    Triathlon Väst results dashboard — rankings, athlete profiles, and participation stats

    TypeScript