Le Platform engineering, ou l’Ingénierie de plateformes, est une approche qui vise à optimiser le travail des développeurs en fournissant des outils, des services et des processus. Il s’agit de faciliter et d’accélérer le développement de logiciels en mettant l’accent sur l’agilité, les équipes et les pipelines DevOps. Cette méthode émerge dans un contexte où les développeurs consacrent une faible part de leur temps à l’écriture du code, ce qui soulève des questions quant à l’efficacité des processus de développement, actuellement utilisés en entreprise, pour la productivité.
L’ingénierie de plateforme adopte une vision holistique des développeurs et des environnements dans lesquels ils travaillent et établit des pratiques autour des plateformes internes de développement (IDP). Les IDP sont, à leur tour, définies autour de l’amélioration de l’expérience des développeurs (DevEx). L’ingénierie des plateformes est complémentaire de DevSecOps, et les deux pratiques partagent de nombreux objectifs, tels que l’amélioration de la productivité des développeurs et le renforcement de la sécurité. Cependant, l’ingénierie de plateforme se concentre davantage sur les plateformes internes de développement et sur l’amélioration de l’expérience des développeurs, tandis que DevOps se concentre davantage sur la collaboration et la communication entre les équipes de développement et d’exploitation afin de fournir des logiciels plus rapidement et de manière plus fiable.
Les cinq principaux stimulants de l’adoption du platform engineering
CloudBees, plateforme de Software Delivery pour les entreprises, révèle dans une récente étude, portant sur le platform engineering, que celui-ci connaît un succès grandissant dans les équipes IT, devenant progressivement une pratique recommandée pour les développeurs. Ainsi, 83 % des sondés ont adopté le platform engineering ou sont en phase d’implémentation. Les données de l’enquête montrent des niveaux significatifs d’adoption ou de planification du platform engineering, avec 20 % d’implémentation complète, 33 % en cours, 11 % ayant récemment lancé le processus. Parmi les répondants, 19 % déclarent être en phase de planification, et 17 % déclarent n’avoir aucun projet de ce type.L’enquête indique que la place du platform engineering au sein d’une organisation varie, mais qu’elle est le plus souvent placée au sein de l’ingénierie cloud (30 %) et des infrastructures (25 %). Le développement (20 %), les services partagés (13 %) et les opérations (13 %) sont également des options viables.
Pratiquement tous les bénéfices attendus de l’ingénierie des plateformes, et jugés les plus importants par les répondants, sont liés au DevEx et à l’amélioration de la fluidité des processus pour augmenter la productivité des développeurs. Ils comprennent la productivité des développeurs (21 %) ; la mise en œuvre d’un pipeline d’intégration continue et de livraison continue, CI/CD, à 20 % ; la normalisation des outils et des processus (20 %), et l’amélioration de la sécurité (20 %). L’infrastructure en tant que code arrive légèrement derrière, avec 19 % de réponses.
De nouveaux modèles de déploiement et applications vont émerger
Les trois objectifs les mieux classés sont le mode de consommation de la plateforme en libre-service (29 %), la simplicité d’adoption (25 %) et la réponse aux besoins dev (20 %). Enfin, les métriques adoptées pour les équipes d’ingénierie de plateforme vont de la productivité des développeurs (la mesure la mieux classée) à l’atteinte des KPI DevOps internes, au contrôle des coûts, ainsi que la réduction de la prolifération des outils et la simplification de l’environnement, et enfin la sécurité et l’amélioration de la stabilité. Ces indicateurs de succès classent la productivité des développeurs en première position (23 %), suivie par l’atteinte des KPI internes (19 %), le contrôle des coûts (16 %), et la réduction de la multiplication des outils (13 %).L’étude conclut qu’il est important que les équipes de plateforme se préparent à des changements continus dans les prochains mois et années. De nouveaux modèles de déploiement et de nouvelles applications continueront d’émerger. Le dernier exemple en date est l’IA générative et le ML. « L’IA, affirment les rédacteurs du rapport, peut être et sera appliquée à l’amélioration de l’ingénierie des plateformes. Toutefois, comme tous les autres aspects de la création, de l’exploitation et de la sécurisation des logiciels et des systèmes, l’IA/ML et l’IA générative s’accompagnent de défis ».
Le premier est la gestion de multiples grands ensembles de données et de modèles, l’élément vital des algorithmes de ML et des grands modèles de langage (LLM) de l’IA. À l’instar des systèmes experts spécialisés, les LLM spécifiques à un domaine, formés sur les données internes de l’entreprise, se révéleront particulièrement importants pour l’adoption de l’IA générative, à condition que la confidentialité et la sécurité des données soient établies.