Ma première fois
Publié le 20 April 2010, par mere-teresa dans la catégorie Développement, Gestion de projet, Organisation, méthodo...De nombreuses personnes m’ont déjà entendu dire que je continuerais à faire de l’informatique jusqu’à ce que je vois un projet sortir en temps et en heure. C’est une blague récurrente, qui reflète, malheureusement le manque de soin apporté à l’évaluation des risques, des ressources et des spécifications dans les projets de développement web.
Pour faire écho à l’article de Damien Mathieu, j’ai déjà rencontré de très bons chefs de projet. Mon expérience de consultante-formatrice m’a amenée dans des entreprises privées aussi bien que dans des établissements publics, au contact d’équipe variées. J’ai toujours constaté une certaine fatalité envers le retard dans les projets web.
Et pour la première fois, lors d’une mission, nous livrons des features au rythme prévu. Parfois, cette date a été ré-ajustée au fil du développement, parfois la feature B devance en produit livrable la feature A et se retrouve livrée plus tôt. Tout va bien, me direz vous, alors plutôt que de pointer encore et encore les erreurs des projets, les erreurs des développeurs, je vous propose d’examiner les conditions de cette réussite.
Maîtrise des développements
Pour une fois, ma mission de développement se déroule chez un éditeur de logiciels, et pas dans une SSII ou web agency. Les contraintes sont différentes : ajouter des nouveautés permet de continuer à faire évoluer le site web. Et maintenir l’existant permet de gagner la confiance des utilisateurs. Le besoin de qualité est important pour un code pérenne et maintenable, cette qualité est plus importante que le besoin de livrer rapidement. Les dates limites existent néanmoins et permettent de border les tâches, et de découper les features en tâches.
Direction du projet
Les projet ont deux têtes pensantes : un lead développeur, une chef de projet (commune aux projets). Et en plus, un directeur technique est disponible, pour les points plus critiques ou les choix techniques d’évolution du projet (modification du système de traduction, par exemple). Les technologies les plus performantes sont envisagées pour remplacer les technologies classiques. Cela donne du dynamisme au projet, et attire des développeurs de qualité dans l’entreprise.
Malgré un recrutement soutenu, les développeurs sont bien intégrés aux équipes par des formations aux outils, et comme habituellement, des tâches autonomes et indépendantes des autres du projet à réaliser. Le temps de midi est également mis à profit pour la convivialité.
Des horaires souples
Pour mes besoins personnels, je préfère arriver tôt et repartir tôt. D’autres collègues préfèrent arriver plus tard (après 10h) et j’imagine qu’ils partent plus tard. La pause déjeuner n’est pas non plus chronométrée. Nous sommes managés à la tâche plutôt qu’au créneau horaire, et responsabilisés sur notre tâche. Les dates de planning nous ont permis de déterminer un rythme à tenir pour la sortie de notre feature.
Rencontres fréquentes
Malgré l’open space, dont on sait qu’il est moins bon pour la productivité que les bureaux individuels, les développeurs s’isolent pour se concentrer. Les rencontres sont donc provoquées par un stand-up quotidien, qui a lieu après la pause déjeuner. Parfois, les développeurs d’un même projet — qu’on croirait connectés — se retrouvent à échanger, parfois c’est une simple énumération de ce sur quoi chacun travaille.
Même si nous travaillons sur des logiciels différents, nous avons des fonctionnalités communes, pour résoudre les mêmes problèmes, nous communiquons entre les projets. Les solutions éprouvées sont alors dépistées, ainsi que les impasses.
Challenge technique
En plus d’utiliser des technologies de pointe, toutes les deux semaines, une journée consacrée à la technique est organisée, les développeurs comme l’infra se retrouvent à mettre en place des nouveautés techniques dans l’application, à faire des tests sur les futurs produits techniques, à réparer de petits agacements dans le code ou la configuration qui ralentissent tout le monde.
Cette journée de technique pure, sans but de plaire aux commanditaires (ou actionnaires) des logiciels est toujours un jour agréable. Nous passons en production des nouveautés qui ont été testées précédemment, ou des ajustements qui augmentent le confort de développement.
Convivialité
La pause repas ayant déjà été évoquée, j’ajouterais les outils d’Instant Messaging, la mise à disposition de consoles de jeux (et canapés), le café à volonté, ainsi que la présence d’un outil de “Perles” qui recueille les propos les plus amusants, sortis de leur contexte, évidemment. Ces différents outils renforcent les liens inter-personnels et la confiance entre les développeurs.
Pour terminer, les développeurs sont considérés comme essentiels à la production de valeur dans l’entreprise. Le fait qu’ils soient nombreux les rend majoritaires par rapports aux autres services (marketing, RH ou comptabilité). La direction des projets fournit le matériel nécessaire au confort de chaque développeur (écrans, lampes, etc.) et les responsabilise sur leur code et le code de leur projet.
Sans utiliser de l’eXtrême Programming ou du Scrum, quelques pratiques issues des méthodes agiles améliorent le confort des développeurs et la qualité des produits.
billet invité rédigé par Sarah Haïm-Lubczanski


le 20 April 2010 à 14h28
Je travaille de cette manière depuis début janvier (à la tâche, sans hiérarchie bien définie. De manière agile quoi) et c’est clairement beaucoup plus gratifiant. Je m’éclate !
C’est, je pense, l’un des problèmes des SSII et agences web, de ne pas permettre suffisamment de souplesse.
le 21 April 2010 à 16h07
Ah quand on râle, du monde au commentaire, quand on est heureux : personne n’en parle !
le 24 April 2010 à 13h29
Et sinon, vous embauchez là tout de suite maintenant ?
le 25 April 2010 à 20h18
J’ai toujours livré mes features à temps dans les projets utilisant les méthodes agiles!
le 28 April 2010 à 13h06
Super article ! Travaillant dans une entité du secteur public, encore régie sous le modèle « une application = un responsable technico-fonctionnel », cette description fait carrément rêver.
Tu dis être passée dans certains organismes publics, penses-tu qu’il y a potentiellement moyen d’arriver à ce genre d’organisation ou est-ce plutôt réservé au monde des éditeurs ?
le 9 May 2010 à 17h59
Je suis pas du tout d’accord avec le cliché “jamais à l’heure”. Tout est une question d’organisation, de maturité du client et de professionnalisme de l’équipe. Quand on travaille dans le web on a souvent à discuter avec des interloccuteurs pas vraiment Web 2.0 et la difficulté pour ne pas prendre du retard est de faire accoucher le client.
le 27 May 2010 à 11h03
Perso, je suis 100% d’accord avec tout ça… je crois que le mot clé de cet article est “SSII”… impossible de rendre un projet dans les temps quand il a été vendu avec les pieds au plus bas prix pour “satisfaire” un client de plus en plus exigeant en terme de prix, mais pas de qualité (on ne peut pas tout avoir, hein ?)…
Quand au management “à la tache” je me bats depuis des années pour le favoriser par rapport au management “à l’horaire”, mais j’avoue que je n’ai plus l’énergie… j’ai abandonné par KO face à (par exemple) des réflexions ironiques du style “tu as pris ton après midi” quand vous quittez le boulot (pour une fois) à 17h…
Conclusion : c’est où qu’il faut envoyer son CV pour venir bosser chez vous ?