Pensez team !
Construire une équipe talentueuse et forte, constitue toujours un challenge dans le lancement d’un nouveau projet et un « point clef » dans son aboutissement. Quand vous avez recours à l’outsourcing, pour parer par exemple à une pénurie de développeurs, le « pain point » ne réside pas simplement dans le fait de recruter une équipe qui collectivement va posséder les compétences ad’hoc pour mener à bien votre projet de développement , mais plutôt d’instaurer une organisation qui permette aux membres de l’équipe d’outsourcing de valoriser tout leur potentiel et de rester intrinsèquement motivée sur une période souvent longue.
Les équipes de la plate forme « nearshore » souffrent parfois du sentiment d’éloignement du centre névralgique et stratégique du projet. Il est prépondérant de leur donner le sentiment qu’elles sont naturellement et « spontanément » intégrées.
Il convient dès lors de créer un véritable environnement engageant dans lequel chaque maillon contribue aux objectifs d’une équipe. Les équipes « nearshore » contribuent tout autant à la réussite des objectifs de l’entreprise que les équipes centrales et doivent avoir le sentiment de s’intégrer dans un «nous» collectif, porteur et non pas d’être scindé entre un «nous» et «eux».
Vous trouverez ci-dessous des pratiques tirées de l’expérience de Go&dev et de ses fondateurs qui peuvent aider à surmonter les enjeux liés au développement IT en Nearshore. Ce ne sont évidemment que des principes que nous vous transmettons avec la plus grande humilité.
1. Soutenez une communication régulière par voie digitale.
Une communication ouverte est la « clé du succès » de toute production outsourcée. En ce sens, en plus de locaux confortables et adaptés à leur mission, l’équipe Nearshore doit disposer d’au moins une salle de visio-conférence accessible à toutes les équipes.
La visioconférence constitue évidemment aujourd’hui, une bien meilleure option que la traditionnelle « conf-call ». Le tarif de communication est moins élevé (quasi gratuit), elle ne coute pratiquement rien en terme d’investissement, et permet de rapprocher les équipes en contribuant à créer ce fameux « nous » vertueux, en mettant » a name on to a face ». À titre d’exemple, nous utilisons indifféremment chez Go&dev : Google Hangouts, Skype, ou Zoom. Nous recommandons également la mise en place d’outils de messagerie instantanée comme « Slack » par exemple. La communication par courrier électronique doit rester l’outil central de la communication écrite formelle.
2. Sanctuarisez les réunions en « face to face ».
Notre expérience montre que les réunions en « face to face » régulières constituent l’un des facteurs de succès fondamentaux en créant de la proximité. Les membres de l’équipe peuvent apprendre à se connaître et établir une confiance mutuelle, ce qui s’avère fondamental pour de nombreuses décisions clés à prendre, parfois en toute autonomie.
Au début du projet chez Go&dev, nous sommes ravis d’accueillir sur notre site « Nearshore », les membres de l’équipe projet pour organiser un transfert de compétences efficace. Les liens avec le personnel peuvent être actualisés en réunissant périodiquement l’ensemble de l’équipe, ce qui peut s’accompagner à des événements visant à améliorer la cohésion des équipes.
3. Nommez un chef d’équipe local comme point de contact unique.
Les équipes « nearshore » rencontrent plus de défis organisationnels que le donneur d’ordre ne peut imaginer. Elles ont donc besoin d’une structure de communication et de gestion hiérarchique claire. Avoir un chef d’équipe local dans l’équipe comme point de contact unique est essentiel pour garder une équipe « outsourcée » sur les bons rails. L’une des principales responsabilités du chef consiste à configurer et à organiser la charge de travail localement mais également à encourager les « best practices » en terme de développement et de gestion de projets pour mener à bien un projet IT : planifications de sprint, estimations, revues de code, cartes de scénario, etc.
Le rôle du chef d’équipe est de rappeler à l’équipe les principes sous-jacents et de les guider dans l’adaptation de leurs pratiques lorsque la tentation de les oublier peut exister. Il assume la responsabilité de la performance globale de votre équipe nearshore et devra disposer de la liberté de décision et du soutien nécessaires.
4. Votre équipe Nearshore est performante, faites lui savoir.
Il est important que votre équipe « outsourcée » ou ses membres individuels soient reconnus pour la qualité de leurs performances. Nous vous encourageons à récompenser les résultats individuels. Notre expérience montre que la reconnaissance de performances particulières incite les équipes « nearshore » à donner le meilleur de leurs capacités et à produire toujours plus d’efforts, par exemple. Venir le week-end pour finir le travail et respecter des délais de livraison serrés, ce qui est fréquent chez Go&dev.
5. Répartissez le travail sans à priori.
Nous suggérons de « laisser la chance » aux équipes «outsourcée» de continuer à réfléchir à leur mission dans un contexte général, et de ne pas parcelliser les taches de manière trop verticale. En ce sens, les taches peuvent être partagées indépendamment de la zone géographique, c’est ce que nous recommandons à nos clients. La tentation est grande par exemple, de confier les taches « nobles », comme l’architecture ou le « user thinking », aux équipes centrales et de ne confier que les taches liées au « développement pur », aux équipes « outsourcées ».
Si c’est effectivement pour pallier à une pénurie locales de « codeurs purs », qu’une entreprise a recours au « nearshoring », il n’empêche que notre expérience montre au contraire qu’en associant (même de manière purement consultative) les équipes « outsourcées » à ces taches, les chances de réussite du projet de développement sont maximisés. Les équipes Nearshore pouvant ainsi mieux se réapproprier le projet et minimiser « l’effet silo » toujours nuisibles à la bonne réussite d’un projet digital.
6. Expliquez le « pourquoi du comment ».
Quand, les « bons » développeurs font des suggestions bien argumentées en matière de conception, d’architecture et de développement de logiciels, ils sont souvent déçus quand ces suggestions ne sont pas acceptées. En particulier si les explications nécessaires manquent.
Les contraintes budgétaires, accords-cadres avec les clients et autres partenaires, limitations de temps, etc… doivent ainsi être communiqués en amont aux développeurs. Par ailleurs, nous encourageons nos clients à prendre le temps d’expliquer de manière transparente les raisons pour lesquelles une décision peut être prise, afin de partager une perspective commune pertinente avec les équipes « Nearshore ».
7. Nourrissez vos développeurs de documentation « high level ».
Le maintien d’une documentation précieuse améliorera également le processus de collaboration avec les équipes « outsourcées » tout en utilisant des pratiques agiles. Nous vous encourageons à fournir des « user stories » avec des diagrammes de cas d’utilisation dans des backlogs accessibles à tous, afin de réduire les malentendus et d’améliorer la collaboration au sein d’une équipe.
Divers outils tels que le suivi des problèmes (par exemple, Jira), un outil de gestion de projet (par exemple, Scrum Works) aident également à maintenir la documentation et à assurer une bonne transparence.
Notre expérience montre qu’investir dans une documentation de qualité est rentable, en tirant les équipes « nearshore » par le haut pour atteindre un haut niveau de qualité de développement.
8. Encouragez la rétroaction.
Donnez aux membres de votre équipe « nearshore » la possibilité de commenter des éléments tels que la motivation, le sentiment d’utiliser des langages de haut niveaux. Montrez leur que le donneur d’ordre est sensible à tous les facteurs qui peuvent avoir une influence positive ou négative sur leurs performances et peuvent contribuer de manière significative à l’atmosphère générale de l’équipe, à la motivation intrinsèque et à l’implication des équipes Nearshore.
De la même manière, assurez vous évidemment du confort de leur cadre de travail.
9. Utilisez les bons outils.
Votre décision d’outsourcing doit être associée à l’engagement de fournir à vos équipes : locales et « Nearshore », les outils nécessaires pour optimiser la communication.
Un environnement de développement complet devrait, de par notre expérience, inclure les outils intégrés suivants: (Gestion de projet, suivi des bogues, suivi des problèmes, partages de documents, code source et aperçu du référentiel, système de révision de code, gestion des versions (intégration continue), système de contrôle de version (référentiel de code source).