Présentation

Effectué

Dans ce module, vous allez découvrir comment l’ingénierie de plateforme facilite le travail des équipes de développement à travers la création et l'exploitation des plateformes internes pour développeurs (IDP). Vous découvrirez comment Microsoft Dev Box s’intègre dans cet écosystème qui fournit un environnement de station de travail de développeur libre-service évolutif aligné sur les principes d’ingénierie de plateforme.

Qu’est-ce que l’ingénierie de plateforme ?

L’ingénierie de plateforme est une discipline qui se concentre sur la création et la maintenance des systèmes et services fondamentaux utilisés par les équipes de développement pour fournir des logiciels. Il met l’accent sur la sécurité, la cohérence, la réutilisation et le libre-service, créant un environnement à haute vitesse où les développeurs peuvent se concentrer sur la compréhension des exigences métier et l’écriture de code plutôt que de déployer, de gérer et de gérer l’infrastructure. Dans la plupart des organisations, l’équipe informatique joue actuellement le double rôle d’une équipe d’administration informatique et d’ingénierie de plateforme, si l’équipe d’ingénierie de plateforme ou les rôles associés n’existe pas.

Une équipe d’ingénierie de plateforme crée une « plateforme » peut être un hybride de produits internes et externes qui intègrent des outils, des services et des flux de travail dans une expérience utilisateur cohérente. Cette plateforme extrait les tâches de configuration répétitives et de bas niveau tout en fournissant des environnements standardisés et sécurisés pour la création, le test et le déploiement d’applications.

Les avantages de l’ingénierie de plateforme sont les suivants :

  • Permettre aux développeurs d’utiliser des outils et des environnements qu’ils peuvent contrôler indépendamment.
  • Réduction de la charge cognitive en standardisant et en automatisant les tâches manuelles et opérationnelles.
  • Amélioration de la cohérence et de la conformité entre les équipes et les projets.

Présentation des plateformes de développement internes

Une plateforme de développement interne (IDP) est le résultat d’un effort d’ingénierie de plateforme. Il ne s’agit pas d’un seul outil ou système, mais plutôt d’une suite organisée d’outils, de services et de flux de travail mis à la disposition des développeurs.

Considérez une plateforme interne de développement comme une interface libre-service que les développeurs utilisent pour approvisionner des ressources, déployer du code, surveiller des applications et gérer les configurations dans les limites approuvées.

Les composants clés incluent généralement :

  • Infrastructure et modèles standardisés
  • Infrastructure as Code (IaC) pour définir et déployer l’infrastructure cloud de manière cohérente.
  • Environnement de runtime et de déploiement
  • Interfaces libre-service telles qu’un portail de développement et une interface CLI ou des API
  • Pipelines CI/CD pour automatiser les compilations, les tests et les déploiements.
  • Outils de sécurité et de conformité (gestion des identités, gestion des secrets et stratégies)
  • Accès et gouvernance basés sur les rôles
  • Observabilité et outils d'observabilité et de surveillance pour les journaux de logs, les indicateurs et les traces.

La majorité de ceux-ci sont des composants de Microsoft Dev Box, ce qui en fait un choix premium comme plateforme de développement intégrée pour une organisation.

Microsoft Dev Box dans le cadre de votre plateforme de développement intégré

Microsoft Dev Box est un service managé qui fournit des stations de travail sécurisées hébergées dans le cloud entièrement configurées et prêtes pour le développement. Ces machines virtuelles sont conçues pour s’adapter en toute transparence aux flux de travail IDP.

Voici comment Dev Box s’aligne sur les objectifs d’ingénierie de plateforme :

  • Approvisionnement en libre-service : les développeurs peuvent déployer leurs propres boîtes de développement à partir d’un portail sans attendre l’informatique sur une infrastructure standardisée
  • Environnements personnalisables dans l’étendue du projet pour différents projets et équipes
  • Environnements préconfigurés et standardisés : Teams peut créer et gérer des images de base avec des kits SDK, des dépendances et des outils préinstallés.
  • Sécurité et gouvernance : Dev Box s’intègre à Microsoft Entra ID (anciennement Azure AD), Microsoft Intune et contrôle d’accès en fonction du rôle pour garantir la conformité.
  • Prise en charge de l’interface CLI et de l’API : les machines Dev Boxes peuvent être déployées et gérées via des API, ce qui les rend scriptables et automatisables pour les équipes de plateforme qui incorporent Dev Box dans des flux de travail plus volumineux.

Avantages stratégiques de l’utilisation de Dev Box dans un modèle d’ingénierie de plateforme

L’intégration de Dev Box dans votre stratégie de plateforme offre plusieurs avantages :

  • Intégration accélérée : les nouveaux employés peuvent obtenir un environnement prêt pour le développement en quelques minutes, ce qui réduit les délais d’installation.
  • Environnements standardisés : les développeurs travaillent dans des environnements cohérents, ce qui réduit les problèmes « fonctionne sur mon ordinateur ».
  • Sécuriser l’accès et le contrôle : les zones de développement peuvent être étroitement contrôlées à l’aide de contrôles Azure et Microsoft 365.
  • Rentabilité : les boîtes de développement peuvent être arrêtées ou supprimées lorsqu’elles ne sont pas utilisées, pour optimiser les dépenses liées au cloud.
Avantage Description
Intégration plus rapide Les nouveaux développeurs peuvent faire tourner des environnements de développement entièrement chargés en quelques minutes.
Sécurité et gouvernance La gestion centralisée des identités, l’accès en fonction du rôle et les stratégies garantissent que les machines Dev Box répondent aux normes de conformité.
Cohérence Tous les membres de l’équipe utilisent des outils et des environnements standardisés.
Intégration Dev Box s’intègre aux flux de travail IDP (CI/CD, Git, monitoring).
Expérience développeur Les développeurs bénéficient d’une flexibilité avec la prise en charge multimonitor, l’accès à distance, la résolution des problèmes de do it yourself (DIY) et les droits d’administrateur complets (si activés).