Collaboration et travail d'équipe
En tant que professionnel·le du web, vous allez devoir travailler avec d'autres personnes sur des projets à différentes étapes : génération d'idées, rédaction de propositions, implémentation du code, etc. Cet article explique comment collaborer avec les autres.
| Prérequis : | N/A |
|---|---|
| Objectifs d'apprentissage : |
|
Travailler avec les autres
En tant que développeur·euse web, vous devrez passer beaucoup de temps à travailler avec vos pair·e·s, que vous soyez salarié·e ou étudiant·e. Vos collègues ou camarades peuvent être d'une aide précieuse pour votre apprentissage, comme nous l'avons vu dans Recherche et apprentissage, et vous devez au moins veiller à bien vous entendre avec eux au départ.
Il est important de traiter les personnes avec le même niveau d'empathie et de respect que celui que vous souhaitez recevoir. Les besoins émotionnels, sociaux, etc. varient d'une personne à l'autre, mais il faut toujours rester poli·e, respectueux·se et coopératif·ive dans toutes les interactions.
Rejoindre un réseau communautaire
Le secteur du web a un fort esprit communautaire, ce qui signifie que vous interagirez souvent avec des personnes en dehors de votre groupe de travail ou d'étude pour discuter de sujets d'intérêt ou résoudre des problèmes. Le secteur dispose de ses propres espaces en ligne, comme des forums (par exemple, des serveurs Discord), des canaux Slack, etc. Il existe aussi de nombreux événements en présentiel, des grandes conférences aux petits meetups locaux.
Vous devriez rejoindre certains de ces groupes, dire bonjour, faire connaissance, partager des ressources, poser des questions et proposer votre aide. Faire partie de la communauté présente de nombreux avantages :
- Rencontrer des contacts utiles qui deviendront peut-être des ami·e·s, futur·e·s collègues ou employeurs·euses.
- Apprendre de nouvelles techniques et technologies et obtenir de l'aide sur vos problèmes techniques.
- S'entraîner à expliquer comment fonctionne le code et à répondre aux questions des autres.
- Découvrir des ressources, des meetups et l'actualité du secteur.
- Tomber sur des offres d'emploi.
- Trouver des informations sur les entreprises où travaillent d'autres membres de la communauté, ce qui peut aussi aider à explorer le marché de l'emploi et à cibler les entreprises qui vous intéressent.
Voici quelques idées pour s'impliquer dans des réseaux communautaires :
- Faites des recherches dans votre région pour voir quels groupes de meetup existent et participez-y. Vous pouvez trouver des événements sur des sites comme Meetup.com ou Eventbrite (angl.).
- Consultez des ressources comme confs.tech (angl.) pour trouver des conférences techniques intéressantes. Si elles sont trop chères, contactez les organisateur·ice·s pour voir si vous pouvez y travailler comme bénévole : vous pourrez ainsi y assister et rencontrer beaucoup de monde.
- Les forums freeCodeCamp (angl.) sont aussi un excellent endroit pour poser des questions et y répondre.
- Découvrez le serveur Discord Frontend Developers (angl.).
- Rejoignez le serveur Discord de MDN : /discord.
- Rejoignez un canal IRC orienté développeur·euse·s, comme Libera.Chat (angl.).
- Notre partenaire d'apprentissage, Scrimba, propose une expérience communautaire et collaborative forte (angl.) via leur serveur Discord, pour aider leurs étudiant·e·s à acquérir de l'expérience en collaboration.
- Trouvez des développeur·euse·s web sur les réseaux sociaux, voyez ce qu'ils·elles partagent et participez aux discussions.
Si vous ne savez pas comment participer, commencez par lire les discussions existantes et observez comment les personnes expérimentées interagissent.
Note : La plupart des communautés publient un document appelé Code de conduite (ou règles de participation) qui définit les comportements attendus des participant·e·s à leur projet. Ces règles incluent généralement la définition des comportements inacceptables, les conséquences associées et la façon de les signaler. Par exemple, MDN est régi par les Règles de participation de la communauté Mozilla.
Aider les autres, poser des questions
Si un·e collègue ou un contact de votre réseau rencontre des difficultés, proposez-lui votre aide. Les développeur·euse·s web qui aident les autres ont beaucoup plus de chances de tisser des liens solides et de recevoir de l'aide en retour.
- Si vous avez déjà de l'expérience dans le domaine où la personne rencontre des difficultés, partagez vos connaissances ou des exemples de code. Le fait d'expliquer quelque chose améliore aussi votre propre compréhension et vous aide à progresser.
- Si vous avez une idée d'endroit où trouver des réponses utiles, aidez-les à faire des recherches.
- Même si vous ne connaissez pas la réponse, proposez de faire une pause avec la personne et écoutez-la pendant qu'elle explique le problème. Vous aurez peut-être des idées utiles, et le simple fait d'expliquer le problème peut l'aider à trouver la solution (voir Prendre des pauses et débogage avec le canard en plastique).
Il vaut toujours mieux aider ses pair·e·s directement, plutôt que d'attendre qu'un·e enseignant·e ou un·e senior fasse le tour pour aider tout le monde. Les pair·e·s moins expérimenté·e·s seront aidé·e·s plus vite, et les pair·e·s plus expérimenté·e·s deviendront mentors et en retireront de la satisfaction.
Il y a un art à poser et à répondre aux questions. Il est essentiel de s'entraîner à poser les bonnes questions pour obtenir ce dont on a besoin, et à expliquer ce que l'on fait quand quelqu'un demande. Si vous n'êtes pas à l'aise avec cela, demandez à vos pair·e·s si vous pouvez organiser des sessions où ils·elles posent des questions et vous expliquez votre code, et inversement.
Les relectures entre pair·e·s sont aussi un bon moyen de s'entraîner à cela (voir ci-dessous).
Publier votre travail
De manière générale, il est très utile de publier votre travail, y compris le code source, les leçons apprises, les difficultés rencontrées, etc. Vos pair·e·s trouveront cela très utile, tout comme la communauté au sens large.
Quand vous trouvez une réponse utile, écrivez à ce sujet. Publiez votre code sur un site de partage comme GitHub (angl.) ou GitLab (angl.), et partagez vos réflexions sur un blog. Diffusez vos publications sur les réseaux sociaux.
Le fait d'écrire clarifiera les concepts pour vous, et vous recevrez aussi des retours ou des validations de la communauté. Cela peut vous aider à commencer à vous faire un nom dans le secteur.
Même si vous pensez que vos réalisations sont triviales, vous en savez probablement plus que vous ne le croyez, et il y aura toujours quelqu'un à un stade plus précoce qui trouvera votre travail utile.
Participer à l'open source
Une autre façon de se faire des ami·e·s et d'avoir de l'impact est de trouver des projets open source et de proposer des corrections pour améliorer le travail d'autres personnes. Si vous êtes poli·e et respectueux·se, et que vous expliquez vos changements et leur raison, les responsables du projet vous en seront très reconnaissants. Vos contributions vous feront aussi gagner de l'expérience et de la pratique.
Par exemple, le code source de MDN (angl.) est disponible sur GitHub, et il y a de nombreux tickets (angl.) sur lesquels vous pouvez travailler. Il existe de nombreuses ressources communautaires sur MDN qui décrivent le projet et ce que signifie y contribuer.
Si vous ne savez pas ce qu'est l'open source, pourquoi ou comment commencer à contribuer, les ressources suivantes sont très utiles :
Travail d'équipe et relectures entre pairs
Vous devrez souvent travailler en équipe avec d'autres développeur·euse·s, chaque membre ayant des fonctions différentes. Nous verrons les différents rôles et stratégies de travail dans Flux de travail et processus, mais pour l'instant, réfléchissez à ce que signifie travailler en équipe :
- Être collectivement responsable du projet — succès comme échecs.
- Travailler ensemble pour planifier non seulement ce que vous allez faire, mais aussi comment vous allez collaborer pour y parvenir. Quel processus utiliser ? Comment mesurer le succès ? Combien de temps avez-vous ? Quels objectifs doivent être atteints, et quand ?
- Communiquer régulièrement et ouvertement pour détecter les problèmes tôt et que tout le monde sache ce qui se passe.
- Faire preuve d'empathie envers les autres membres de l'équipe en toutes circonstances, surtout quand les choses ne se passent pas comme prévu et qu'il faut s'adapter.
- S'entraider pour réussir.
Même si vous ne travaillez pas sur un vrai projet professionnel — vous pouvez être sur un projet fictif à l'école ou sur un projet personnel — vous devriez vous entraîner à le gérer comme un vrai projet logiciel, avec un planning, un plan et des responsabilités. Renseignez-vous sur les cycles de vie du développement logiciel (angl.). Apprenez les bases de la planification de projet et des outils pour estimer et organiser votre travail.
Il est aussi conseillé de commencer à faire des relectures entre pair·e·s — les collègues relisent le travail des autres et donnent des retours pour l'améliorer. Les points examinés peuvent inclure la qualité générale du code, le respect des guides de style, la performance, les bonnes pratiques, l'utilisabilité et la qualité de la documentation. Vous en tirerez beaucoup de bénéfices, que vous soyez relecteur·rice ou relu·e :
- Si vous relisez le travail de quelqu'un, essayez de trouver un équilibre entre encouragement, félicitations pour le bon travail, et retours critiques. Entraînez-vous à donner ces retours de façon constructive et respectueuse. Même si cela semble anodin, trouvez toujours une ou deux questions à poser lors d'une discussion ou d'une relecture.
- Si votre travail est relu, ne prenez pas la critique personnellement, concentrez-vous sur les points positifs et ce que vous pouvez apprendre. Supposez que la personne qui relit a de bonnes intentions — elle veut juste vous aider.
Apprendre à accepter l'échec
Un problème courant qui pousse les étudiant·e·s et les nouveaux·elles développeur·euse·s à éviter d'expérimenter ou de prendre des risques (par exemple en lançant de nouveaux projets ou en explorant de nouvelles idées) est la peur de l'échec et du jugement des pair·e·s ou de l'équipe. Prenez le temps de comprendre la valeur de l'apprentissage par l'erreur.
L'échec n'est qu'une petite étape sur le chemin du succès. Tous·tes les développeur·euse·s les plus expérimenté·e·s ont échoué de nombreuses fois, et ce n'est pas l'échec en soi qui compte, mais la façon dont vous le gérez et les leçons que vous en tirez.
Voici quelques conseils :
- Définissez un espace ou groupe de pair·e·s où chacun·e peut poser des questions librement — il n'y a pas de « mauvaises questions », seulement des personnes qui n'osent pas demander. Favorisez une culture où les pair·e·s s'entraident et où l'échec n'est pas jugé sévèrement.
- Appuyez-vous sur votre réseau et essayez de trouver des groupes en ligne ou en présentiel qui peuvent vous aider, vous conseiller, ou qui rencontrent les mêmes difficultés et peuvent vous soutenir ou expérimenter avec vous.
- (Pour les enseignant·e·s) Prévoyez des barèmes d'évaluation qui permettent d'obtenir une note correcte même si le résultat n'est pas parfait, à condition que la démarche soit bien documentée. Donnez des points supplémentaires pour l'innovation.
- Organisez des sessions de partage ou des entretiens individuels en cours de projet avec des pair·e·s ou des mentors pour obtenir des retours et des conseils sur la façon de progresser.
- Organisez des réunions de rétrospective pour analyser les projets, voir ce qui n'a pas bien fonctionné et discuter des pistes d'amélioration pour la prochaine fois.