Agile Tour 2017

En fin d’année 2017, j’ai choisi d’assister à l’agile tour de Lille, 2 jours de conférences, avec beaucoup de speaker et d’ateliers. Plus de 400 participants et une équipe d’organisation de choc !

 

Damien Beaufils

Comment être Tech Lead dans une pizza team XXL sans finir sous l’eau ?

Excellent retour d’expérience de Damien, reprenant la définition du Tech Leader : étant à la fois formateur, facilitateur, expert et coach. Tout en évitant les postures de sauveur, de super héros ou de dictateur.

Ce rôle polyvalent est de plus en plus central dans les équipes de développement, il permet à la fois de sécuriser la qualité technique du logiciel, tout en cherchant le développement de l’excellence dans l’équipe.

J’ai particulièrement aimé l’approche de Damien, à la fois patient, pédagogue et participatif. Il semble avoir été très vigilant à ne pas se faire déborder sur son temps de travail, utilisant la délégation, la responsabilisation de l’équipe, afin de pouvoir mener sa mission et conserver 30 % de son temps pour coder, pas évident dans une équipe de 15 personnes.

Les idées clefs à retenir :

  • Rétro Tech :
    • 1 post-it par question/remarque
    • Traité une fois par semaine durant 1heure, timebox.
  • Table de la loi :
    • Management visuel avec affichage des règles techniques sur un board
    • 1 règle par post-it, format condensé
    • Revue chaque semaine par l’équipe en rétro Tech
  • Revue de code :
    • Obligatoire et bloquante dans le processus de delivery
    • Permettre le partage / connaissance du code
    • Contrôle et alimentation des règles de la « table de la loi »
  • Pair / Mob Programming
    • Systématisé lors de la modification de code legacy
  • One to One technique
    • Le Tech Leader s’entretient 30 minutes avec chaque membre de l’équipe par itération : faciliter la progression et le feedback sur les aspects techniques.
    • Mentoring sur les pratiques Craftsmanship

Le seul point d’attention, pour moi, reste la bonne répartition des rôles entre ce Tech Lead mentor et le manager, notamment dans l’encadrement des développeurs.

A noter que cette conférence est disponible ici : https://youtu.be/eEUfsjYj3rw présentée lors des Devoxx France, à voir !

agile-tour-1

Johan Bonneau

Mon premier train Safe

Durant cet agile tour, plusieurs speakers sont revenus sur les différents Frameworks d’agilité à échelle SAFE, DAD, LESS, … les retours sont assez mitigés, ces Frameworks semblent imposants, complexes et énergivores. Ils peuvent apporter des solutions sur des grosses équipes (+50personnes) mais les mettre en œuvres n’est pas anodin ! En tout cas, ils ne doivent pas empêcher de réfléchir !

L’une de ces conférences était celle de Johan Bonneau, Scrum Master dans un programme pour une banque en ligne. 20 mois de mission, 15 équipes, 8 livraisons majeures (loin d’être des non-événements).

Cette présentation était très naturelle et sans tabou, ce que j’en retiens :

  • Utilisation des techniques de MMF, pour construire des incréments
    • Minimum Marketable Feature
  • Utilisation de Portfolio d’EPIC pour synchroniser les équipes
    • Avec ce découpage : EPIC / Feature / MMF / US
  • Organisation des équipes en Feature Team, plus qu’en Component Team
    • Organisation des équipes par domaine fonctionnel
    • Conserve certaines Component Teams pour des expertises fortes
  • Mise en œuvre de Flex Team
    • Equipe de réserve pouvant renforcer les points chauds
  • Synchronisation des équipes via le Train SAFE
    • Calendrier de Sprint avec les mêmes dates pour toutes les équipes
    • Train de 11 semaines, avec en préparation
      • 2 jours co-localisés pour préparer les 11 semaines
      • Création de Sprint Boards avec identification des dépendances
      • Vote de confiance : valider l’engagement des équipes dans la faisabilité
    • Dernière semaine réservée pour l’innovation libre
  • Mercato en début de train, afin de permettre la mobilité des Dev
  • Guild de Problem Solving avec utilisation de Kaizen afin traiter les problèmes inter-équipes

 

D’après Johan, SAFE fonctionne grâce au rôle clef de l’Agile Train Manager, manager jardinier, il protège les équipes et les laisse pousser. Il permet l’innovation, l’initiative tout en gérant les problèmes de delivery.

Mention spéciale pour le support très coloré et geek à souhait :

https://speakerdeck.com/zenigata/rex-mon-premier-train-safe

agile-tour-2

Laurent Nyffels

Mise en place de DevOps chez AXA France

Laurent nous a proposé un retour d’expérience sur les travaux de transformation dans la DSI d’AXA France. Voici la synthèse des grandes étapes des 7 dernières années :

2011 : adoption de l’agilité et internalisation massive des développeurs

2014 : adoption du Craftsmanship et début des travaux DevOps

2016 : réorganisation de la DSI sur le principe des Feature Teams (18 tribus / 1200 personnes)

2017 : chantier NPI : Nouvelles Pratiques d’Ingénierie (avec intégration de 200 OPS)

La difficulté étant de mener des chantiers de changement humain et de modernisation des outils d’ingénierie, sur 4 axes majeurs : agilité, Craftsmanship, ingénierie des tests, DevOps.

Voici les points remarquables présentés par Laurent :

  • Partage d’un backlog commun sous JIRA
    • Ajout des activités OPS au backlog des équipes DEV
  • Mise en œuvre des pratiques d’ingénierie :
    • Pair Programming
    • BDD, TDD, TU
    • Pull Request
    • Revue de code collective
  • Build continu, avec :
    • Analyse SONAR : mesure de la qualité du code
    • Analyse CheckMarx : recherche des failles de sécurité
  • Densification des pratiques de déploiement :
    • Release Automation
    • Infra As Code
    • GIT même pour les Ops (versioning des scripts)
  • Densification des travaux de Tests :
    • 3 amigos : intégration des problématiques de test au plus tôt
    • Stratégie de test par MMF
    • Pilotage par indicateur automatisé
  • Cloudification massive :
    • Azure et/ou AWS
    • provision des environnements de test puis destruction dès que plus nécessaire
  • Capacité de MEP à chaud :
    • Pattern Blue Green Deploy
  • Intensification du Monitoring :
    • Co construction des outils de monitoring
    • Alimentation du backlog DEV par les OPS
  • Mise en œuvre des KPI automatisés, sur l’ensemble de la chaine :
    • Lead Time et Cycle Time, notamment en intégrant le déploiement et les tests
    • Mesure de la fréquence de déploiement / mois
    • Pourcentage de déploiements défaillants (intg ; ctlq ; prod)
    • Mesure du stock d’anomalie
    • Mesure de la Dette technique (analyse Sonar)

La liste est longue !

On se doute, à travers les explications de Laurent, que tout ne s’est pas fait en un jour. Que les équipes techniques et métiers ont dû fortement négocier pour aménager plannings et investissements.

En tout cas, c’est particulièrement étonnant de trouver autant de modernité dans une DSI aussi grosse, et pour un acteur d’un domaine aussi conservateur que l’assurance.

agile-tour-3 agile-tour-4

Arnaud Huon

Recruter des développeurs : la fin de la quête du graal ?

Une des bonnes surprises également de cet agile tour a été la conférence d’Arnaud Huon, manager d’équipe de développement. Ayant moi-même été manager durant 6 ans, je comprends bien les problématiques partagées par Arnaud. J’ai trouvé son état d’esprit et les solutions en œuvre dans son entreprise très actuelles et adaptées.

Ses constats :

  • Le recrutement de développeurs/développeuses est devenu trop compliqués et couteux pour se permettre de les considérer comme des ressources périssables, que l’on jette une fois le projet terminé
  • En informatique, il n’y a pas de problème technique. La technique n’est pas un enjeu. Il y a des problèmes de communication, de cohésion et de formation.

Ses solutions :

  • Constituer des équipes avec des qualités humaines plus que purement technique :

Lors des entretiens Arnaud semble chercher des équipiers avec les qualités suivantes :

  • Communicant
  • Croyant (en vous, en votre projet)
  • Qui partage des convictions
  • Capable de se remettre en question et de prendre du recul
  • D’horizon divers

Bref, des personnes ayant le savoir-être plutôt que le savoir ou le savoir-faire.

  • Recruter :
    • Se faire connaitre et reconnaitre :
      • Blog, Conférence, Développer la notoriété de votre entreprise
      • Développer l’exemplarité de vos collaborateurs + cooptation responsable
    • Mener des approches directes ciblées et qualitatives
    • Evaluer les candidats avec un processus complet :
      • Coder en binomant
      • Exercice de mise en situation
      • Prendre le temps d’échanger

Agile Tour

  • Intégrer les nouveaux collaborateurs
    • Formation : Cycle de formation jusqu’à 1 mois
    • Mentoring – 30 minutes par semaine avec son manager opérationnel
    • Feed-Back et partage d’une vision claire
    • Pair Programming / Mob Programming

 

  • Garder ses développeurs/développeuses
    • Le salaire ne doit pas être un problème
    • Développer l’autonomie et la responsabilisation
    • Donner des perspectives
    • Préserver l’environnement de travail
    • Importance du rôle managérial

 

Arnaud conclut en rappelant l’importance de recruter des personnes et non des ressources. Ces personnes doivent s’épanouir et doivent sentir le développement de leurs potentiels à vos côtés. Ils finiront certainement par partir, mais autant reculer cette échéance en développant leur bien-être.

 

https://www.slideshare.net/ArnaudHuon/la-fin-de-la-qute-du-graal-agile-tour-lille-2017

agile-tour-6