Collaboration et travail d'équipe
En tant que professionnel·le du secteur du web, vous êtes amené·e à travailler avec d'autres personnes sur des projets à différentes étapes — réflexion collective, rédaction de propositions, mise en œuvre du code, etc.
Au sein des équipes de développement web, la collaboration s'effectue souvent à l'aide d'outils tels que les systèmes de contrôle de version (par exemple, Git (angl.) et GitHub (angl.)). Les développeur·euse·s travaillent généralement sur des copies distinctes d'un projet, révisent le code les un·e·s des autres et discutent des modifications à l'aide de commentaires. Un tel flux de travail aide les équipes à détecter les bogues à un stade précoce, à maintenir la qualité du code et à s'assurer que tout le monde comprend les modifications apportées.
Cet article examine comment travailler en collaboration avec d'autres personnes.
| Prérequis : | N/A |
|---|---|
| Objectifs d'apprentissage : |
|
Travailler avec les autres
En tant que développeur·euse web, vous devez 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 interagissez 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 petites rencontres locales.
Vous devez 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 deviennent 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 rencontres 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 rencontre 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 pouvez 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.) avec 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 avez 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 sont aidé·e·s plus vite, et les pair·e·s plus expérimenté·e·s deviennent mentors et en retirent 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 trouvent 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 clarifie les concepts pour vous, et vous recevez 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 a toujours quelqu'un à un stade plus précoce qui trouve 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 sont très reconnaissants. Vos contributions vous font 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 devez 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 devez 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 tirez 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.