Julian Bruyat

Développeur / Docteur en Web Sémantique
prénom@nom avec un . entre le y et le a
Github / Google Scholar


30 ans, Lyon (France)
Français (langue maternelle) - Anglais courant

J'ai fait une thèse à l'INSA Lyon au sein du laboratoire LIRIS et de l'équipe TWEAK sur l'interopérabilité entre les graphes de propriétés et le web sémantique.

Formation

2020 - 2024 INSA Lyon
Doctorat en Informatique
Sujet : Des graphes de propriétés aux graphes de connaissances [Voir]
2017 - 2020 Université Lyon 1
Master en Informatique
Spécialité Intelligence Artificielle
Mémoire : Web Assembly pour le Web Sémantique [Voir]
2016 - 2017 Université Aix-Marseille
Licence en Informatique
2014 - 2016 Centre Scolaire Notre Dame
de Villefranche-sur-Saône
BTS SIO (Informatique)
Spécialité SLAM (Développement)

Expériences professionnelles

Avril 2024 - Novembre 2024 : Développeur (Post-doctorant) sur le projet COSWOT

Laboratoire LIRIS (Villeurbanne)
Equipe TWEAK

Le projet CoSWoT est un projet de recherche visant à distribuer des tâches de raisonnements à travers un réseau d'appareils peu puissants (type ESP32) à travers une architecture se reposant sur des servients.
J'ai principalement contribué à l'amélioration du code du raisonneur LiRoT, développé en C, dans le but de l'intégrer au "servient" CoSWoT. J'ai également contribué au code de ce dernier dans une moindre mesure.

Novembre 2020 - Juin 2024 : Doctorat en informatique sur le sujet "Des graphes de propriétés aux graphes de connaissances"

Soutenance Mémoire Slides

Laboratoire LIRIS (Villeurbanne)
Equipe TWEAK
Doctorat à l'INSA Lyon

PREC : La conversion de graphes de propriétés en graphes RDF basée sur un contexte

PREC Github prec sur npm

Une ontologie et un moteur pour convertir des graphes de propriétés en graphe RDF selon un mapping fourni par l'utilisateur

Shacled Turtle : Le hors sujet pour l'auto-complétion RDF

Shacled Turtle Github shacled-turtle sur npm Démo en ligne
Publication au workshop VOILA! 2022 Article Glissades

Une extension pour Code Mirror et une proposition de méthode pour proposer de l'autocomplétion pour le langage Turtle basée sur des ontologies RDFS et des schémas SHACL.

3 Février 2020 - 31 Juillet 2020 : Stage sur le sujet "Web Assembly pour le Web sémantique"

Mémoire Manuscrit Slides Article publié à ESWC 2021
Code "Wasm-ify Sophia" WasmTree @bruju/wasm-tree sur npm

Laboratoire LIRIS (Villeurbanne)
Equipe TWEAK
Encadré par Pierre-Antoine Champin
Stage de fin de Master 2

J'ai travaillé sur un projet visant à améliorer les performances du Web Sémantique grâce à Web Assembly :

  • Lors d'une première phase exploratoire, nous avons exploré les possibilités d'exporter des datasets RDF issus de l'API Sophia écrite en Rust vers Web Assembly en suivant l'API RDFJS.
  • Face au manque d'efficacité de la première méthode, nous avons fait le choix de nous détacher de Sophia pour proposer WasmTree, une implémentation en JavaScript de l'interface RDFJS dont seule la gestion des indexes de termes est gérée par Web Assembly. Autrement dit, cette implémentation hybride Rust (Web Assembly) - JavaScript est pensée pour améliorer le plus possible les performances de la libaririe JavaScript ainsi produite.

Janvier - Juin 2019 : Projet d'Orientation en Master "Outillage pour l'étude des passes de LLVM"

Rapport Poster

Laboratoire LIP (Lyon)
Equipe CASH
Encadré par
Matthieu Moy et Laure Gonnord
Dans le cadre de mon Projet d'Orientation en Master 1

Dans le cadre de l'unité d'enseignement "Projet d'Orientation en Master" en M1, j'ai été amené à travailler sur le compilateur LLVM et plus particulièrement sur la réalisation d'un outillage permettant d'étudier l'ordre des passes d'optimisation de LLVM.
Ce projet a été réalisé au laboratoire LIP (Laboratoire de l'Informatique du Parallélisme) au sein de l'équipe CASH (Compilation and Analysis, Software and Hardware).
Les contributions principales de ce projet sont l'identification des obstacles pour benchmarker des ordres de passes et la proposition d'une solution se reposant sur la Test Suite de LLVM.
Par la suite, un autre stagiaire a repris mon travail et l'ensemble du code produit est disponible sur Github


11 Janvier 2016 - 19 Février 2016 : Stage de développement d'application en VBA Excel

Blanchisserie Morellon (Lentilly)
Dans le contexte de mon BTS SIO
  • Création d’un prévisionnel de charges à partir de données extraites sur le logiciel de facturation de l’entreprise. Ce logiciel permet également de générer des graphiques sur l’activité annuelle :
    • A partir de l'extraction du logiciel de facturation de la Blanchisserie Morellon, le but est de pouvoir repertorier par catégories les différents articles loués.
    • Ces données permettent ensuite de générer des graphs de l'évolution de l'activité et de la productivité.
    • En utilisant une estimation de l'évolution de l'activité saisie par l'utilisateur, l'application est capable d'estimer les besoins horaires requis pour une semaine future.
  • Assurer un suivi utilisateur de l'application de création de planning (voir stage précédent), proposer et réaliser des améliorations afin d'en améliorer l'ergonomie, ainsi que de réparer les bugs.

26 Mai 2015 - 26 Juin 2015 : Stage de développement d'application en VBA Excel

Blanchisserie Morellon (Lentilly)
Dans le contexte de mon BTS SIO
  • Conception de macros en VBA Excel afin d'automatiser et de standardiser la création des plannings de la semaine de l'usine grâce à une interface de saisie. Le but est ensuite de pouvoir imprimer des plannings différents pour les différents postes, ne contenant que les informations les concernant.

Compétences

Les outils auxquels je suis le plus habitué sont les suivants


Langages de programmation

  • Bas niveau : C++17, Rust
  • Haut niveau : JavaScript / TypeScript, Java, Python

Bases de données

  • Relationelles : MySQL / MSSQL
  • Graphe : RDF, Graphes de propriétés (Neo4j, Tinkerpop)
  • NoSQL : MongoDB

Environnements que j'utilise actuellement

  • Systèmes d'exploitation : Windows 10, Linux (Ubuntu)
  • IDE : Visual Studio 2022, Visual Studio Code

Autres outils que j'ai
pratiqués par le passé

  • Autres langages : C, C#, PHP, VBA, Assembleur (ARM / NASM)
  • Autres paradigmes : Fonctionnel (OCaml), Prolog
  • Autres IDE : IntelliJ / PyCharm, Eclipse
  • Il m'est arrivé d'utiliser : Parcel v2, Vue 3
  • Programmation pour Android avec Android Studio

Enseignement

J'ai eu la chance de faire mon doctorat à une époque où ChatGPT 15 n'avait pas encore remplacé les enseignants pour faire des économies budgétaires.

Université / Niveau Unité d'Enseignement Volume horaire
Université Lyon 1
Master 2 Intelligence Artificielle
Dynamique des connaissances TP 7h30 (2020-2021)
TP 7h30 (2021-2022)
TP 12h (2022-2023)
TP 12h (2023-2024)
INSA Lyon
3e année d'Informatique
Génie Logiciel et modélisation UML TP 20h x 2 (2020-2021)
TP 20h (2021-2022)
TP 20h (2022-2023)

Projets réalisés en cours

Janvier 2020 : The dynamics of collective sorting robot … in an HTML page

Codé en : HTML / CSS / Javascript

Le rendu sur votre navigateur Github

Un des TPs que j'ai dû réalisé se reposait sur l'article The dynamics of collective sorting robot-like ants and ant-like robots de Jean-Louis Deneubourg.
L'objectif de ce TP est de placer sur une grille des éléments de manière aléatoires, et de les faire trier par couleur par des petits agents indépendants avec une intelligence très limitée (symbolisés en noir).
Le choix du langage étant libre, afin d'avoir un code facile à lire, à compiler et à exécuter, j'ai eu l'idée de réaliser ce projet sous la forme d'un unique fichier html.
Aimant beaucoup trop le rendu final, je met ce TP en avant ici.

Octobre 2015 - Avril 2016 : Azure Lemon - Application Azure School

Technologies utilisée : Android Studio, Java, Eclipse, PHP

Durant toute ma seconde année de BTS SIO, nous avons réalisé en groupe de trois une application qui pourrait être potentiellement utile pour une école.

A ce titre, nous avons développé une application nommée Azure School (en référence en nom de notre entreprise fictive Azure Lemon) proposant les fonctionnalités suivantes :

  • Gestion des devoirs
  • Visualisation des absences et retard
  • Visualisation des repas du self
  • Possibilité de participer à des quizzs proposés par les enseignants
  • Gestion de la liste d’appel (possibilité pour les élèves de savoir quand ils en sont chargés et pour les enseignants d’avoir la liste directement sur leur téléphone)

L’application a été développée pour Android en Java. Le site web complémentaire à l’application a lui été développé sous PHP.