Catégories
Start-up et applications

Comment rester agile avec une main-d'œuvre répartie à l'échelle mondiale

Alors que le Manifeste Agile approche de son 20e anniversaire, c'est le bon moment pour réfléchir à la révolution technologique qui a suivi. Il a marqué un tournant dans l'industrie du développement de logiciels, décrivant de nouvelles valeurs et principes sur lesquels on pourrait s'appuyer et se poursuivre dans la poursuite d'un développement plus efficace, documenté et basé sur les données. Le manifeste n’était pas un cadre ou une méthodologie rigide, mais il résumait un état d’esprit qui, deux décennies plus tard, est toujours le moteur de l’industrie.

Au cours de ces vingt années, le mouvement Agile est devenu l'une des pierres angulaires de l'ingénierie numérique et constitue la norme acceptée pour développer et livrer des initiatives numériques dans le monde entier. Il se concentre sur des équipes interfonctionnelles, des groupes de travail plus petits, un travail flexible et surtout un profond sentiment de confiance et de collaboration.

Lorsque le Manifeste Agile a été publié au tournant du millénaire, le monde était un endroit très différent et, comme nous, il est difficile de s’adapter. Les 17 praticiens du développement de logiciels qui ont rédigé l'article ont écrit avec l'hypothèse sous-jacente que la collaboration, la confiance et le brainstorming fonctionnaient le mieux dans un environnement physique en face à face. Aujourd'hui, la «nouvelle normalité» qui émerge à la lumière de la pandémie du COVID-19 nous pousse dans la direction opposée.

Les environnements de travail distribués gagnaient déjà du terrain avant la pandémie, mais maintenant, pour de nombreuses entreprises, c'est une question de survie. Ma propre compagnie, Infostretch, dispose d'équipes réparties sur trois continents différents et dans plusieurs bureaux, et lorsque la pandémie a frappé, nous avons permis à 95% de nos effectifs de travailler à domicile dans les 48 heures. En 2020 et au-delà, la pratique de l'agilité impliquera différents emplacements de bureau, le travail à domicile, des fuseaux horaires conflictuels et bien d'autres variables définies par la géographie. En tant qu'entreprise, nous avons appris à affiner nos processus de travail, nos politiques, nos comportements et nos habitudes pour non seulement s'adapter à un modèle Agile distribué, mais aussi prospérer en son sein et transformer notre culture de travail.

Voici dix trucs et astuces durement acquis que nous avons appris en cours de route, pour garantir la réussite de votre organisation dans un environnement agile et distribué:

1. Connaissez votre propre environnement
Il n'y a pas deux équipes identiques. Chacun sera composé de membres situés dans différents fuseaux horaires et environnements avec leur propre ensemble de défis environnementaux uniques à surmonter. Pour cette raison, il importe de savoir quels rôles sont colocalisés et lesquels sont distribués. À chaque décision, examinez la taille et la complexité de chaque équipe et projet, et prenez une décision qui fournira le plus d'avantages avec le moins de perturbations possible. Par exemple, combien de lieux et de fuseaux horaires sont impliqués? La majorité de l'équipe est-elle co-localisée avec seulement quelques travailleurs répartis, ou la distribution est-elle uniformément répartie?

2. Choisissez judicieusement vos équipes
Il y a beaucoup à prendre en compte lors de la constitution d'une nouvelle équipe – talent, compétence, coût, disponibilité – et cela avant même de considérer la portée du projet et ce qui est impliqué. Mais créer le match parfait est possible si vous prenez le temps d'attribuer les rôles avec soin. Par exemple, le travail basé sur les fonctionnalités est souvent plus facile à intégrer dans un modèle de travail distribué, plutôt que des tâches plus horizontales. Prenez le temps d'identifier les membres de l'équipe qui doivent travailler plus étroitement. Cela peut signifier que les propriétaires de produits sont colocalisés avec l'équipe de développement, tandis que certains rôles peuvent devoir être jonglés ou échangés pour garantir un travail d'équipe efficace. D'autres compétences plus douces sont également importantes, donc en plus de l'expertise technique de base, considérez les niveaux de motivation de la personne et si elle peut établir la confiance ou promouvoir la collaboration.

3. Cartographiez soigneusement les flux de travail
Il est essentiel de bien comprendre la manière dont un projet se déroulera avant de décider de la structure de vos équipes. La cartographie du flux de travail d'un projet signifie également que vous pouvez définir les activités, les objectifs et les types de personnes dont vous avez besoin dans l'équipe. C’est l’occasion de repérer les obstacles qui pourraient empêcher une équipe de travailler de manière agile et de les surmonter.

4. Permettre une communication sans friction
Les systèmes d'engagement qui facilitent la communication et la collaboration entre les membres de l'équipe prennent une importance nouvelle lorsque le travail est complexe et les équipes réparties. Alors que les outils de gestion du cycle de vie des applications peuvent prendre en charge la journalisation de la progression d'un projet, les équipes doivent également pouvoir discuter, réfléchir et communiquer facilement. La technologie de collaboration se présente sous de nombreuses formes (plateformes de chat, visioconférence, gestion distribuée du code source, etc.). Cela vaut la peine de faire des essais jusqu'à ce que vous trouviez ce qui fonctionne ou que vous soyez guidé par ce avec quoi l'équipe travaille déjà.

5. Ne compliquez pas trop les choses
Lorsqu'il y a des océans entiers, des fuseaux horaires et des barrières culturelles séparant votre main-d'œuvre, des malentendus mineurs peuvent se transformer en problèmes majeurs. La clarté de la communication devient donc primordiale. Dans l'environnement distribué, les commentaires nuancés ou la politique du bureau peuvent être perdus dans la traduction. Au lieu de cela, donnez la priorité à la transparence, car c'est ainsi que vous établissez rapidement la confiance dans les équipes distribuées.

6. Cultivez une culture d'équipe
La confiance et le respect sont les fondements d'une équipe performante. C’est une petite question de formulation, mais ça marche comme une équipe plutôt que avec une équipe peut avoir un impact significatif sur la dynamique de l'équipe. Traitez les membres de l'équipe de manière égale et avec considération. Par exemple, quelque chose d'aussi simple que de réfléchir soigneusement lors de la planification d'un appel pour trouver un fuseau horaire qui fonctionne pour tout le monde, peut faire toute la différence.

7. Recrutez avec agilité à l'esprit
Tout le monde n'est pas fait pour le travail agile. Par conséquent, vous devez adapter vos méthodes de recrutement pour identifier des collaborateurs hautement motivés et dotés d'excellentes capacités de communication. La cohésion d'équipe est sans doute plus cruciale dans un environnement distribué, car elle ne peut pas se produire aussi naturellement qu'en face à face.

8. Sachez quand rassembler les équipes
Considérez à l'avance quand il est judicieux de rassembler les membres de l'équipe au même endroit et assurez-vous de prévoir un budget pour cela. Nous travaillons souvent aux côtés de nos clients dans leurs bureaux, car il est plus facile de se familiariser avec tous les petits détails – des choses qui peuvent facilement être manquées sur Zoom ou Slack. Les sprints sont également un candidat évident pour le travail colocalisé, en particulier aux premiers stades lorsque les membres de l'équipe ont vraiment besoin de se connaître et de renforcer la confiance.

9. Mettez les fuseaux horaires à votre avantage
S'il n'est pas pratique de se rencontrer, souvent en raison de la distance, des fuseaux horaires ou du budget, utilisez le fait que l'équipe est géographiquement dispersée à votre avantage. Plutôt être un élément perturbateur, cela pourrait en fait être votre ticket pour une productivité 24 heures sur 24. C'est également un bon conseil car, sans planification judicieuse, les fuseaux horaires peuvent en fait retarder une équipe alors que les membres attendent que des collègues d'autres fuseaux horaires commencent leur journée avant de pouvoir progresser dans leur propre travail.

10. Esprit d'équipe
Dernier point mais non le moindre, assurez-vous de réserver du «temps d'équipe». Avec tout type de travail distribué – mais surtout dans le développement de logiciels – les membres de l'équipe peuvent avoir tendance à se concentrer sur leur propre pièce du puzzle et à perdre de vue l'ensemble. Le travail agile repose sur une étroite collaboration d'équipes interfonctionnelles. Pour améliorer la collaboration, organisez régulièrement des rencontres en personne (si possible) et virtuellement, qui permettent aux gens de se connaître. Pour des projets spécifiques, assurez-vous que du temps est réservé pour vous enregistrer individuellement avec les membres de l'équipe, pour offrir l'occasion de soulever des problèmes ou de poser des questions. Non seulement cela augmente la confiance et le respect entre les équipes, mais cela améliore également les résultats en évitant les problèmes potentiels avant qu'ils ne se transforment en problèmes.

J'ai la chance de pratiquer Agile depuis le lancement d'Infostretch il y a plus de 16 ans. Espérons qu'en partageant les connaissances que j'ai acquises au cours de cette période, cet article pourra aider d'autres entreprises à entreprendre leur propre cheminement vers l'adoption de la méthodologie Agile.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *