Monter une filière No-Code - Retours d’expérience dans la data avec Data Fusion - Part I/III
Cet article est le premier d’une série de 3 qui traitent d’un retour d'expérience autour de l’organisation d’une filière No-Code dans la data et avec l’outil Data Fusion de Google.
Article 1 - Contexte, cadre et description du projet
Article 3 - Évaluations de Data Fusion et conclusions projets
Introduction
Précédemment, nous évoquions le fait que dans un monde où les compétences IT sont rares et chères, lorsqu’on veut innover, tester vite et que l’on a besoin d’IT, l’outillage en No-Code est un atout. Ce dernier nécessite des compétences raisonnables en IT et permet aux innovateurs/collaborateurs - les fameux ‘citizen developers’ - de tester vite des concepts tout en ayant accès à des facilités de déploiement sur étagère.
Pour autant, rien de magique, les outils No-Code aussi simples soient-ils restent des outils informatiques dont la maîtrise passe par un minimum de connaissance en design et en concepts informatiques. Tomber dans les chausse-trappes pour des employés néophytes est assez fréquent. Par ailleurs, les outils No-Code ont besoin de rapidement faire jouer la carte du Low-Code pour ajuster les fonctionnalités ou compenser un manque isolé des plateformes. Par du conseil ou par le développement de plugins, on peut permettre aux collaborateurs d’accélérer leurs pratiques ou de les débloquer dans leurs initiatives No-Code. (https://blog.octo.com/no-code-ou-low-code-pour-une-application-de-gestion-developpee-avec-airtable-zapier-that-is-the-question/).
Certes, les besoins restent ponctuels, temporaires et ne nécessitent pas de mobiliser une équipe de développement complète mais plutôt une petit équipe réactive et experte qui vient ponctuellement en soutien aux employés.
Au final, c’est ce qui caractérise une filière No-Code : un ou des outils No-Code proposés aux ‘citizen developers’, du conseil et du support IT par l’intermédiaire d’une petite cellule support au sein de la DSI. DSI qui a bien son rôle à jouer en conseillant et en cadrant les usages. En mettant à disposition des ressources pour accompagner et supporter les ‘citizen developers’ ces derniers vont s'approprier les outils No-Code et devenir de plus en plus autonomes.
La filière est là pour éviter désillusions des outils qu’on croit magiques et faire rencontrer le succès aux ‘citizen developers’ : nous illustrerons ici avec un retour d’expérience en succès d’une filière No-Code dans le monde de la data autour de l’outil Data Fusion (https://cloud.google.com/data-fusion ).
En résumé : accompagner les collaborateurs pour qu’ils s’approprient correctement les outils et deviennent le plus autonomes possibles est donc tout l’enjeu d’une telle filière.
Accompagner les ‘citizen developers’ pour qu’ils deviennent de plus en plus autonomes
Description du projet avec Data Fusion
Le projet a été développé pour le compte d’une grosse entreprise française spécialisée dans la gestion de services collectifs. L’entreprise est fortement décentralisée, avec des Business Units (BU) relativement indépendantes. Avec des besoins en gestion de données grandissants, il a fallu mettre à disposition une solution générique, intégrée dans le cloud de Google (GCP) permettant à chaque BU d’ingérer, traiter, stocker puis visualiser ses données de façon autonome. La solution repose principalement sur l’outil de GCP Data Fusion qui est un outil No-Code permettant de créer des flux de données grâce à une interface graphique.
L’utilisation d’un outil No-Code a été justifiée par la forte disparité dans les capacités techniques des différentes BUs. Data Fusion a été choisi pour implémenter des flux exploratoires non critiques.
Quelques métriques
En un an ~20 BUs embarquées
Nombre de flux en production par BU : de 1 à ~100
Temps de déploiement d’une implémentation : <1 mois
Pour chaque BU, 1 à 2 personnes ont été formées à l’outil Data Fusion
Temps pour devenir autonome après déploiement (hors cas particulier) : entre 2 semaines et 2 mois
Une cellule support de 3 personnes est venue guider et soutenir cette démarche dans la durée en accompagnant les fameux “Citizens Developers” (voir Chapitre Cadre d’usage) dans la mise en place puis la gestion de leurs flux avec Data Fusion.
Data Fusion, qu’est-ce que c’est ?
Data Fusion est un outil inclus dans GCP permettant de créer et déployer des pipelines de données ETL/ELT (Extract Transform Load/Extract Load Transform) sans code grâce à une interface graphique de type "pointer-cliquer". Les pipelines de données créés via Data Fusion sont transformés en code Spark, et exécutés sur un cluster Dataproc afin d’obtenir un ETL/ELT rapide et scalable capable de traiter de gros volumes de données.
Cadre d’usage du No-Code
Rappels et convictions
Le No-Code s’adresse aux ‘citizens developers’ dont les compétences en informatique sont modestes
Focus filière data
Aujourd’hui, le traitement et la gestion des données requiert des compétences de développement très spécifiques, notamment lorsque l’on parle de gros volumes de données. C’est ce qu’on appelle le Data Engineering. Le Data Engineer doit être capable de produire du code permettant de collecter, stocker, transformer et exposer les données. Dans un contexte de gros volumes de données, il devra souvent concevoir un code “scalable”, prendre en compte la parallélisation des traitements, réfléchir à la meilleure façon de stocker ses données etc…
Cependant, les Data Engineers sont rares et chers. L’utilisation d’outils No-Code dans le monde de la Data peut permettre, dans certains cas où la conception est moins complexe, à des profils moins spécialisés mais formés, d’être quasi-autonomes sur la gestion de leurs données, quel que soit leur volume, leur nature ou leur débit.
Le ‘citizen developer’ veut tester un concept simple dans un budget très contraint
Une cellule support pour quoi faire ?
Les missions de la cellule
Expliquer & définir le cadre d'usage généraliste : le “Pour qui et le pour quoi”
Proposer un catalogue d’outils, une sélection avec un cadre d'usage, en explicitant ce que l'outil sait faire et ce qu'il ne sait pas faire (ou qu'on n'autorise pas à faire)
Organiser des démos pour mettre le pied à l'étrier aux utilisateurs débutants
Exposer et maintenir une FAQ
Mettre à disposition des comptes utilisateur
Gérer la facturation à l’usage des solutions
Organiser des formations (internes ou externalisées) sur un outil choisi en particulier. Cela permet ainsi d’accélérer et de cadrer les usages qui pourraient en être faits dans le contexte de l'entreprise
Mettre en place une hotline et au delà pour
Niv 1
Offrir ponctuellement des d'experts IT afin d’éviter de tomber dans les chausses trappes des outils ou de rester coincés dessus trop longtemps
Faire une démo sur les fonctionnalités des outils
Pointer vers les ressources à disposition en interne ou en externe
Niv 2
Identifier / reproduire / valider un bug sur une plateforme No-Code donnée
Reporter un bug à l'éditeur
Niv 3
Développer des plugins, modules, extensions custom, corriger un bug (ex. Cas des solutions OS)
Relation éditeur étendue;
Reporter un bug puis en faire son suivi et négocier sa résolution
Négocier les tarifs avec l’éditeur et ce pour s’adapter à l’augmentation des usages - à date les éditeurs de plateformes No/Low-Code n’ont pas encore mauvaise réputation sur ce sujet, le marché restant encore ouvert
Monitorer les usages et administrer les applications pour suivre leurs usages en recensant celles qui sont en cours, celles qui sont inactives et celles qui sont potentiellement en train de passer à l'échelle. Faire un suivi des coûts engendrés par les usages (voire refacturer les coûts aux équipes utilisatrices).
Une cellule support pour aider et supporter les “citizen developers”
Focus filière data
Avec les problématiques liées aux larges volumes de données, certaines missions de la cellule support sont d’autant plus importantes :
Sensibilisation à la gestion des données sensibles/privées
- La cellule support n’est pas garante de l’utilisation qui est faite des données, mais elle a pour devoir de sensibiliser les utilisateurs aux notions de RGPD et de protection des données.
Support pour la conception du stockage des données
- Certains choix comme l’outil de stockage, la méthode d’indexation de données sont très importants et doivent être bien réfléchis pour correspondre à l'utilisation qui sera faite des données. De mauvais choix peuvent entraîner d’importants problèmes de performances ou de coûts très élevés par exemple.
Et ensuite ?
Dans le tout prochain article nous traiterons des limites de l’approche No-Code, des difficultés ainsi que des parades mises en place par la cellule support. En particulier, nous ferons un focus sur l’utilisation de l’outil Data Fusion dans le contexte de notre projet.