Kevin habite à Toulouse et a été le professeur de Benjamin. Il a obtenu un doctorat en intelligence artificielle avant que ce soit à la mode. C'est aussi un expert Qt qui contribue à KDE depuis plus de 20 ans. Cela dit il a aussi appris à maîtriser plusieurs autres écosystèmes, faisant de lui un développeur polyglotte. Lâchez-le dans n'importe quelle base de code sans boussole : il en dressera quand même la carte. Ses loisirs incluent l'aïkido et la lecture d'autant de livres et d'articles aux styles et aux sujets variés que possible.
← RetourGrand lecteur, Kevin collectionne depuis au moins dix ans les URLs des articles qu'il lit. Plutôt que de les garder pour son seul usage, il a commencé à publier des Web Reviews hebdomadaires sur son site personnel. Elles sont désormais utilisées dans le cadre de la veille technique du groupe enioka.
Kevin a commencé à contribuer à la communauté KDE en 2003 et y est actif depuis. Il a réalisé de nombreux travaux techniques, notamment des contributions à la suite d'applications Kontact et à Plasma Desktop. Dans le cadre de ce travail, il a également participé aux efforts de standardisation au sein de l'initiative Freedesktop.org. Enfin, il a pris part aux discussions sur l'architecture logicielle visant à scinder les anciennes bibliothèques kdelibs pour créer le produit KDE Frameworks, puis a dirigé les travaux de transition pendant trois ans, jusqu'à la publication des premières versions.
Au-delà de son engagement en tant que développeur, il a participé à des initiatives de gestion communautaire, par exemple en facilitant les échanges qui ont abouti au Manifeste KDE, aujourd'hui l'un des textes constitutionnels de la communauté. Il a également mis en place l'incubateur de projets KDE pour aider de nouveaux projets à rejoindre l'écosystème KDE. Enfin, il a participé régulièrement au comité de programme de la conférence Akademy.
Il est aussi amené à contribuer dans le cadre de son travail à KDE, LibreOffice, Poppler et d'autres, selon les demandes des clients. Cela va de corrections ponctuelles de bugs affectant un client à des projets de grande envergure. Il a notamment dirigé des équipes chargées d'améliorer les logiciels KDE pour Valve Corporation, Canonical ou le Sovereign Tech Fund.
Kevin a côtoyé les communautés des logiciels libres et open source la majeure partie de sa vie. Il a ainsi cherché à les étudier par l'analyse de données grace à l'activité des commits et des échanges structurés, comme les revues de code. Une partie de ces travaux a été présentée sous forme de conférences ou d' articles sur son site personnel.
Ces compétences se sont également révélées précieuses dans un contexte professionnel. Lors des audits de projets, il obtient une vision plus précise de la dynamique des équipes. Il aide aussi à créer des tableaux de bord permettant aux CTOs et aux engineering managers de comprendre comment leurs équipes interagissent et si certaines personnes sont en difficulté.
Cela complète ses autres activités d'accompagnement des clients dans l'analyse de la supply chain open source de leurs applications : vérification de la compatibilité des licences et évaluation de la santé des communautés responsables des dépendances logicielles essentielles. Ces efforts peuvent s'inscrire dans un accompagnement plus global visant à aider les clients à mettre en place ou à gérer leur Open Source Program Office (OSPO).
Kevin est un ingénieur Linux expérimenté, aussi bien dans les environnements de bureau qu'embarqués. Ces projets peuvent inclure la création d'interfaces graphiques (GUI), mais pas nécessairement, car il travaille aussi avec des systèmes headless.
Il possède ainsi de l'expérience dans différents domaines courants pour ce type de systèmes :
Il peut également travailler sur des systèmes ayant des exigences de sécurité spécifiques, soit à l'aide de services systemd sandboxés, soit en utilisant snapd sur des systèmes basés sur Ubuntu Core.
Sa vaste connaissance de l'écosystème Linux lui permet d'aider les clients à définir l'architecture applicative et logicielle de leurs solutions.
Au-delà de la programmation système, Kevin possède également de l'expérience en programmation graphique, notamment en exploitant le GPU. Il a ainsi contribué au moteur Qt 3D, tant à son implémentation qu'à la conception de son API.
Ces compétences sont également applicables aux interfaces web ou au backend. Pour un projet de Building Information Modeling (BIM) avec Vinci Construction, Kevin a travaillé sur :
Au cours de sa carrière, Kevin a travaillé sur des projets très variés, notamment des applications d'entreprise. Il connaît ainsi plusieurs domaines métiers, dont le retail, la construction, la logistique, la sécurité et bien d'autres.
Ces projets ont également exigé la maîtrise de différents écosystèmes comme Java, Rust ou Python. En plus de développer des fonctionnalités et d'accompagner les équipes des clients, il a réalisé des optimisations à grande échelle, remis en état des bases de code legacy et accompagné des transitions d'architecture logicielle après en avoir conçu la cible.
Kevin est un technicien, mais il apprécie avant tout la dimension humaine de son métier et aime transmettre ses connaissances. Il s'est donc naturellement essayé à l'enseignement avant même d'obtenir son diplôme. Au fil des années, il a formé des centaines d'ingénieurs lors de dizaines de sessions.
Il a conçu les formations enioka Haute Couture et rédigé la majeure partie des supports. Il est également chargé de former les autres formateurs de l'entreprise.
Il pratique le sketchnoting, une technique bien utile pour donner davantage de vie à ses formations. Parmi les sujets qu'il aborde figurent les méthodes agiles, la gestion de versions, les revues de code, les techniques de test, la remise en état de code legacy, les design patterns et l'architecture logicielle.
Après plusieurs années à animer des formations, Kevin a compris qu'il fallait proposer à certains membres des équipes clientes un accompagnement encore plus personnalisé. Il a donc développé des compétences en coaching technique, destiné aux engineering managers, tech leads et lead developers. Ces personnes accèdent souvent à des responsabilités de leadership après avoir suivi un parcours technique. Cette transition peut être brutale, mais le coaching la facilite.
Dans le cadre de ses responsabilités, il supervise l'amélioration de la méthode utilisée par les autres coachs de l'entreprise.