smallbard.com

Développeur senior freelance · .NET · Rust · plus de 20 ans d'expérience

Du logiciel métier à l'automate : du code qui tient en production.

J'interviens en C#/.NET et en Rust auprès des industriels et des éditeurs qui veulent moderniser, accélérer et fiabiliser leurs systèmes.

J'y ajoute, lorsque le problème s'y prête, un levier encore sous-exploité par les industriels : les solveurs SAT/SMT et la programmation par contraintes, pour l'ordonnancement, la configuration et la vérification.

Je travaille également sur le fonctionnement des IA génératives et leur intégration dans les applications métier et les pratiques des équipes, notamment sous forme d'agents, avec une attention particulière à ce qu'on peut réellement leur confier.

Propagation de contraintes en cours… Un carré latin 4×4 résolu en direct par propagation de contraintes : la même mécanique que dans un solveur industriel d'ordonnancement.

Ce que j'apporte à une équipe

Je rejoins des équipes techniques pour un résultat mesurable, en laissant derrière moi une documentation qui les rend autonomes.

Moderniser sans interrompre l'activité

J'accompagne la migration d'applications legacy vers les versions modernes de .NET et de C#, et le remplacement progressif de fronts vieillissants par Angular, Blazor ou Vue.js.

Le refactoring s'appuie sur les tests pour avancer par étapes sûres, réduire la dette technique et introduire Clean Architecture ou DDD uniquement lorsqu'ils apportent une vraie valeur au métier.

Optimiser les performances, mesures à l'appui

Je diagnostique les lenteurs d'une API ASP.NET Core, d'une base SQL Server ou PostgreSQL ou d'un front web, puis je corrige à la source plutôt que de contourner.

Chaque intervention commence par une mesure et se termine par une autre, afin que le gain soit démontré et non supposé.

Rust au plus près de la machine

J'utilise Rust pour les logiciels qui tournent au contact de la machine : API embarquées sur automates industriels, services temps réel, outils desktop.

Sa sûreté mémoire apporte des garanties particulièrement précieuses lorsque la fiabilité du logiciel est critique.

Transmettre pour rendre autonome

Précédemment formateur pour l'IMIE et My Digital School, je suis intervenu sur C#, ASP.NET Core, SQL, les performances, la sécurité et le TDD.

En mission, j'encadre les juniors et les alternants, je participe aux revues de code et je documente ce qui permettra à l'équipe de continuer sans moi.

Vers des systèmes qui prouvent ce qu'ils font

Trois domaines que j'étudie en profondeur pour compléter mon offre aux industriels. Des outils que je mobilise dès qu'un problème d'ordonnancement, de configuration ou de fiabilité dépasse ce que le code seul peut garantir.

Solveurs SAT / SMT

Vérifier qu'une configuration produit est cohérente, qu'un automate ne peut pas atteindre un état interdit, qu'un planning respecte toutes ses règles — et obtenir un contre-exemple quand ce n'est pas le cas.

preuve automatique · contre-exemples · Z3

Programmation par contraintes

Ordonnancement d'atelier, affectation de ressources, découpe, tournées : modéliser le problème tel qu'il est, laisser le solveur explorer, garder la main sur les priorités métier.

ordonnancement · ressources partagées · OR-Tools CP-SAT

Fonctionnement interne des IA

Comprendre ce qui se passe dans un modèle de langage — attention, représentations, limites — pour intégrer ces outils dans un workflow d'équipe avec lucidité, et savoir où ils sont fiables et où ils ne le sont pas.

modèles de langage · interprétabilité · agents de code

Missions récentes

Freelance depuis 2019, j'interviens auprès d'éditeurs et d'industriels sur des missions de plusieurs mois.

  1. 2026

    Ameo · à distance

    Conception et développement d'une API REST de supervision en Rust, exécutée directement sur un automate programmable WAGO sous Linux (BusyBox). L'API expose en temps réel les mesures d'un grand nombre de capteurs à un site Node.js de présentation et d'exploitation des données.

    Les contraintes principales étaient l'empreinte mémoire sur l'automate et les temps de réponse. La chaîne de cross-compilation et de build a été livrée avec l'application.

    Rust · axum · tokio · tower · cross-compilation · WAGO · Linux embarqué

  2. 2025
    2026

    Simphonis · Angers

    Développement d'un portail Angular / ASP.NET Core à destination des commerciaux, connecté à un configurateur d'offres (CPQ), et d'un outil de suivi et de répartition de la charge sur les effectifs.

    Migration en C# moderne d'une application legacy VB6 réalisant les calculs d'équipements frigorifiques (puissance, consommation, débit, rendement), en garantissant l'équivalence des résultats.

    C# · ASP.NET Core · Angular · SQL Server · CPQ · migration VB6

  3. 2025
    2026

    ApyCare · Limoges

    Refonte en Blazor d'une application ASP.NET MVC de suivi des interventions d'établissements de santé auprès de patients. Application hébergée sur Azure, authentification par Microsoft Entra ID.

    Données médicales : attention particulière portée à la sécurité, à l'anonymisation et au cloisonnement des données.

    C# · ASP.NET Core · Blazor · SQL Server · Azure · Entra ID

  4. 2024

    Lacroix · Rennes

    Refactoring et maintenance d'une application WPF de gestion de configuration d'automates déployés dans les réseaux de distribution d'eau, avec une composante C++ côté automates.

    C# · WPF · SQL Server · C++

  5. 2021
    2023

    Gunvor · Genève, Tallinn, Istanbul, Bucarest

    Développement d'applications de trading de matières premières manipulant de gros volumes de données : forte composante d'optimisation des requêtes SQL et des processus ETL, échanges asynchrones via RabbitMQ.

    Équipe internationale répartie entre la France, la Suisse, l'Estonie, la Roumanie, le Royaume-Uni et les États-Unis, travail quotidien en anglais.

    C# · WPF · SQL Server · RabbitMQ · ETL

  6. 2019
    2026

    Alcuin · Angers

    Refonte du site des cours municipaux de la Ville de Paris pour l'éditeur Alcuin : migration d'ASP.NET MVC vers ASP.NET Core, respect de la charte graphique de la Ville et attention particulière à l'accessibilité du site.

    C# · ASP.NET Core · Vue.js · SQL Server · accessibilité

  7. 2019
    2022

    My Digital School · Angers

    Formations données : C#, ASP.NET Core, SQL, performances, sécurité, algorithmie, TDD.

    Formation

Parcours et outillage

Avant le freelance

Quinze ans en entreprise, de 2004 à 2019, chez des éditeurs de logiciels puis chez un industriel de l'agroalimentaire, avec une progression de développeur vers lead développeur et formateur.

  • 2017–2019 IMIE (Angers) — formateur en C#, ASP.NET Core et tests unitaires auprès de développeurs en formation.
  • 2014–2018 Brioche Pasquier — lead développeur : architecture et conception des applications métier, passage aux micro-services, intégration avec l'IBM i, encadrement technique de l'équipe.
  • 2011–2014 Ubiqus Event Software (Angers) — développeur R&D sur un logiciel événementiel, front et back, support technique des développeurs.
  • 2004–2011 OpenPortal Software (Angers) — développeur puis lead développeur : architecture, conception, formation et encadrement de l'équipe.

Formation

  • 2004 Diplôme d'ingénieur, Polytech Nantes (SILR)
  • 2001 DUT Informatique, génie logiciel, IUT de La Rochelle

Langues

Français · Anglais (C2, Bulats) · Allemand (débutant)

Stack

.NET
C#, ASP.NET Core, Entity Framework Core, Blazor, WPF, WinForms
Web
Angular, Vue.js, TypeScript, HTML/CSS
Rust
axum, tokio, tower, egui, cross-compilation embarquée
Données
SQL Server, PostgreSQL, SQLite, IBM i, RabbitMQ
Autres
Python, PyTorch, Prolog, C++
Méthodes
Clean Architecture, DDD, TDD, SOLID, revues de code

Un projet de modernisation, un automate à ouvrir, un planning à optimiser ?

Décrivez-le en quelques lignes, je reviens vers vous rapidement avec un premier avis.

Prendre contact