Galadrim accompagne DirectSkills dans la refonte de son logiciel métier.
Créé en 2000, DirectSkills développe et commercialise un logiciel métier de recrutement et de gestion de l’intérim. L’entreprise s’est progressivement imposée comme le leader français du secteur avec une couverture de 99 % des agences d’intérim en France. En 2022, le logiciel regroupait 125 000 utilisateurs. Il avait permis la signature de plus de 1 500 000 contrats de travail et l’édition de plus de 2,6 milliards d’euros de factures d’intérim.
L’application métier, créée dès les premières années, avait été développée en ColdFusion. L’utilisation de cette technologie aujourd’hui vieillissante couplée aux ambitions d’expansion européenne de l’entreprise ont rendu sa refonte nécessaire. Trois équipes en interne composées chacune d’un lead développeur et de cinq développeurs travaillent à cette refonte et au développement de nouvelles fonctionnalités.
Dans le but d’accélérer ce chantier stratégique, DirectSkills a souhaité renforcer ses équipes en s’appuyant sur une agence experte en React et en TypeScript. C’est dans ce contexte que Galadrim accompagne l’entreprise depuis 2019. Au total, un lead développeur et 3 développeurs full stack collaborent avec les équipes techniques de l’entreprise dans cette refonte.
Les utilisateurs du logiciel sont à la fois les entreprises utilisatrices (des grands groupes comme Auchan, Eiffage, etc) et les agences d’intérim (comme Manpower). Il permet de gérer l’intégralité du processus de gestion des intérimaires.
Voici quelques fonctionnalités clés :
la gestion du recrutement : les entreprises peuvent préciser leurs critères de recrutement et leurs demandes sont envoyées aux sociétés d’intérim qui peuvent y répondre depuis la plateforme en proposant des profils.
l’auto-contractualisation : les entreprises peuvent, via un outil de personnalisation, générer automatiquement des contrats en les configurant en fonction de leurs propres règles.
la saisie des fiches de temps des intérimaires : les entreprises peuvent saisir manuellement les fiches de temps des intérimaires ou importer les données provenant de leurs badgeuses.
l’auto-facturation : la saisie des fiches de temps des intérimaires permet la génération automatique de factures qui sont envoyées par les agences d’intérim aux entreprises utilisatrices. Il est possible de configurer, pour chaque entreprise, ses propres règles de facturation.
le reporting d’activité : chaque entreprise dispose d’un reporting opérationnel, achats, RH et financier en temps réel.
la connexion au SI des entreprises : le logiciel de DirectSkills peut facilement s’intégrer au SI des entreprises. Une intégration à leur SSO est rendue possible avec la connexion SAML v2 standard. Les données relatives aux contrats générés sont directement transmises au SI RH des entreprises.
Au-delà de ces fonctionnalités structurantes pour gérer le processus intérim, DirectSkills intègre également des technologies d’intelligence artificielle pour développer des fonctionnalités facilitant le sourcing et les contrôles qualitatifs.
Par ailleurs, au sein de chaque entreprise, une multitude de rôles et d’accès sont donnés et un haut degré de personnalisation est permis. Par exemple, dans le cas d’une demande de recrutement, plusieurs rôles sont donnés à différentes personnes :
une personne peut être chargée de renseigner des informations générales sur les compétences recherchées
une autre personne aura pour rôle de valider cette demande
une autre personne sera alors chargée de renseigner les niveaux de rémunération attendus
etc.
C’est ce haut degré de personnalisation qui permet à DirectSkills de répondre précisément aux besoins d’une variété d’entreprises.
L’un des enjeux de la refonte a été d’utiliser des technologies modernes et performantes. Nous utilisons notamment :
React & Remix : l'avantage de Remix est de fournir une approche simplifiée et structurée en combinant React avec des fonctionnalités de routage et de gestion d'état intégrées.
Node.JS & Fastify : Fastify est un framework web efficace conçu spécifiquement pour les applications Node.js, offrant une gestion optimale des requêtes et des temps de réponse réduits favorisant le développement d’applications web réactives et évolutives.
TypeScript qui permet d'ajouter des fonctionnalités de typage statique au code JavaScript, améliorant ainsi la fiabilité et la maintenabilité de l’application métier.
GraphQL : ce langage permet de réduire les requêtes faites à la base de données et offre ainsi une plus grande flexibilité dans la gestion des données entre le front-end et le back-end.
Par ailleurs, un challenge est de faire cohabiter, sur une période longue, les deux versions de l’application et de nous assurer que les mises à jour effectuées dans le cadre de la refonte n’entachent en aucune façon la bonne utilisation de l’application métier.
Pour assurer cette parfaite transition, nous suivons une approche TDD (Test Driven Development). Nous nous appuyons sur l’outil Vitest pour la gestion de ces tests.
Enfin, l’application s’inscrit dans un processus métier complexe. L’approche Domain-Driven Design est donc appliquée dans l’objectif de créer une application qui soit mieux alignée avec les besoins métiers et plus facilement compréhensible à la fois par les équipes de développement et les experts de chaque métier.