Embauché il y a 2 ans pour digitaliser les process, Alexandre Aubry raconte tous les changements que cela a induit : transformation de l'organisation, de l'infrastructure matérielle et réseau, ouverture et décommissionnement progressif de l'ERP Cobol...
Nous avons assisté à la conférence client de l'entreprise Orange à Agile en Seine. Cet article vous propose de découvrir comment l'IA Gen devient déjà un atout incontournable chez certains clients.
Un bon mix d'indicateurs - des KPI classiques ainsi que des KPI personnalisés - devrait vous aider, à condition de respecter un principe essentiel : faites simple !
Plateformes : structurer et concevoir pour l'avenir
Avez-vous du mal à créer des équipes de plateformes efficaces ? Voulez-vous construire des plateformes qui répondent aux besoins de vos utilisateurs et qui s'adaptent au paysage évolutif du développement logiciel ? Ne cherchez pas plus loin !
Récemment, les plateformes ont fait couler beaucoup d'encre, et pour cause. L'essor de Kubernetes a conduit à la création de plateformes compliquées, et le marché des outils permettant de les gérer est en pleine expansion. Dans le même temps, certaines entreprises utilisent le terme pour commercialiser leurs produits, tandis que le livre Team Topologies a défini comment créer et gérer des équipes de plateforme. Cependant, les plateformes ne sont pas un concept nouveau. Dans cet article, nous allons explorer les principes de l'ingénierie des plateformes et discuter d'un modèle qui fonctionne bien pour l'architecture des plateformes en général.
Les principes de l'ingénierie des plateformes
Principe 1 : Les plateformes sont des couches
Le premier principe de l'ingénierie des plateformes est qu'il ne s'agit pas d'une seule plateforme, mais de couches de plateformes qui requièrent des connaissances spécialisées différentes. Cela signifie qu'il y a généralement de nombreuses équipes chargées des plateformes. Les couches de plateformes commencent au bas de l'échelle avec les choix matériels, tels que les architectures de processeurs et les fournisseurs à utiliser. La couche suivante est celle des systèmes d'exploitation, suivie par les langages, tels que Java ou Python. Ces trois couches requièrent des compétences différentes et sont susceptibles d'être détenues et configurées par des équipes différentes.
Principe 2 : les plateformes sont dynamiques
Le deuxième principe est que les plateformes sont dynamiques et évoluent avec le temps. Elles tendent à se déplacer "vers le haut de la pile" à mesure qu'elles ajoutent des fonctionnalités et se débarrassent de celles qui sont reprises par des plateformes de niveau inférieur. Cela signifie que les couches de la plateforme sont en constante évolution et nécessitent une attention permanente pour garantir leur efficacité.
Principe 3 : l'interface doit être pilotée par l'utilisateur
Le troisième principe est que l'interface d'une plateforme doit être pilotée par les utilisateurs de la plateforme. L'équipe chargée de la plateforme doit comprendre un chef de produit, ou le chef d'équipe doit remplir cette fonction. Elle doit disposer d'une feuille de route et de mécanismes permettant de hiérarchiser les demandes entrantes.
Principe 4 : construire des plateformes internes et externes
Le quatrième principe est qu'il convient d'établir une distinction claire entre la construction de plateformes internes optimisées pour évoluer rapidement afin de répondre à des besoins commerciaux spécifiques et la construction de plateformes externes optimisées pour une stabilité à long terme, où vous ne savez peut-être pas de qui ou quoi dépend de la plateforme et ne pouvez pas toujours leur demander d'évoluer avec vous.
Comment créer des équipes de plateformes efficaces
La création d'équipes efficaces est essentielle à la mise en place de plateformes performantes. Voici quelques étapes à suivre, qui devraient aider à appliquer les principes énoncés ci-dessus :
Identifier les couches de la plateforme et les équipes responsables de chaque couche.
Attribuer un chef de produit ou un chef d'équipe à chaque équipe.
Veiller à ce que chaque équipe dispose d'une feuille de route et de mécanismes permettant de hiérarchiser les demandes entrantes.
Réviser régulièrement l'architecture de la plateforme pour s'assurer qu'elle reste efficace.
Maintenir une communication ouverte entre les équipes de la plateforme et les utilisateurs de la plateforme.
Les plateformes sont essentielles au développement de logiciels modernes, mais les concevoir et les gérer efficacement est une tâche complexe. En suivant les principes de l'ingénierie de plateforme et en créant des équipes de plateforme efficaces, vous pouvez construire des plateformes qui répondent aux besoins de vos utilisateurs et s'adaptent à l'évolution du paysage du développement logiciel.