Passer de l’école ou d’un stage vers le marché du travail en agence est une étape charnière marquant le début d’une carrière remplie de nouvelles aventures intéressantes et de défis. Finis les rapports de stage et travaux pratiques à remettre pendant la semaine de relâche. Tu vas apprendre à composer avec un tout autre quotidien qui comporte son propre lot d’épreuves.
N’aie pas peur, je suis passé par là et je m’apprête à partager avec toi quelques apprentissages. Tu vas pouvoir tranquillement les intégrer dans ta nouvelle routine afin de ne pas te retrouver en petite boule dans ta douche le matin.
Les compétences relationnelles d’un bon développeur front-end
Ce qui va d’abord te démarquer en agence, ce sont tes aptitudes relationnelles avec les gens et ta capacité à en faire usage dans un contexte professionnel.
C’est normal de vouloir faire ses preuves en arrivant dans une équipe, mais tu dois résister à la tentation de brûler des étapes. Cela pourrait te nuire plus qu’autre chose. Par exemple, démontre ta soif d’apprendre de tes collègues et de tes projets plutôt que d’essayer d’être le meilleur développeur qui soit dès ton arrivée. Tu bâtiras ainsi une complicité naturelle avec tes pairs qui apprendront à te faire confiance pour du travail de qualité (plutôt que la quantité à tout prix).
Mon conseil : intéresse-toi au travail de tes collègues et prends connaissance de leur rôle dans l’équipe. Cette attitude leur donnera envie de t’en apprendre davantage sur une multitude de sujets, faisant ainsi évoluer la relation. Le partage de connaissances et les échanges sont aux centres de toute bonne équipe.
Comment atteindre tes objectifs de carrière en agence web
On peut se lancer dans la vie professionnelle en vivant au jour le jour, sans direction précise, mais pour se réaliser et progresser, il faut des buts. « Devenir un développeur d’expérience » est un but plutôt abstrait qui prend du temps et qui dépend de plusieurs critères. Je te conseille plutôt de choisir des buts concrets, découpés en étapes atteignables qui te permettront de te sentir en action et te donneront un sentiment d’accomplissement.
Supposons que ton but est de faire des projets clients. Pour y parvenir, tu devras atteindre plusieurs objectifs en maîtrisant certaines compétences techniques et méthodologiques qui deviendront des réflexes à long terme.
Si tu vises un objectif abstrait sans étapes concrètes pour t’y rendre, tu risques de ressentir de la frustration et du découragement en cours de route. Sans compter que les chances d’atteindre le but en utilisant cette méthode sont minces.
Exemples d’objectifs professionnels d’un développeur front-end
- Je veux me bâtir une librairie de mixin SASS.
- Je veux faire du ES6 dans mon code Javascript.
- Je veux créer une bibliothèque de blocs réutilisables pour des sites.
- Je veux développer mon propre framework front-end.
- Je veux faire des projets clients.
Sur papier, c’est assez abstrait. Il n’y a pas vraiment d’ordre déterminé et de plan pour y arriver. Sépare ton but final en plusieurs étapes et concentre tes efforts à compléter les sous-buts. Cela te permet d’avoir une ligne directrice.
Les cinq exemples d’objectifs précédents pourraient se séparer ainsi :
Je veux bâtir une librairie de mixin SASS.
- Je vais d’abord voir les bonnes pratiques sur le net.
- Je vais ensuite faire des tests dans Codepen et prendre les plus utiles.
Je veux faire du ES6 dans mon code Javascript.
- Je vais suivre une formation en ligne. (La formation continue est toujours une bonne idée!)
- Je vais mettre en œuvre ce que j’ai appris dans des exercices et utiliser ces nouvelles connaissances dans d'autres projets.
Je veux créer une bibliothèque de blocs réutilisables pour des sites.
- Je vais regarder si je peux m’inspirer ou reprendre des concepts sur le net.
- Je vais lire à propos des frameworks front-end et des meilleures pratiques.
- Je vais travailler tranquillement un petit build front-end qui s'améliorera au fil du temps.
Je veux développer mon propre framework front-end.
- Avec ce que j’ai acquis durant la dernière étape, je suis en mesure de commencer une base.
- Avec ma formation en ES6, je suis capable de faire des composantes facilement réutilisables.
Je veux faire des projets clients.
- Je vais me renseigner sur la gestion de projet.
- Je vais mettre en œuvre les connaissances que j’ai apprises dans mes formations et mes apprentissages précédents.
- Je vais commencer par faire de la pige.
Cette méthode est celle qui fonctionne le mieux pour moi, parce que le sentiment d’accomplissement lié à l’atteinte de chaque sous-but me fait persévérer vers la prochaine étape et j’ai la satisfaction de cocher un objectif dans ma liste. C’est cette constante progression avec des petites victoires régulières qui te permettront de grandir, sans être éparpillé avec plusieurs objectifs non atteints.
L’expérience ne s’achète pas, elle s’acquiert.
Au début de ta carrière en agence, tu seras confronté à beaucoup de choses telles que :
- Des dizaines de projets avec des technologies différentes.
- Des façons de faire différentes des établissements scolaires où tu as étudié.
- Des enjeux de temps et de budget.
- Des collègues avec des personnalités et des compétences variées.
Pour devenir un développeur front-end d’expérience et une ressource centrale dans ton équipe, tu auras principalement besoin de curiosité et d'intervenir sur de nombreux projets pour, justement, gagner en expérience.
La curiosité, un outil à ne jamais sous-estimer
Être développeur front-end en agence, c’est constamment évoluer. Nous voulons toujours améliorer nos procédures et nos outils internes pour la rentabilité des projets. En restant à l’affût de la courbe d’évolution du domaine, on évite de tomber dans des dettes technologiques à long terme.
C’est en allant lire des articles de l’industrie, en expérimentant de nouvelles façons de faire et en analysant les projets sur lesquels tu travailles que tu développeras les compétences qui t’aideront à grandir professionnellement. Tu auras de nombreuses occasions de développer tes aptitudes et ton sens de l’innovation. Tu pourras ensuite partager les nouvelles connaissances acquises grâce à ces petits réflexes avec tes pairs pour créer un enrichissement d’équipe. En te voyant prendre en main ta courbe d’apprentissage et de progression, tes collègues plus expérimentés auront envie de te donner des défis pour que tu puisses constamment te dépasser.
Les développeurs front-end en voient de toutes les couleurs
En agence, tous les projets sont différents. Tu peux te retrouver sur un nouveau mandat dans un Wordpress à jour avec un framework front-end solide, comme tu peux avoir à intervenir sur un vieux projet repris d’une autre agence ayant besoin de mises à jour, avec un framework désuet qui ne fonctionne pas très bien.
Cette jonglerie entre les différents projets sera extrêmement bénéfique pour prendre de l’expérience et devenir aussi polyvalent que proactif. En effet, tu devras prendre du recul afin d’analyser les enjeux de développement qui découlent des particularités de chaque projet. À force de revoir certaines situations revenir à travers les mandats, tu auras acquis cette fameuse expérience qui sera bénéfique autant pour toi que pour tes collègues.
Souviens-toi qu’en agence, tous les projets ont des enjeux de temps et de budget. Il faut toujours trouver un moyen d’accomplir les demandes dans ces restrictions sans pour autant compromettre la qualité du travail. En rencontrant toutes sortes de situations, tu développeras avec le temps ta capacité d’analyse et de résolution de problèmes. En étant une personne curieuse, polyvalente et proactive, tu deviendras un pilier au sein de ton équipe. C’est ce qu’on appelle avoir de l’expérience.
En rafale, les bases incontournables du front-end en agence
Ne t’inquiète pas, tes pairs savent que tu commences et ne te demanderont pas le ciel demain matin! L’important, c’est d’être ouvert, curieux et proactif puisque l’expérience viendra avec le temps.
Pour t’aider à prioriser ton apprentissage, je dirais que les bases incontournables pour ton début de carrière comme développeur front-end en agence sont les suivantes :
Une bonne compréhension du HTML et du CSS
Tu auras à intégrer des pages, ajouter de nouveaux blocs, modifier du code existant et, bien-sûr, intégrer des sites complètement nouveaux. Attention! Qui dit nouveau ne veut pas dire tout recommencer à chaque fois.
En agence, on essaie surtout de ne pas réinventer la roue. Tu dois donc développer le réflexe d'écrire du code pour qu’il soit réutilisable dans d’autres projets. Chez Globalia par exemple, nous avons un système front-end qui nous aide énormément puisqu’il regroupe un grand nombre de blocs et utilitaires qui peuvent être repris dans la majorité de nos projets. Cette réutilisation bénéficie non seulement à la rentabilité des projets, mais aussi et surtout à l’équipe front-end en place.
Pour toute la portion du Javascript, ne t’inquiète pas! Je n’avais pas beaucoup de connaissances hors de celles apprises au cégep lorsque j’ai commencé. J’ai acquis la grande majorité de mon expérience en Javascript en travaillant en agence sur une multitude de projets avec des besoins différents. La courbe d’apprentissage est rapide et, avec de la curiosité, tu vas très bien t’en sortir!
Gérer son temps
Le plus difficile pour moi, en arrivant en agence, a été la gestion du temps. Toutes les heures passées sur des projets clients sont qualifiées facturables et doivent être enregistrées dans l’outil de gestion de projets que ton agence utilise.
Ça peut paraître intimidant au début et il est facile de perdre le fil. Tu dois donc te trouver un moyen de garder un suivi des temps que tu passes sur les différentes tâches de chaque projet dans ta journée. Je te recommande fortement de les noter dans un document ou sur une feuille pour aller les enregistrer à l’endroit convenu à la fin de chaque journée.
C’est la meilleure façon de procéder pour éviter d’être complètement confus dans tes heures et d’entrer de l’information erronée. Autrement, ces heures pourraient être perdues, ne pas être représentatives du temps réellement travaillé ou, encore pire, facturées au mauvais client. De plus, quand les gestionnaires de projets et directeurs de comptes n’ont pas l’information juste sur les projets, c’est toute la chaîne de production qui en subit les conséquences.
Adopter une méthodologie de travail ordonnée est une preuve de professionnalisme que tes pairs remarqueront rapidement et apprécieront.
Avoir une structure en front-end
Comme je le disais plus tôt, en agence, tu interviendras sur plusieurs mandats et c’est pourquoi je te recommande fortement de prendre un peu de recul et d'analyser la situation avant de commencer le travail sur un projet. Tu éviteras ainsi beaucoup d'ambiguïtés.
Il me fait donc plaisir de te partager mes étapes secrètes, et je compte sur toi pour garder ça entre nous…bien sûr.
Déterminer la technologie derrière le projet
Savoir si le site est construit en Wordpress, en Craft ou sans CMS par exemple, peut grandement influencer ta façon de travailler dans le projet et c’est important de t’y reconnaître.
Valider s’il y a un système de build front-end
Si oui, prends le temps d’aller voir la structure des dossiers et comment le CSS est monté en arrière. Il y a probablement plusieurs trucs que tu pourrais réutiliser pour ta tâche. Sinon, pose toi la question : est-ce que ça vaut la peine de mettre un système de build pour ce que tu as à faire? Dans la majorité des nouveaux projets, le framework interne de l’équipe est installé par défaut. Il arrive cependant que tu tombes sur un projet repris d’une autre agence qui n’a pas de structure claire, ni de framework intégré.
Il se peut que certains projets aient une dette technologique. Même s'il est indispensable de se garder à jour dans nos pratiques, il faut bien réfléchir avant de se mettre à faire de la réécriture de code. Souviens-toi qu’en agence, il y aura toujours un coût associé aux tâches que tu vas effectuer. Dans un contexte où le code ne te permet pas de réaliser une tâche efficacement, il faut absolument que tu en parles à ton gestionnaire d’équipe afin qu’il t’assiste sur l’enjeu pour ne pas t'éparpiller dans toutes les directions.
Poser des questions
Finalement, le plus enrichissant pour toi dans tes débuts en agence sera de discuter avec les autres développeurs front-end. Chaque individu a ses propres forces et ton apport sur un sujet est aussi valable que celui des autres. Étant un développeur junior, on s’attend à ce que tu pratiques ta proactivité afin de trouver des solutions aux problèmes que tu rencontres sans laisser l’orgueil prendre le dessus. Lorsque tu te retrouves dans une impasse, il faut apprendre à faire la différence entre persévérance et acharnement. Si tu sens que cela n’avance vraiment pas, rappelle-toi que tu travailles en équipe et qu’il y aura toujours une personne ressource pour t'assister.
Pour conclure, cher développeur front-end…
Ton séjour en agence va te faire prendre énormément d’expérience dans le domaine et je crois que toute personne aspirant à devenir développeur front-end devrait passer par là en début de carrière.
La clé de ton épanouissement professionnel réside dans ta curiosité à apprendre et dans la qualité du travail que tu accomplis avec ton équipe. On ne devient pas expérimenté du jour au lendemain, mais avec de petites victoires étalées dans le temps. Si tu doutes encore, pas de problème. Continue tes recherches, pose tes questions et consulte d’autres développeurs front-end prêts à partager leur expérience. Essaie des trucs, discute avec ton équipe, lis des articles sur sidebar.io et csstricks, renseigne-toi sur le domaine et surtout, comme un sage maître Jedi disait souvent : « Do or do not. There is no try. »
Débute ta carrière de développeur front-end dans une agence alliant innovation et dépassement de soi!