Il s’agit notamment du budget et de la dotation, de la gestion de l’étendue et de la mesure du retour sur investissement.
Volontaire
Des fonctionnalités individuelles peuvent exister pour fournir des bases courantes pour les fonctionnalités courantes ou critiques. Ces capacités sont créées et maintenues hors de nécessité plutôt que planifiées et intentionnellement financées.
Ces fonctionnalités sont créées et gérées par les personnes affectées temporairement ou volontairement ; aucun financement central ni dotation n’est intentionnellement alloué à ces fonds. Ils dépendent des exigences tactiques actuelles de leurs utilisateurs. Les décisions sont basées sur des données incomplètes ou non pertinentes, ce qui entraîne des priorités erronées.
Le leadership réagit principalement aux crises plutôt que de conduire de manière proactive au changement, ce qui entraîne une collaboration fragmentée et des inefficacités entre les équipes. L’accent est mis sur la sensibilisation au besoin d’alignement stratégique et de prise de décision pilotée par les données.
Allocation de budget et de personnes pour maintenir des fonctionnalités courantes : les développeurs individuels ou les équipes prennent la responsabilité de répondre aux exigences et capacités techniques urgentes. Ce n’est pas toujours coûteux : les développeurs prennent ce travail en plus des responsabilités actuelles.
Gestion de la portée : les ingénieurs se concentrent sur la satisfaction des besoins dans le contexte ou la portée spécifiques où le besoin s'est manifesté, avec peu de partage de la solution vers un contexte plus large.
Démonstration du retour sur investissement : mesurée par la façon dont l’individu ou l’équipe a résolu le problème spécifique et l’effet sur le travail de son projet principal.
Contributions ad hoc
À mesure que l’organisation augmente, les défis techniques récurrents tels que le provisionnement d’infrastructure incohérent, les pratiques de sécurité fragmentées et les goulots d’étranglement dans les pipelines de déploiement deviennent plus apparents. Ces défis entraînent souvent des retards, des temps d’arrêt accrus et des inefficacités qui entravent la vitesse globale et la fiabilité de la livraison de logiciels. En réponse, l’organisation commence à former des équipes dédiées chargées de traiter systématiquement ces problèmes. Toutefois, ces efforts restent largement réactifs, en se concentrant sur la mise à jour corrective des problèmes immédiats plutôt que sur leur prévention proactive.
L’étendue du travail de ces équipes est souvent limitée à des préoccupations spécifiques, comme l’amélioration d’un processus de déploiement particulier ou la normalisation d’un sous-ensemble de protocoles de sécurité, sans une approche holistique de l’amélioration à l’échelle de la plateforme.
Le leadership commence à résoudre les inefficacités en favorisant la collaboration de base et en introduisant des métriques, mais les efforts restent réactifs et en silo, avec une autonomisation limitée au sein de l’organisation.
Allocation de budget et de personnes pour maintenir des fonctionnalités courantes : Des équipes sont créées pour travailler sur des enjeux transversaux clés, souvent réactifs.
Gestion de l’étendue : l’étendue est limitée à une préoccupation spécifique.
Démonstration du retour sur investissement : les améliorations sont mesurées dans les principales préoccupations croisées, telles que la taille des backlogs.
Mis en œuvre avec une équipe dédiée
Le budget et les personnes sont alloués pour le soutien continu aux personnes et aux ressources. Les personnes affectées sont chargées de fournir un ensemble de fonctionnalités couramment requises pour accélérer la livraison de logiciels. Souvent, ces équipes se concentrent sur la réponse aux exigences techniques réactives. Ils peuvent être appelés DevOps, Engineering Enablement, Developer Experience (DevEx ou DevX), Shared Tools, un Centre d’excellence, ou même Plateforme. Ils sont financés de manière centralisée et traités comme des centres de coûts.
Les équipes de plateforme sont désormais reconnues comme essentielles au succès de l’organisation, et il existe un effort pour mesurer et justifier leurs contributions. Toutefois, il se peut que l’accent soit encore mis sur les rendements immédiats plutôt que sur la croissance à long terme.
Le leadership favorise activement le travail d’équipe inter-fonctionnel et les pratiques DevOps initiales, mais lutte avec la mesure de la valeur de l’équipe de plateforme et l’alignement des solutions avec les besoins des utilisateurs, ce qui entraîne des défis dans la justification des investissements et la maintenance de l’efficacité.
Allocation de budget et de personnes pour maintenir des capacités courantes : les équipes centrales sont financées en fonction des connaissances techniques existantes afin d’accélérer la livraison de logiciels.
Gestion de l’étendue : l’étendue est large et superficielle. L’équipe crée des solutions qui tentent de traiter le plus grand dénominateur commun dans toutes les équipes. L’équipe centrale se concentre sur la compréhension des besoins courants de toutes les équipes et ne recherche pas de moyens de configurer ou d’ajuster les solutions à ces besoins.
Démonstration du retour sur investissement : les améliorations sont mesurées en vitesse de livraison.
Scalable en tant que produit
L’investissement dans les plateformes internes et leurs capacités est similaire à l’investissement dans les produits sortants et les flux de valeur d’une entreprise : en fonction de la valeur qu’ils sont censés fournir à leurs clients. La gestion des produits et l’expérience utilisateur sont explicitement prises en compte et investies. Un système de rétrofacturation peut être utilisé pour refléter l’impact des plateformes sur les propres flux de valeur et produits directs de leurs clients. L’entreprise alloue des fonds et du personnel aux initiatives appropriées en utilisant des indicateurs de performance pilotés par les données et des boucles de commentaires. Les équipes de plateforme peuvent finalement optimiser l’entreprise elle-même et contribuer à une rentabilité accrue.
À ce niveau, nous observons un changement culturel important au sein de l’organisation, où les développeurs sont reconnus et traités comme des clients appréciés. Le leadership met l’accent sur une culture d’empathie et de croissance, conduisant à une approche axée sur les produits et encourageant l’amélioration continue, mais doivent s’assurer que ces valeurs sont profondément incorporées dans l’organisation pour obtenir un impact durable.
Allocation de budget et de personnes pour maintenir des fonctionnalités courantes : une équipe de plateforme centrale est composée de membres du personnel et gérée comme d’autres équipes de produits. Les rôles incluent le développement, la gestion des produits, la conception, la recherche et le contenu. Les équipes sont financées en fonction de la feuille de route.
Étendue de gestion : l’équipe produit des feuilles de route pour décrire leurs plans et l’impact attendu sur l’organisation. L’équipe de plateforme s’engage avec les équipes d’ingénierie pour collecter les exigences, identifier de nouvelles opportunités, etc. Les ingénieurs se concentrent sur la réalisation des besoins de toutes les équipes de développement au sein de l’organisation.
Démonstration du retour sur investissement : les améliorations sont mesurées dans la satisfaction des développeurs.
Optimisé avec un écosystème activé
Les équipes de plateforme trouvent des moyens d’accroître l’efficacité et l’efficacité à l’échelle de l’organisation au-delà des fonctionnalités de base. Les responsables de la plateforme de base s’efforcent intentionnellement d’optimiser le délai de mise sur le marché pour les nouveaux produits, de réduire les coûts au sein de l’entreprise, d’activer une gouvernance et une conformité efficaces pour les nouveaux services, de mettre à l’échelle rapidement et facilement des charges de travail et d’effectuer d’autres exigences croisées. Ces principaux mainteneurs se concentrent sur l’activation des spécialistes des capacités pour intégrer en toute transparence leurs exigences et leurs offres dans des parties existantes et nouvelles de plateformes. En outre, l’organisation concentre les personnes et les ressources des domaines spécialisés tels que la sécurité, les performances et la qualité sur l’engagement avec les infrastructures de plateforme fournies pour introduire des fonctionnalités avancées qui peuvent permettre aux équipes de produits d’accélérer leur adhésion aux objectifs de l’entreprise sans dépendre d’un backlog d’équipe centralisé.
Le leadership favorise l’autonomie et la responsabilité de l’équipe, encourageant l’innovation tout en équilibrant la gouvernance, en mettant l’accent sur le maintien de la pertinence et de l’efficacité de la plateforme dans un environnement rapidement changeant.
Allocation de budget et de personnes pour maintenir des fonctionnalités courantes : une équipe de plateforme centrale est composée et gérée comme d’autres équipes de produits, mais un financement plus important est fourni pour permettre des contributions dans l’ensemble de l’organisation. Les équipes d’ingénierie et de non-ingénierie ont un financement explicite pour pouvoir contribuer à la plateforme.
Étendue de gestion : les ingénieurs se concentrent sur l’activation des contributions de plateforme pour permettre un partage rapide des connaissances au sein de l’organisation.
Démonstration du retour sur investissement : les améliorations sont mesurées dans la satisfaction des développeurs.