Le Mob Programming par Woody Zuill - Interview
Interview de Woody Zuill qui animera une Masterclass Mob Programming avec OCTO Academy le 28 mai prochain à Paris.
[Traduction par OCTO - english version here]
Vous faites du Mob programming et formez des équipes à cette pratique depuis des années. Comment êtes-vous venu à cette façon de travailler ?
Woody Zuill – Le Mob programming a émergé au sein d’une équipe centrée sur l’apprentissage des méthodes agiles appliquées au développement logiciel. Entre autres choses, l'équipe voulait améliorer sa capacité à bien travailler ensemble. Pendant six mois, nous avons étudié et pratiqué les techniques de clean code en utilisant le Coding Dojo appelé "Randori". Dans ce dojo, quelques personnes se rassemblent et se présentent chacune à leur tour devant l'assemblée pour écrire un morceau de code.
Nous travaillions alors sur un exercice de code où chaque membre de l’équipe prenait tour à tour le clavier (« the driver ») pendant que l’un des autres membres de l’équipe le guidait ( « the navigator »). Nous suivions une ligne simple : pour qu’une idée passe de la tête de quelqu'un à l'ordinateur, elle devait passer par les mains de quelqu'un d'autre (le crédit de cette formule revient à Llewellyn Falco). Nous aimions cette façon de faire, et nous devenions de plus en plus doués dans les différentes techniques nécessaires pour bien faire ce travail : exprimer nos idées, écouter et suivre les conseils du navigateur.
Un jour, l’un d’entre nous a demandé au reste de l'équipe de se pencher sur un code difficile afin de l’aider à comprendre comment procéder. Nous avons naturellement commencé à travailler ensemble sur le code en utilisant les mêmes techniques que notre Dojo Coding. Au cours de cette session, nous avons tous remarqué que nous apprenions beaucoup, que nous abattions beaucoup de travail et que nous nous amusions à le faire. Nous avons décidé de continuer à travailler de cette façon le lendemain - et nous n'avons pas arrêté depuis. Nous avons littéralement travaillé de cette façon tous les jours au cours des six dernières années.
Quels sont les plus grands bénéfices à travailler dans une équipe Mob Programming ?
Woody Zuill – Il se passe plein de bonnes choses, mais la plus évidente est que nous étions en mesure de travailler rapidement sur presque n’importe quelle activité de code, tout le monde travaillant ensemble. Il était très rare que nous soyons bloqués à cause de questions sans réponse, de compétences ou de connaissances manquantes. Nous trouvions que nous réalisions un plus grand volume de travail. On constatait également que la qualité de notre travail augmentait considérablement parce que toute l’équipe examinait le code et suggérait des améliorations au fur et à mesure que l’on travaillait. Le Mob Programming offrait par ailleurs un environnement pour un apprentissage rapide dans lequel nous apprenions les uns des autres et développions nos capacités tout au long de la journée.
Quels sont les principaux obstacles que vous rencontrez quand une équipe se convertit au Mob Programming ? Et comment les surmontez-vous ?
Woody Zuill - Pour être en mesure de travailler en équipe Mob Programming, il est important d'apprendre à bien travailler avec les autres. La plupart des développeurs ont travaillé seuls pendant toute leur carrière, il leur faut donc beaucoup d'efforts pour acquérir les compétences nécessaires pour un travail d'équipe soutenu et continu. Nous devons développer des capacités d’écoute et c’est parfois difficile pour certains d’entre nous. En même temps, nous devons développer notre capacité à communiquer et à partager nos idées tout en étant prêts à essayer les idées des autres membres de l'équipe.
L'absence de ces compétences et de compétences connexes peut constituer un problème pour une équipe. Prêter attention à la façon dont nous interagissons les uns avec les autres, et travailler à améliorer nos compétences d'écoute et de travail d'équipe prend du temps. Nous avons utilisé un certain nombre de techniques, et peut-être le plus utile a été de suivre la directive selon laquelle quand on est le Pilote (la personne au clavier), on suit simplement les instructions du Navigateur. Une autre technique que nous utilisons est d'être prêt à essayer les idées des autres. Nous apprenons en faisant, plutôt que de simplement discuter de nos idées.
Si vous vouliez faire en sorte que toutes les équipes de développement d'une entreprise travaillent en Mob Programming, comment vous y prendriez-vous ?
Woody Zuill - Il est important pour moi que cette façon de travailler soit entièrement volontaire - donc j'éviterais d'obliger toutes les équipes à travailler de cette façon. Le Mob Programming n'est pas une silver bullet, et cette façon de travailler n’est pas adaptée à tout le monde. Si on peut y arriver, c'est une autre option qui s’ajoute à la programmation en solo et au pair programming.
Pour ceux qui sont intéressés, je leur suggère de se réunir régulièrement et fréquemment pour mettre en pratique les techniques et les compétences nécessaires. Pratiquer d'abord sur quelques exercices de code permet d'apprendre à travailler ensemble sans la pression du travail. Au cours de ces sessions, nous nous concentrons sur l'amélioration de nos compétences d'écoute et de travail en équipe. Après quelques séances de pratique, il peut être utile de travailler sur des corrections de bugs simples ou de petites “story” pour s'habituer au flux à travailler de cette manière. Enfin, après chaque séance, revoir comment les choses se sont passées et chercher des moyens de s'améliorer.
Vous souhaitez participer à la Masterclass avec Woody Zuill ? Informations et inscription sur le site OCTO Academy