Skip to content
Back to experience

Role

Data Analyst · Supply Chain

Saint-Gobain Glass France · Paris, Île-de-France

Central planning and logistics support team at Saint-Gobain Glass France. The work involves balancing industrial demand with available production capacity and optimising transport and storage flows across more than fifteen European plants.

I build in-house tools in Python and SQL, maintain the Board capsules the factories use for planning, build the supply chain dashboards and work on data governance. All of this while the group migrates from Europe 2000 to Oxygen and business intelligence services still have to produce correct figures.

Workstation
Saint-Gobain Glass France

Sep 2025 — Present

PythonSQLBoard EPMDatabricks

  • Data and analytics
  • Supply chain
  • Digitalisation
15+European plantsScope of the central planning team
~120,000Item referencesVolume of the matching between the two ERPs
14Connected sitesScope of the returnable racks rules engine
4In-house toolsIn monthly use, not prototypes

My responsibility

Development of in-house tools in Python and SQL, entity resolution, deterministic decision engines and validation pipelines, Board capsules for the plants, supply chain dashboards and data governance.

Result

Four tools in production across the European perimeter, up to ~120,000 item references and 14 sites, with BI continuity during the migration from Europe 2000 to Oxygen.

The challenge

  • More than fifteen European plants: the operation was only observable through the data
  • Two ERP systems coexisting, Europe 2000 and Oxygen, with the same item under different codes and attributes
  • Returnable racks circulated between fourteen sites without knowing how many there were, where, and how many were missing
  • The commercial reconciliation and the import report were assembled by hand, several working days a month

How I approached it

  1. Deterministic, readable rulesI wrote the tools in Python and SQL with rules a manager can read and discuss, because nobody signs off on a decision they cannot defend.
  2. Matching across the two ERP systemsI built in PySide6 an algorithm that proposes a candidate with its match score; validation stays with whoever knows the product range.
  3. Rack rules engineI applied written rules to the movements recorded across fourteen sites to return the situation per site and the rebalancing needs.
  4. Monthly automationI automated the commercial reconciliation in Streamlit and the import report from Eurostat Comext.
  5. Board and data governanceI got certified at Board Academy to modify the capsules without an external vendor, and documented in Collibra the origin and owner of each data item.

System view

Board Academy level 100 certificate
Board Academy certification, level 100, March 2026. Training on the tool I maintain was the condition for modifying planning capsules without depending on an external vendor.

Work blocks

Item matching between ERP systems

Desktop application in PySide6 that matches the glass items of Europe 2000 with those of Oxygen: the machine narrows the search space, the person takes the decision.

Returnable rack rules engine

Python application that applies auditable rules to the movements between fourteen sites and returns the situation per site and the rebalancing needs.

Monthly commercial reconciliation

I automated the comparison between SAP customers and those of the commercial application, with address geocoding and output in the format the recipient expects.

European imports report

I automated the Eurostat Comext download, the filtering by product codes and the assembly of the monthly report, a task of several working days a month.

Board planning capsules

I maintained and extended the capsules where the plants enter their assumptions; every change is tested against known cases because an error propagates into a production decision.

Data governance in Collibra

I documented where each data item comes from, what it means and who is accountable for it, with two ERP systems coexisting during the migration from Europe 2000 to Oxygen.

01

The role

I have worked since September 2025 in the central planning and logistics support team at Saint-Gobain Glass France. The scope is not a single factory but more than fifteen European plants, and the decision made at that level is not what a line does tonight but which site makes which reference, how it moves between countries and how far in advance.

That scale shapes the nature of the work. A float glass furnace runs continuously for years and its capacity is committed by the mere fact of existing, so planning is decided in the allocation between sites, not in starting up a machine. No one can visit fifteen plants every week to see which one is running short: the operation is only observable through data, and making that data comparable across systems is most of my work.

02

The tools I built

I build in-house tools in Python and SQL of three kinds: entity resolution, deterministic decision engines and validation pipelines. Deterministic is the word that matters. A tool that proposes an industrial decision has to explain why it proposes it, with a rule a manager can read and discuss, because no one signs off on a decision they cannot defend to their management.

There are four of them, all in monthly use, and none is a prototype.

Matching items between the two ERPs

A PySide6 desktop application that matches glass items from Europe 2000 with those in Oxygen. The volume is on the order of a hundred and twenty thousand references, so manual matching was out of the question: the algorithm proposes a candidate with its match score across the attributes that define the product, and validation stays with whoever knows the range. The machine narrows the search space, the person makes the decision.

Rules engine for returnable racks

Glass travels on returnable racks that circulate between fourteen sites. The asset only moves in response to product flows and no one requests it explicitly, so knowing how many there are, where they are and how many are missing at each site was not solved end to end. I built a Python application that applies a rules engine to the recorded movements and returns the situation per site and the rebalancing needs. The rules are written down and auditable, which is what lets a manager accept a figure they did not calculate themselves.

Monthly commercial reconciliation

Reconciling customers registered in SAP against those in the commercial application used to mean comparing two extracts by hand. I automated it, adding address geocoding and generating the file in the format the recipient expects. I built it in Streamlit because the user is not a technical profile: they upload two files, see the difference and download the result without installing anything. The technology is not dictated by code elegance but by who opens the tool on the first Monday of each month.

European imports report

The monthly tracking of European glass imports was built by hand from Eurostat Comext, the European Union's external trade database. I automated the download, the filtering by product code and the assembly of the report. It was a task that took several days a month and added no judgement, because the judgement lies in reading the result, not in producing it.

03

Board and the dashboards

Board Academy level 100 certificate
Board Academy certification, level 100, March 2026. Training on the tool I maintain was the condition for modifying planning capsules without depending on an external vendor.

I maintain and extend Board capsules, the EPM platform where factories enter their planning assumptions and see the effect on the plan. It is not a reporting tool: an error on a screen propagates directly into a production decision, so every change is tested against known cases before it is published.

In parallel I worked on the functional validation of the sales order cubes, checking what the cube returns against the source system. It is unglamorous, necessary work, because an incorrect figure that no one checks ends up as the official figure.

04

Data governance during the migration

Saint-Gobain Glass France is migrating from Europe 2000 to Oxygen. During the migration the two systems coexist, and the same physical item can exist in both with different codes, nomenclatures and attributes, so any consolidation across sites is approximate until that mapping is resolved. Keeping business intelligence services running in that context was a condition of the role, not a secondary goal.

I work with Collibra to document where each piece of data comes from, what it means and who is accountable for it. With fifteen sites and two ERPs coexisting, an indicator with no owner is an indicator no one corrects, and a dashboard that stops adding up in the middle of a migration is not read as a technical glitch but as a loss of trust in the figure.

Results and impact

Result

Four tools in production

All four are in monthly use across the European perimeter; none stayed a prototype.

Matching at the scale of two ERP systems

With ~120,000 references, manual matching was out of the question; the algorithm proposes candidates and validation stays with whoever knows the product range.

Racks visible across fourteen sites

How many racks there are, where they are and how many are missing at each site is now resolved end to end with written rules a manager can accept.

BI continuity through the migration

Business intelligence kept producing correct figures with Europe 2000 and Oxygen coexisting; I validated the sales order cubes against the source system.

Stack

PythonSQLBoard EPMMicroStrategyDatabricksCollibra

Skills used in the role

Tools

Board EPMSAP ERPPandasMicroStrategyPythonMicrosoft AzureApache SparkPower QueryCollibraPower AutomatePower BIAzure DatabricksGitSharePointSQLAzure DevOps

Domain

Data visualisationREST APIsTMSSoftware developmentERPData engineeringData governanceLogistics managementSupply chain managementBusiness intelligenceData analysisRFIDWMS

Frameworks and methods

Industrial digitalisationProcess optimisationIndustry 4.0Digital transformation