Dans la team Tech de Suricats, nos mots d’ordre sont pragmatisme et pérennité. Lorsqu’on lance un projet avec nos clients, on veut aller droit au but, et construire un outil, utile, utilisable et utilisé … dans la durée. Rapide retour d’expérience sur nos pratiques de coaching d’équipe de développeurs au sein d’une DSI cliente.
Commençons par quelques bonnes pratiques de développement "maison"
Le plus important pour nous, c’est de faire en sorte que notre développement soit facilement maintenable et robuste, en suivant certaines règles simples :
- Nous évitons d’utiliser des librairies externes plus que nécessaire, et téléchargeons directement nos dépendances sur nos serveurs pour être le moins tributaire possible de systèmes tiers et de leurs éventuelles évolutions.
- Documenter, c’est bien, mais avoir un code lisible et clair, c’est mieux ! Souvent un code bien écrit se suffit à lui-même.
- Pour le langage de programmation : on ne choisit pas le langage ou framework le plus à la mode mais le plus adéquat au projet.
- On pense dès le début d’un projet à sa pérennité et à ses potentielles évolutions, pour construire un code facile à maintenir et modulaire.
Retour d'expérience sur un récent coaching chez un de nos clients
Le contexte
Fin 2020, nous avons eu l’opportunité d’aller partager ces bonnes pratiques avec d’autres équipes techniques.
Suricats a été missionné pour former un développeur au sein d’une équipe de la DSI d’un de nos clients, afin de l’aider à monter en compétences et en rigueur sur ses projets.
Voici comment nous avons procédé. Mais tout d’abord, le contexte …
Notre développeur est de type Java / Android niveau « junior », et comme vous le savez peut-être Java est un langage de programmation objet, certes très complet, mais considéré comme obsolète par beaucoup de développeurs. Pour autant, il reste aujourd’hui le deuxième langage le plus utilisé derrière le JavaScript. Car Java est un langage robuste, fort de ses 25 années d’existence et de ses … 6 millions d’adeptes spécialisés dans le monde !
Le Java est encore grandement utilisé dans le domaine de la finance pour sa stabilité, mais, si beaucoup de développeurs se tournent vers du Java, c’est aussi pour le développement mobile Android.
Et c’est le cas de notre développeur.
Les objectifs du coaching
Notre coaching avait pour but d’aider notre développeur sur différents aspects :
- Mise en place de bonnes pratiques en développement logiciel et orienté objet
- Travail sur le développement d’interface graphique, en limitant les bugs liés aux différentes tailles d’écran
- Découverte des nouveautés Android afin de simplifier les développements futurs sur tous les aspects (navigation, interface réseau, gestion de bases de données…)
Le programme de montée en compétences
Dans un premier temps, nous avons mis en place une formation intensive sur 2 mois, avec du coaching chaque matin, durant lesquels nous réalisions des exercices Android, construits par Suricats, qui balayaient ces notions. Des exercices supplémentaires en développement logiciel avaient pour objectif de valider les bases d’orienté objet.
Durant la deuxième phase, nous avons mis en place des sessions de peer programming sur les projets actuels du développeur afin de mettre en pratique ces notions et apporter de la valeur business tout en étant encadré durant ses développements.
Enfin, une dernière phase consistait à valider les acquis du développeur en mettant en place des revues de code sur ses nouveaux développements pour assurer un suivi dans la formation. Le but de cette dernière phase est aussi d’assurer une bonne intégration continue des développements, avec un git flow optimal qui permet un bon suivi du projet et des fonctionnalités et assure une constance dans la qualité des développements.
La recette d'un coaching réussi ?
Une fois ces trois étapes réalisées, votre développeur est apte à voler de ses propres ailes et les exercices réalisés peuvent lui servir de support d’exemples et de guidelines pour ses développements futurs.
Ce coaching a permis à notre développeur de gagner en qualité de livrable, les exercices réalisés lors de la première phase de coaching peuvent lui servir de support et de guidelines lors de ses prochains développements. De plus, un accompagnement dégressif sur le long terme lui a permis de maintenir ses efforts dans le temps et d’opérer un vrai changement dans ses habitudes de travail et sa communication avec le reste de l’équipe.
Ce modèle de coaching de développement en 3 phases, nous le proposons aujourd’hui à nos clients afin d’améliorer la qualité des livrables des équipes de manière pérenne.
Pour en savoir plus sur nos différentes offre Tech, n’hésitez pas à aller consulter nos offres dédiées.