2©AlejandroEscamilla
Posté par Marion Guillou | 2 années

Dossier : les front-end développeurs à la loupe

Focus sur la profession de front-end développeur et ses principales caractéristiques.

La profession de front-end développeur est indissociable de la révolution numérique sans qui elle n’existerait pas. Si le métier d’ingénieur en informatique a déjà quelques décennies au compteur, les ingénieurs front-end, ou plus généralement les front-end développeurs, dessinent encore chaque jour les contours de leur activité, en perpétuelle évolution.

Qu’est-ce qu’un front-end développeur ?

Un front-end développeur, comme son nom l’indique, s’occupe du « devant », du « visible », soit de la création d’une interface claire, facile et rapide d’utilisation. Avec l’évolution des pratiques  –  le succès des applications mobiles par exemple – les développeurs front-end se doivent de maîtriser un certain nombre de technologies et de langages informatiques. AngularJS, jQuery ou encore Backbone.JS peuvent ainsi être cités comme les environnements technologiques les plus populaires en France en 2014. Cependant, le métier de développeur front-end ne se résume pas à une liste de compétences figée. Dans un article publié sur Quora, le front-end Bulat Bochkariov explique que contrairement aux ingénieurs système, chargés de rendre la navigation stable, efficace et la plus rapide possible, les front-end cherchent en permanence à améliorer l’expérience utilisateur en prenant garde à ne pas faire fuir ces derniers lors de leurs manipulations. En d’autres termes, si les ingénieurs système produisent un max d’algorithmes, les front-end jonglent avec une quantité d’outils et de plateformes afin de garantir que le produit qu’ils développent fonctionnera correctement pour tout le monde.

Pour mieux le comprendre, nous avons demandé à deux développeurs front-end de nous livrer leur définition du métier.

Mathieu Triay, 25 ans, @MathieuLoutre

mathieu_triay

« Pour moi, être un développeur front-end, c’est plus que d’assembler des librairies à tour de bras. Le but, au delà de la construction de l’interface, c’est de façonner l’expérience de l’utilisateur.

On ne peut pas parler du développeur front-end sans parler du designer, qu’il s’agisse d’une seule et même personne ou non. Un développeur front-end doit en effet travailler activement avec un designer pour faire ressortir le meilleur des deux professions. Le développeur apporte une dimension technique (est-ce que c’est possible ?) mais aussi fonctionnelle. Bien sûr, cela ne réduit pas le rôle du designer à “faire en sorte que ça soit joli”, bien qu’à mon avis, le designer ait le meilleur rôle. Il met en place une vision du produit, les codes et les concepts de l’interface. Son rôle est de voir grand et d’établir un guide, un “look and feel”. C’est ensuite au développeur front-end de ramener les choses à la réalité. Sa responsabilité est de bien comprendre la vision du designer afin d’ensuite pouvoir travailler tout seul sur des petites modifications.

La dernière partie du travail, c’est d’être à l’écoute de l’utilisateur et de travailler son empathie. La capacité à se mettre à la place de l’utilisateur qui rencontre une interface pour la première fois est très importante. C’est là que la lecture et la recherche sur l’interaction et le “motion design” prend tout son sens. Notre travail n’est donc pas seulement de produire une interface statique imaginée par un designer, mais de prendre le pas et de la rendre vivante et agréable à utiliser.”

Stéphane M., 24 ans, @stephane__

Capture d’écran 2015-02-12 à 13.15.19

“Si l’on traduit bêtement front-end en français on obtient la “partie de devant”, ce qui n’est pas entièrement faux mais laisse les braves gens dans le flou total concernant cette profession chaque jour plus pertinente avec la croissance des “consumer electronics”, ces appareils qui s’adressent au grand public qu’ils soient téléphones, montres ou micro-ondes.

Les développeurs front-end se placent, dans le spectre du développement informatique, sur toute la partie visible (“devant”), c’est à dire l’interface dont se servent les utilisateurs pour interagir avec le produit. De l’autre côté du spectre se trouvent les développeurs back-end, qui sont eux en charge de fournir les fonctionnalités brutes, que ce soit de la recherche (trouver tous les restaurants dans un certain rayon), du calcul (basé sur vos recherches Google, quels films êtes-vous susceptible d’aimer ?) ou de l’organisation de données (stocker les résultats d’un formulaire).

Traditionnellement, les développeurs front-end se chargent donc de coder les données reçues (reprenons l’exemple d’une liste bête et méchante de restaurants) pour permettre à l’utilisateur de les afficher (une page web avec une jolie liste, des photos, etc) et éventuellement d’interagir d’une façon ou d’une autre avec ces données (laisser une review).

Et c’est là que réside l’écrasante difficulté du métier : l’utilisateur ! Si vous avez déjà observé un membre de votre famille réticent à la technologie utiliser un ordinateur ou un téléphone, vous savez déjà que ces gens-là sont capables du pire, que ce soit cliquer cinquante fois sur le même bouton ou ignorer la plupart des informations présentées à l’écran quand un problème survient. C’est la lourde tâche du développeur front-end que de créer une interface qui soit non seulement intuitive, mais qui résiste aussi aux indénombrables scénarios d’erreurs (et on saluera la loi de Murphy comme il se doit à l’occasion) une fois que le produit est livré au grand public.

N’oublions pas aussi les résolutions d’écran différentes (téléphone, télé, ordinateur), les erreurs de l’autre côté du spectre (panne réseau, disque dur) et le grand classique du management : “et si on rajoutait un bouton ici ? Ça prend cinq minutes non ?”

En conclusion l’attrait principal du métier de développeur front-end reste le privilège de coder et de construire quelque chose qui est utilisé directement par l’utilisateur, et de fournir un effort visuel pour un rendu élégant pour peu que le designer (qui est parfois la même personne) soit talentueux. Votre maman ne comprend toujours rien à ce que vous faites, mais au moins vous pouvez lui montrer quelque chose.”

La journée type d’un développeur front-end

Le développeur front-end commence en général sa journée par “fixer” les bugs qui lui ont été reportés la veille. Le temps passé au “débugage” peut ainsi être très important, surtout lorsqu’il faut aller chercher ce qui coince dans un code écrit par un autre développeur.

Il travaille ensuite sur le produit en lui-même, c’est à dire ajouter ou améliorer des fonctionnalités en se basant sur les retours utilisateurs dont il dispose.

Compte tenu du caractère évolutif du développement informatique  – ces cinq dernières années ont par exemple vu le développement mobile et pour objets connectés prendre une importance nouvelle et considérable  –  le développeur front-end doit aussi consacrer une partie de sa journée à se tenir au courant des dernières tendances en matière de technologies, tout en observant ce qui se fait chez la concurrence.

Lire notre interview de Florian Morel, frenchie front-end chez North Kingdom. 

Les développeurs front-end à suivre sur Twitter

Capture d’écran 2015-03-02 à 14.36.05

La notion de communauté est très importante chez les développeurs. Nombre d’entre eux expliquent avoir amélioré leurs compétences grâce aux conseils donnés par d’autres développeurs. Au moment de se choisir un emploi, ils s’intéressent d’ailleurs à leurs futurs collègues et, si l’équipe qu’ils vont éventuellement rejoindre est composée de développeurs connus ou qu’ils admirent, cela peut peser dans la balance. En effet, le métier de front-end est marqué par la nécessité d’être constamment en apprentissage.

Afin de se tenir au courant des dernières tendances, les développeurs front-end peuvent suivre les actualités du site Hacker News ou bien de Smashing Magazine (en anglais), les profils de leurs développeurs préférés sur Github, ou encore faire usage à bon escient de Twitter.

Voici donc une liste non-exhaustive de développeurs front-end à suivre sur Twitter :

@addyosmani : développeur chez Google

@paul_irish : développeur chez Google

@MoOx : développeur freelance

@iamwarry : développeur chez Typesafe

@julien_rno : développeur chez Akqa Shangai

@nicolasdavi : développeur chez Anonymous

@makio64 : développeur chez Makiopolis

@brunocharrier : développeur chez Uzik

@tristannicoleau : développeur chez Uzik

@Claire_So : développeur chez Octove and Octave

@coucousirkan : développeur chez Octove and Octave

@jeremymarc : développeur chez Remixjobs

@mrgnou : développeur chez Anonymous

@pierrerossignol : ex-développeur chez B_Reel

@mr_doinel : développeur chez AREA17

@Superguigui : développeur chez HelloHikimori

@Danetag : développeur freelance

@sarrimaxime : développeur chez Blank

@jcsuzanne : développeur freelance

Comment devenir front-end développeur ?

Selon une étude réalisée en interne par Remixjobs à partir de plusieurs milliers de développeurs interrogés, 35% d’entre eux (toutes compétences confondues) sont issus de grandes écoles, et ont un bac+5; 46% ont entre deux ans et cinq ans d’expérience en programmation. Deux tendances apparaissent ainsi : la variété des formations possibles pour devenir développeur, et l’importance de l’expérience en programmation, qu’elle ait été acquise au sein d’une start-up ou bien à travers des projets personnels. “La formation la plus appropriée pour devenir front-end, c’est le travail personnel et les échanges avec les autres développeur” expliquent de concert les front-end interrogés. “Peu importe d’où l’on vient, à force de travail, on arrive toujours à obtenir ce que l’on veut.” Plutôt encourageant !

L’apprentissage du code en autodidacte doit cependant être mis en valeur, à travers par exemple le site Github. Il est en effet très important pour un futur employeur de pouvoir consulter les projets en open source de son potentiel candidat, pour voir de quoi il est capable. Pour un développeur, un profil Github à jour est en soit aussi important qu’un CV.

S’il n’existe pas de “formation type” pour devenir front-end développeur, deux écoles sortent cependant du lot, il s’agit de l’Hetic, numéro des écoles web depuis douze ans, et des Gobelins, l’école de l’image et du design numériques, toutes deux basées à Paris.

Pour aller plus loin : lire notre interview de Jean-Christophe Suzanne et Maxime Sarri, créatives front-end développeurs