- PagerDuty /
- Blog /
- Meilleures pratiques et informations /
- 3 façons de créer une culture d'ingénierie exceptionnelle
Blog
3 façons de créer une culture d'ingénierie exceptionnelle
Depuis que j'ai rejoint PagerDuty en tant que coach Agile, j'ai appris à apprécier la culture d'ingénierie qui y a été encouragée. Pour partager ce qui a fonctionné pour nous (et comment nous prévoyons de l'entretenir à mesure que nous continuons à nous développer), voici trois façons de créer une culture d'ingénierie exceptionnelle.
1. Donnez du pouvoir à vos équipes
William McKnight, ancien président et directeur général de 3M, a déclaré à plusieurs reprises : « Embauchez de bonnes personnes et laissez-les tranquilles. » La culture d'ingénierie de PagerDuty est exemplaire de cette philosophie. Les équipes s'auto-organisent et contrôlent en grande partie leur propre destin. Chaque équipe est propriétaire de bout en bout d'un élément de l'écosystème PagerDuty . La direction fournit des conseils et aligne l'équipe sur un problème à résoudre. L'équipe est chargée de trouver comment le résoudre.
Nos équipes d'ingénierie suivent une véritable démarche DevOps « vous le codez, vous en êtes propriétaire ' approche. Cela commence par un plan stratégique qui relie les objectifs de l'entreprise à la feuille de route du produit via la mise en œuvre, le déploiement et la maintenance de leur code et de leur infrastructure en production. Nous n'avons pas toujours travaillé de cette façon, mais après avoir grandi 3x au cours des 3 dernières années , nous avons beaucoup appris.
Bien que toutes les équipes suivent les principes Agile, certaines choisissent Scrum , d'autres Kanban, pour gérer leur travail au quotidien. Au fur et à mesure qu'une équipe évolue et que son travail change, elle peut choisir une manière différente de faire les choses. Chaque équipe est soutenue par un Product Owner et un Agile Coach. Le Product Owner collabore avec l'équipe pour développer une feuille de route et un backlog produit. Le Agile Coach guide l'équipe sur les principes Agile et fournit un soutien en cas d'obstacles à la capacité de l'équipe à s'auto-organiser.
Chez PagerDuty, nous n'avons pas encore complètement compris le concept de responsabilisation des équipes. Nous cherchons toujours le juste équilibre entre les conseils de la direction et la responsabilisation des équipes. Parfois, le pendule oscille trop loin dans une direction. Mais nous en sommes au moins conscients lorsque cela se produit et nous travaillons à ramener l'organisation à un bon équilibre.
2. Encouragez l'innovation avec les Hack Days
Chaque mois, les ingénieurs logiciels ont la possibilité de créer et de démontrer quelque chose dont PagerDuty a besoin (ou du moins quelque chose qui les passionne et qu'ils peuvent rapporter à PagerDuty à partir de cette expérience). Ils ont une liberté totale sur ce sur quoi ils travaillent, avec qui ils travaillent et comment ils le font. Ensuite, les prototypes gagnants peuvent être sélectionnés pour être utilisés comme projets à part entière, les faisant passer du concept aux mains des clients. Les Hack Days sont l'une des nombreuses façons dont nous encourageons l'innovation ascendante.
Parmi les projets réussis qui ont débuté sous forme de journées de piratage, citons notre application mobile, un annuaire et un localisateur d'employés internes appelé Dutonium, ainsi que le Transformateur d'événements personnalisé pour n'en citer que quelques-unes. Il existe également de nombreuses innovations étrangement utiles : pyjamas qui vibrent et s'allument lorsque vous êtes appelé, un tourelle qui tire une fléchette en mousse à la personne de garde chaque fois qu'il y a une alerte PagerDuty , ou pour vous aider à les « attraper tous » Pokémon Go .
Cependant, le modèle de démarrage de projet basé sur les hack days peut être poussé trop loin, et nous avons appris que les hack days ne conviennent pas à tous les types de projets. L'état d'esprit qui prévaut lors des hack days est généralement celui de bricoler quelque chose, donc lorsqu'il s'agit d'éléments critiques de l'infrastructure, ce n'est pas le meilleur état d'esprit à adopter. Au fur et à mesure que nous grandissons, nous devons en être constamment conscients et ne pas imposer des projets critiques sous forme de hack days juste pour les accélérer.
3. Favoriser la collaboration avec les communautés
La collaboration est soutenue par deux types de communautés au sein de l'ingénierie : les tribus et les guildes (toutes deux ont été popularisées par Le modèle d'équipe de Spotify ). Certaines équipes de PagerDuty ont des besoins clients communs et un objectif commun. Ces équipes se sont regroupées et ont formé Tribus pour permettre une synergie entre les équipes. Les tribus combinent ici des réunions récurrentes lorsque cela est logique. Par exemple, une tribu d'équipes organisera une revue tribale au lieu de trois revues d'équipe distinctes. Nous avons vu les tribus ajouter une valeur significative en encourageant le partage des connaissances, le partage du code/du travail opérationnel et en alignant les équipes sur un ensemble de priorités et d'objectifs plutôt que de laisser chaque équipe fonctionner en silo.
D'autres communautés au sein de l'ingénierie, appelées Guildes , Les guildes sont formées de groupes de personnes partageant les mêmes idées et les mêmes intérêts. Les guildes se sont révélées extrêmement utiles pour intégrer et partager des connaissances précieuses, en particulier dans les domaines qui ont été un point sensible pour les équipes. Par exemple, The Ancient Guardians of the API est une guilde créée « pour protéger l'intégrité conceptuelle des API PagerDuty et diffuser les meilleures pratiques API à l'organisation d'ingénierie ». Nous avons également constaté que les guildes étaient utiles pour ajouter de la structure à nos événements d'ingénierie récurrents existants, comme le soutien de la guilde du chaos à notre Vendredi d'échec événements et autres initiatives d'ingénierie du chaos.
Les tribus et les guildes ont créé un espace plus collaboratif chez PagerDuty. Mais à mesure que les équipes et leur travail évoluent, nous avons appris qu'une tribu ou une guilde qui apportait autrefois de la valeur peut avoir des rendements décroissants. Par exemple, si les équipes ne rencontrent plus le même problème technique que la guilde était censée résoudre, il peut être judicieux de la réduire. La même règle s'applique pour une tribu dans laquelle un produit ou un espace technique change et fait en sorte que les équipes individuelles n'ont plus d'objectif commun. Nous trouvons bénéfique de réévaluer continuellement la valeur que chaque tribu ou guilde apporte.
Maintenir une culture d'ingénierie exceptionnelle
Pour maintenir cette culture au sein de l’ingénierie, il faut continuer à se concentrer sur le recrutement d’ingénieurs logiciels qui correspondent aux attentes (chez PagerDuty, nous avons une politique de recrutement stricte « pas de connards »). Il faut continuellement rechercher un équilibre sain entre l’autonomie de l’équipe et l’alignement de la direction. Et surtout, les choses doivent rester amusantes. Ces trois ingrédients créent une recette pour une culture d’ingénierie qui continuera d’être formidable pour les années à venir.