Agile, DevOps, Cloud… désormais vides de sens ?
Depuis mon arrivée sur le marché du travail en France, les DSI vont de plans de transformation en réorganisation. Il faut dire que, depuis les 15 dernières années, nous vivons une période dans l’informatique très riche en cycles technologiques. Récemment, l’automatisation et les plateformes de services ont eu des impacts directs sur notre façon de construire nos logiciels et notre quotidien d’informaticien.
Prenons de la hauteur, pourquoi nos DSI prennent ces directions, quelles sont leurs trajectoires et comment améliorer leurs démarches ?
La DSI, partenaire ou centre de coûts ?
Quels que soient les secteurs d’activité, la bataille s’est déplacée sur la production de services numériques à valeur ajoutée pour les clients. Toutes les entreprises sont dans le dilemme de l’innovateur* et doivent trouver des solutions pour injecter du numérique dans :
- leur relation client : Uber & Airbnb sont des exemples très connus de précurseurs dans la numérisation de la relation client et dans la façon dont nous avons de consommer un service.
- leur chaîne de production : Veolia produit des vannes connectées pour améliorer le rendement de la distribution d’eau.
Or dans ce contexte où le numérique semble devenir l’or du siècle, paradoxalement les DSI ont encore du mal à être considérées comme un partenaire du business plutôt qu’un centre de coût.
Pourquoi ? Parce qu’à date, les DSI ont des difficultés à se moderniser, à adopter de nouvelles pratiques émergentes, pour accélérer la production de logiciel.
*Titre original “The Innovator’s Dilemma” de Clayton Christensen : Le dilemme de l’innovateur est simple : comment peut-on prendre le risque d’abandonner un status quo profitable pour créer des conditions de risque et se redonner un avenir ?
Comment les DSI se transforment-elles ?
Suite aux installations massives des ERP en entreprise et la lourdeur de leur fonctionnement, les DSI se sont tournées, il y a quelques années, vers un trio prometteur : Agile, DevOps, Cloud pour transformer les DSI.
Des expérimentations ont eu lieu, nous avons tous vécu un programme Scaling Agile à la Spotify, ou SAFE, d’industrialisation de bout en bout ou de Move2Cloud. Beaucoup d’énergie a été dépensée, avec des résultats mitigés.
Le constat est qu’il y a bel et bien eu adoption des buzzwords mais les concepts fondamentaux sont appliqués avec une grande liberté, dilués dans un consensus mou, loin de l’esprit initial.
Désormais :
- Agile signifie avoir des post-it sur un mur
- DevOps est devenu un métier
- Cloud fait référence à des VM et du stockage
Conscientes que la modernisation patine, les DSI ont un réflexe humain et compréhensible d’organiser des plans de transformation et des réorganisations. Malheureusement, ces actions sont souvent un peu trop éloignées des réalités opérationnelles et pas toujours correctement incarnées. Cela renforce le sentiment de concepts dévoyés.
Ce constat est d’autant plus douloureux pour nous qui sommes impliqués sur des projets à la croisée de ces mondes et constamment en mouvement.
Pour appuyer la réflexion sur les difficultés des DSI à se moderniser, ci-dessous deux exemples :
1/ Une grille de lecture, tirée du livre “Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations” pour identifier les niveaux de performance des organisations dans la production de logiciels :
L’évolution dans le temps, mise en avant dans cette grille issue du Puppet State of DevOps Report 2021, montre bien que l’adoption existe mais la généralisation des pratiques n’a pas eu lieu :
2/ La tendance à cristalliser le rôle de développeur en super héros. La fiche de poste d’un développeur senior pourrait ressembler à cela :
- Maîtrise ses compétences intrinsèques
- Maîtriser les outils de test du marché
- Maîtriser ses pipelines de déploiement.
- Construire l’infra de son application (IaC)
- Maintenir en conditions opérationnelles des applications existantes
- Rédiger des documentations techniques
- Connaître les bases de données
- Avoir une vision produit
- Leader l’architecture applicative
- Maîtriser la logique métier/client
- Anticiper les nouveaux cycles technologiques.
- Maîtriser les risques sécurités et savoir y remédier
- Maîtriser les architecture technique Container et serverless
- S’extraire des contraintes techniques
On comprend vite qu’il est impossible à date pour un développeur de maîtriser tous ces sujets trop hétérogènes pour le cerveau humain, et qui lui demanderaient de changer de contexte trop souvent.
Agile, DevOps et Cloud, ces mots désormais vides de sens ne doivent pas nous faire oublier l’importance du rôle des DSI dans la modernisation de l’entreprise.
Existe-il une alternative ?
Je poursuis mon exemple sur le rôle du développeur. En tant que Manager DSI, ce que je souhaite, en terme de priorités, c’est que notre développeur :
- Maîtrise la logique métier/client (ex : maîtriser le fonctionnement d’un virement bancaire)
- Maîtrise ses compétences intrinsèques (ex : maîtriser les classes Java)
- Maîtrise les compétences supports, ici tout le reste (ex : maîtriser l’IaC)
Notez que cette logique s’applique quel que soit son rôle dans l’entreprise. Les compétences support des développeurs sont des compétences intrinsèques des équipes CI/CD, ou des équipes cloud, qui elles-mêmes doivent maîtriser la logique de leur client.
Ce que je conclus de cet exemple c’est qu’il faut externaliser des compétences de certaines équipes. Squad et équipes pluridisciplinaires ont des limites. Alors comment externaliser les compétences d’une équipe sans réduire le TTM ?
Il faut sortir du mode guichet (chaque équipe expose ses produits en self service) et limiter au nécessaire la collaboration entre équipes. Elle coûte très cher, elle n’est ni scalable ni répétable, elle doit donc être ponctuelle et limitée dans le temps sinon il convient de changer le périmètre des équipes. J’ai acquis la conviction que les organisations modernes reposent sur des équipes au périmètre clairement défini, et qui exposent leur service “as-a-service”.
Chaque cabinet a sa méthodologie, son plan pour “transformer la DSI”. Je n’ai jamais rencontré de situations où les pratiques imposées ont suscité de l’adoption. J’ai la conviction que l’adoption de nouvelles pratiques s’effectue de façon bottom up. Elles sont acquises avec des projets métiers construits différemment, et adoptées car elles apportent de la valeur ajoutée, visiblement et rapidement.
Comment s’y prendre ?
Loin de proposer une réponse toute faite, je vous propose plutôt quelques pistes de réflexion.
Avancer par niveau de maturité
Pour accélérer leur modernisation, les DSI doivent avancer de façon cohérente sur 3 axes de maturité :
- Modernisation des composants sur l’axe technologique
- Sortir des solutions monolithiques
- Utiliser des nouvelles technologies standard du marché
- Repenser leurs architectures existantes pour intégrer les services managés d’une plateforme cloud
- Modernisation des pratiques d’équipe sur l’axe humain
- Généraliser les pratiques d’industrialisation
- Renforcer l’observabilité
- Piloter les projets par la mesure systématique
- Adopter une démarche produits avec des cycles de vie projet infini
- Modernisation des organisations “axe IT-as-a-Service”
- Clarifier les périmètres des équipes
- Exposer les services des équipes DSI “As-a-Service”
Faire un All-in sur la plateforme AWS
Les opérations de migration à l’échelle, longtemps décriées par la communauté, se relèvent d’excellents vecteurs de modernisation, même dans un programme séquençant migration et modernisation. Les outils pour moderniser son parc deviennent immédiatement accessibles.
Migrer dans un temps court permet d’atteindre plus rapidement le point de bascule qui accélère la légitimité dans l’organisation des pratiques émergentes autour des architectures modernes, scalables et adaptées aux usages métiers.
Approche bottom-up
Nos propres expériences en industrialisation et modernisation nous ont naturellement fait converger vers les capacités proposées par le livre “Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations”.
Basé sur des recherches sur plus de 2000 organisations à travers 20 000 sondages, Accelerate propose 24 bonnes pratiques pour accélérer la production logicielle en entreprise répartis en 5 thèmes :
- Capacités de livraison en continu
- Capacités d’architecture
- Capacités produits et process
- Lean management et monitoring
- Capacités culturelles
Loin des termes marketing on revient aux basiques pour aligner la production logicielle sur les besoins métiers, améliorer les interactions entre équipes tout en supprimant les attentes avec le self service et accélérer l’industrialisation avec des bonnes pratiques.
Approche top-down
Le top management doit être aligné, totalement convaincu et incarner ce changement. Les collaborateurs ne se lèvent pas le matin pour du time-to-market ou enrichir les actionnaires.
Par contre, une communication pédagogique pour expliquer comment les actions DSI améliorent le métier donne du sens aux actions des employés.
Learning
L’ensemble des collaborateurs doit être acculturé, formé. Les collaborateurs doivent retrouver une posture d’apprentissage continu. En analysant plus de 100 transformations d’entreprise, le Dr. John Kotter a démontré que l’adoption par les équipes est primordiale dans tout projet de transformation. Plus concrètement, pour qu’une transformation s’opère, il faut déployer par itération en favorisant l’intelligence collective jusqu’à l’atteinte du “tipping point” de 25%.
En effet, selon une étude de Penn’s Damon Centola, environ 25 % des personnes doivent prendre position avant qu’un changement social à grande échelle se produise. Ces programmes d’acculturation doivent mixer les trois formes d’apprentissage reconnus (formel, social et expérientiel) pour maximiser la rétention et la prolifération des savoirs.
Résilience
La crise du covid a poussé nombre de collaborateurs à se désengager, voir démissionner car leur emploi leur semblait vide de sens. Pourtant cette crise a également été un électrochoc pour les entreprises les poussant à se numériser, à adopter le télétravail, voire à remettre en question les modes d’organisation rigides et peu épanouissants.
Loin des plans de transformation et des réorganisations successives, charge aux DSI, de regarder en face leurs problèmes opérationnels et de créer des organisations “résilientes” qui, à leur niveau, vont s’adapter aux changements et au futur incertain.
Article initialement publié dans le hors-série reBirth, à télécharger ici.