Bruno Oberle

Salut, Je suis Bruno 👋

Software engineer, spécialisé en Python et React, j'ai relevé au cours de la dernière décennie de nombreux défis, allant de la recherche académique à l'univers des start-ups.

J'ai passé trois ans à l'Université de Strasbourg comme chercheur dans le domaine du Natural Language Processing (NLP), où j'ai annoté des corpus et fine-tuné BERT, l'un des premiers LLM, pour la résolution automatique de la coréférence en français. Mes recherches ont donné lieu à plusieurs articles scientifiques (voir Google Scholar).

Ces cinq dernières années, je me suis concentré sur le développement d'applications SaaS pour deux start-ups de cybersécurité B2B, Cogiceo et Mantra. Chez Cogiceo, j'ai développé un SaaS pour la recherche automatique de vulnérabilités dans des applications Android et des extensions de navigateur. Chez Mantra, j'ai développé des systèmes d'analyse d'e-mails en temps réel afin de détecter des attaques de phishing.

Mon travail repose sur du code Python typé et testé (FastAPI, Django, Flask) ainsi que sur TypeScript et React, avec un engagement pour un code propre et maintenable (Domain Driven Design, architecture hexagonale).

J'aime découvrir de nouvelles technologies et je suis toujours motivé par des défis qui me poussent à apprendre et à progresser.

En dehors de mon activité professionnelle, je prends plaisir à créer des projets open source qui me sont utiles (et, je l'espère, utiles aussi à d'autres). Retrouve mes projets sur cette page dédiée.

Si vous voulez m'écrire ou discuter d'un projet, n'hésitez pas à m'envoyer un e-mail à: bruno@boberle.com.

Expérience récente

Software Engineer
Août 2022 — present
Tech stack: Python Mypy Pytest FastAPI Django JavaScript TypeScript React Redux GCP Docker Git Gitlab Sentry
  • Détection en temps réel d'emails de phishing (Office 365/Gmail)
  • Affichage de bannières explicatives sur les emails suspects
  • Développé avec Python, FastAPI & React, avec une architecture "Event driven" (EDA) hébergée sur GCP
  • Domain Driven Design, Clean architecture, Python typé avec Mypy
  • Monitoring et alerting avec GCP et Sentry
  • Support client quand un éclairage technique est nécessaire
Développeur Python & Web
Oct 2020 — Août 2022
Tech stack: Python Flask PostgreSQL Pytest Selenium JavaScript Bootstrap Git Gitlab Java Linux
  • Application SaaS d'analyse et scoring automatique des vulnérabilités d'apps Android et d'extensions de navigateurs
  • Application Saas d'édition collaborative de rapports d'audit de pentest
  • Solution RH en SaaS à usage interne (congés, notes de frais, abonnements de transport, tickets resto...)
  • Backend en Python/Flask et frontend en JavaScript/Bootstrap/jQuery
Chercheur/Linguiste informaticien (Natural Language Processing)
Oct 2017 — Sept 2020
Tech stack: Python TensorFlow Jupyter Pandas NumPy Java Google Colab Linux
  • Fine tuning de BERT (LLM) pour la détection automatique de la coréférence (publié à LREC 2020, disponible sur github )
  • Développement d'outils pour l'annotation et l'étude de la coréférence (par ex. SACR , Coref Conversions , Coref DB et CRViewer )
  • Direction d'une partie de l'annotation d'un grand corpus (1M de tokens) en coreferences
  • Projet ANR (Agence Nationale de la Recherche) Democrat
  • Publications de 7 articles (peer-reviewed) et 6 communications
Enseignant en Master "Technologies des Langues"
Sept 2019 — Mai 2020
Tech stack: Python Linux R
  • Cours: Introduction à Python, Commandes Linux, Statistiques avec R, XML
  • Petits groupes de 10 à 15 étudiants
Enseignant en Licence "Sciences du Langage"
Sept 2017 — Août 2019
  • Cours: Syntaxe, Morphologie, Analyse du discours, Emprunts linguistiques
  • Grands groupes de 50 à 100 étudiants

Langues

French flagNatif
British flagCourant
German flagDébutant

Projets

J'aime créer des outils open source.

Découvrez-les ici.

Articles Scientifiques

J'ai publié des articles scientifiques et présenté mon travail lors de plusieurs conférences et workshops.

Consulte-les ici ou sur Google Scholar.

Compétences

Python
Python
Mypy
Mypy
Pytest
Pytest
Pydantic
Pydantic
FastAPI
FastAPI
Django
Django
Flask
Flask
JavaScript
JavaScript
React
React
Redux
Redux
TypeScript
TypeScript
Google Cloud Platform
Google Cloud Platform
Golang
Golang
Git
Git
Gitlab
Gitlab
Sentry
Sentry
SQL
SQL
Linux
Linux
Perl
Perl
Jupyter
Jupyter
Pandas
Pandas

Formation

Master 2 de Traitement Automatique des Langues (Natural Language Processing)
2017: Université de Strasbourg

Mémoire: Développement d'un système expert de détection automatique de la coréférence

Publié dans la conférence TALN-RECITAL (Association française pour l'Intelligence Artificielle) en 2019

Master 2 de Sciences du Langage
2017: Université de Strasbourg

Mémoire: Étude statistique et linguistique des chaînes de référence dans les articles scientifiques

Publié dans Discours: A journal of linguistics, psycholinguistics and computational linguistics

Licence de Lettres Classiques / Linguistique française
2015: Université de Strasbourg

Langue et Linguistique du français, grec et latin

DEUG de Philosophie
2005: Université Marc Bloch (Strasbourg II)

Philosophie analytique, Logique (calcul des prédicats, des propositions), Épistémologie, Philosophie française

© 2025 Bruno Oberle
mentions légales