Aller au contenu

Ok2work : une application Rails responsive pour le secteur de l'emploi

Le contrat de travail a toujours été considéré comme un document long dans son élaboration et sensible dans sa rédaction. Embaucher une personne au pied levé s’avère parfois impossible car la signature d’un contrat de travail dépend de nombreux facteurs (heures d’ouverture des bureaux de l’agence, nombreuses clauses à ne pas oublier, etc.). Or, les opportunités de petits boulots, qui peuvent déboucher sur des embauches plus pérennes, se découvrent souvent à l’occasion de rencontres impromptues.

Ainsi, ce qu’on a l’habitude d’appeler le marché caché de l’emploi (offres qui ne passent pas par des annonces classiques), vit par le bouche à oreille, le développement des réseaux de relations et par le biais des candidatures spontanées.

La société Festou Intérim œuvre depuis 2008 pour garantir à ses clients des contrats de travail adaptés et conformes à la législation. L’objectif d’ok2work est de rationaliser ce marché caché de l’emploi pour permettre de commencer à travailler le plus rapidement possible. En effet, l’employeur et le travailleur peuvent créer eux-mêmes le contrat de travail d’intérim adapté à leurs besoins dès leur première rencontre.

Festou Intérim est une agence d’intérim normande intervenant dans tous les domaines d’activité, spécialisée dans les métiers du BTP.
Existant depuis 2008, elle dispose de 4 bureaux physiques (Caen, Saint-Lô, Vire et Rouen).

ok2work est un l’outil créé pour le compte de la société Festou Intérim dans le but d’établir de manière sécurisée un contrat de travail en quelques minutes.

ok2work supprime tous les obstacles pour obtenir un job : règlement des salaires en temps et en heure, gestion des congés, droit retraite, chômage, mutuelle, maladie, invalidité…

Cette étude de cas vous présente les travaux réalisés par Imagile pour développer l’outil nommé “ok2work”.

Festou Intérim dispose d’une grande expertise dans le domaine de la rédaction de contrats de travail, conseillant constamment ses clients employeurs et travailleurs. Les équipes de Festou Intérim utilisent des logiciels pour élaborer des contrats de travail et gérer les dossiers de leurs clients, notamment Anael Travail Temporaire.

La plateforme de contrat de travail ok2work doit pouvoir se connecter aux logiciels métier afin d’éviter la double saisie. Pour l’employeur comme pour le travailleur, tout se fait en ligne 24h sur 24 et 7j sur 7, depuis un smartphone, une tablette ou un ordinateur.

Afin que le contrat de travail réalisé par ok2work soit opérationnel dès que possible, il a fallu réaliser des déclaration préalable à l’embauche (DPAE) auprès de l’Urssaf en utilisant leur APIs.

Il a fallu concevoir un outil ergonomique, utilisant un moyen de communication rapide et sécurisé.

Voici un schéma général présentant les interactions entre les outils existants et l’outil “ok2work” :

Afin de garantir une fluidité dans le recueil des informations nécessaires pour l’élaboration du contrat de travail, nous avons réalisé :

  • des mock-ups ergonomiques,
  • un styletiles et des maquettes graphiques,
  • la mise en place de validation précise et d’aide à la saisie sur les champs de formulaire (numéro de sécurité sociale, SIRET, ville, poste à pourvoir…)
  • l’analyse et la mise en place de changements suite au résultat d’une série de tests utilisateurs auprès des différents publics cibles : employeurs, étudiants, personnel administratif et intérimaires.
  • Le Framework Ruby on Rails pour la création de l’application métier
  • Le CMS WordPress pour la gestion (administration uniquement) des contenus publics/marketing
  • Cronjobs pour gérer les éléments asynchrones comme par exemple :
    • le rafraîchissement des DPAE soumises pour lesquelles nous n’avons pas reçu une réponse immédiate de l’API URSSAF,
    • Les notifications lorsqu’un fichier d’inscription a dépassé sa date de validité (carte d’identité par exemple)
  • Client d’API REST/JSON (nécessaire pour communiquer avec les connecteurs),
  • Connecteur avec les APIs de l’Urssaf pour DPAE,
  • Connecteur avec l’API de WordPress pour récupérer le contenu éditorial
  • Le framework javascript Stimulus et la librairie JQuery afin de gérer l’interactivité et la dynamisation de l’application
  • Le framework CSS Tailwind (utility-first CSS) pour l’implémentation du design
  • La brique ActionCable de Ruby on Rails pour la communication en temps réel entre les deux parties lors de la rédaction d’un contrat

Le processus d’inscription a été découpé en plusieurs étapes vers lesquelles un utilisateur est guidé intuitivement par le biais de notifications et de redirections automatiques : on nomme ce processus l’onboarding.

À noter qu’un utilisateur, qu’il soit employeur ou travailleur, peut s’inscrire de lui-même ou être invité par un utilisateur déjà existant lors de la rédaction d’un contrat. Que l’utilisateur s’inscrive de lui-même ou qu’il ait été invité, il suivra le même processus.

On distingue deux types d’utilisateurs : l’utilisateur employeur et l’utilisateur travailleur. Ces deux types d’utilisateurs n’ont pas les mêmes besoins et n’auront donc pas tout à fait le même tableau de bord, ni les mêmes fonctionnalités. Par contre, et c’est une des spécificités d’ok2work, ils pourront tous deux être à l’origine de la création et de l’édition du contrat.

Étapes Actions Utilisateurs concernés
Étape 1 Choix de l’email et du mot de passe ; Validation de l’email Employeur, Travailleur
Étape 2 Renseignement des informations personnelles permettant la rédaction d’un contrat Employeur, Travailleur
Étape 3 - Ajout des documents d’inscriptions obligatoires
- Ajout de documents optionnels (diplômes, licences..)
Travailleur

Un employeur pourra commencer son premier contrat dès la fin de l’étape 2. Un travailleur devra attendre la validation de ses documents d’inscriptions ajoutés à l’étape 3 mais pourra tout de même participer à l’élaboration d’un contrat initialisé par un employeur.

Inscription Employeur

Inscription Travailleur

C’est le cœur de cette application, aussi bien en matière de métier qu’en matière de technologie employée.

Pour la réaliser nous avons préalablement échangé avec l’équipe de Festou pour comprendre, simplifier et classifier l’ensemble des éléments nécessaires à la constitution d’un contrat de travail tout en présentant l’information de la façon la plus simple et ergonomique possible. Suite à ces travaux, nous avons dégagé 7 étapes simples.

Pour l’élaboration du contrat de travail, nous avons exploité une brique récente du framework Ruby On Rails : ActionCable. Cette dernière permet de communiquer en temps réel entre plusieurs machines. Dans notre cas, cela permet de synchroniser dynamiquement les informations du contrat entre les deux parties : ils n’ont donc pas besoin d’être dans la même pièce et peuvent tous deux renseigner des éléments tout en voyant en temps réel ce que l’autre a déjà renseigné.

Concrètement cela permet une multitude de cas d’usage, par exemple :

  • L’employeur renseigne chaque étape l’une après l’autre pendant que le travailleur en prend connaissance au fur et à mesure sur son propre smartphone.
  • L’employeur et le travailleur renseignent des étapes distinctes en même temps tout en ayant connaissance des modifications réalisées par l’autre.
  • L’une des deux parties n’est pas présente mais pourra constater et éventuellement effectuer des changements avant la signature

La gestion des horaires

Le calcul de la base horaire n’étant pas trivial, nous avons décidé de créer un outil simple pour la définir.

À titre indicatif, la base horaire se met à jour à chaque modification de l’utilisateur. Un bloc journée type lui permet de définir la plage horaire par défaut afin de lui faire gagner du temps lorsque les horaires sont fixes.

L’utilisateur peut également désactiver simplement une journée non travaillée ou une période.

Il peut également à la fois utiliser la fonctionnalité de journée type tout en conservant la possibilité de personnaliser certaines journées.

Le module du taux horaires

Dans le contrat ainsi que le calcul des estimations de coût, nous avons besoin du taux horaire brut. Après nos tests utilisateurs, en particulier avec les employeurs, nous nous sommes rendu compte que ce n’était pas une valeur intuitive.

Nous avons donc, en se basant sur la plage horaire définie au préalable, développé un outil qui fonctionne dans les deux sens :

  • En renseignant le taux horaire brut, le salaire mensuel brut est immédiatement mis à jour.
  • En renseignant le salaire mensuel brut, le taux horaires est immédiatement mis à jour.

Le module du devis

Un devis est généré dès l’instant que les étapes de choix des plages horaires et du taux horaire ont été renseignées.

Il n’est transmis qu’à l’employeur et est mis à jour chaque fois que :

  • La base horaire est modifiée,
  • Le taux horaire est modifié,
  • Les primes et compensations sont mises à jour.

Il permet à l’employeur de facilement visualiser le coût total de son embauche.

À noter que ce module gère les heures supplémentaires selon les différentes règles édictées par le droit français du travail.

Il est transmis par email mais également disponible à tout moment par l’employeur sur l’application.

Dès l’instant qu’un contrat a été validé par les deux parties nous envoyons une demande de création à l’URSSAF par le biais de son API DPAE/DSN. Il y a ensuite trois possibilités :

1- Le cas de succès : l’URSSAF nous renvoie directement la DPAE validée, nous informons immédiatement les deux parties que le travail peut débuter aux dates indiquées sur le contrat. Le contrat est préparé par les équipes de Festou dans les 48 heures (la DPAE étant suffisante pour commencer à travailler).

2- Le cas d’erreur : celà signifie que la DPAE a été refusée car un élément renseigné par une des deux parties a été analysé comme incorrect par l’URSSAF. Nous informons immédiatement les deux parties de l’élément qui ne va pas ; ils peuvent ainsi le modifier immédiatement et refaire une demande de DPAE.

3- Le cas où l’URSSAF ne répond pas immédiatement : dans ce cas nous allons continuer à interroger l’API de l’URSSAF de façon asynchrone. Nous informons les parties que la DPAE est en cours de génération. Dès que l’information nous revient nous appliquons en fonction de la réponse de l’API de l’URSSAF un des deux scénarios décrits précédemment.

Un exemple des deux vues permettant de suivre les contrats que nous proposons aux employeurs. La première lui permet de voir rapidement ce qu’il doit faire. La seconde lui permet de retrouver facilement les contrats concernant un travailleur.

Dans les deux cas, il peut retrouver tous ses contrats et mener plusieurs actions comme par exemple consulter un contrat, dupliquer un contrat existant, modifier un contrat en cours d’élaboration…

Le travailleur a également deux vues : le mode tableau de bord et le mode Entreprise (pour retrouver tous les contrats associés à une entreprise en un seul coup d’œil).

Cette fonctionnalité ne concerne que les employeurs et à pour but de simplifier une démarche hebdomadaire obligatoire liée au monde de l’intérim : les relevés d’heures.

En effet, pour chacun de ses intérimaires une entreprise doit envoyer à l’agence d’intérim un récapitulatif des heures effectivement travaillées. Notre outil va permettre à l’agence d’intérim de recevoir ces relevés de façon normalisée.

Chaque relevé d’heure est pré-rempli par l’application (à partir des données du contrat). Dès la fin de la semaine, l’employeur est informé qu’il doit vérifier (et au besoin éditer) le relevé d’heures que l’application lui a préparé.

En validant un relevé d’heures, l’information est immédiatement transmise à l’agence d’intérim qui va pouvoir faire le nécessaire.

Des rappels sont également envoyés automatiquement à l’employeur en cas d’oubli de validation de sa part.

Nous avons choisi de mettre en place un site WordPress pour la gestion du contenu. Ainsi l’équipe d’ok2Work peut maîtriser ses publications et saisir simplement à partir de l’interface d’administration. De notre côté nous utilisons la JSON API native de WordPress pour récupérer ce contenu éditorial et l’afficher sur la partie publique de l’application : https://www.ok2work.fr

Nous avons, dans le cadre de la création de notre application numérique ok2work, travaillé avec Marc et son équipe : une collaboration de premier ordre qui prouve que Marc a su mettre en place et orchestrer une structure d’experts animés d’un sens du service fort.
André Festou, gérant de la société

Notre approche vous séduit ?

Contactez-nous, ou venez nous rencontrer pour discuter de vos projets.