Ilias estime que le développement front-end est plus complexe qu'il ne parait
Les bons développeurs front-end sont-ils rares et difficile à trouver ?

Le , par Olivier Famien

0PARTAGES

5  0 
Les bons développeurs front-end sont-ils rares et difficile à trouver ?
Pour développer les applications web, plusieurs aspects doivent être pris en compte. Nous avons dans un premier temps la partie visible permettant d’interagir avec l’utilisateur et dans un second temps la partie immergée qui traitent les éléments en arrière-plan tels que les bases de données, les paramètres de configuration de l’application web, des serveurs, etc.

La partie visible est réalisée par les développeurs front-end et la partie immergée de l’application web est gérée par les développeurs back-end.

Pour accomplir leurs missions, les développeurs front-end utilisent certaines technologies comme les langages de développement web à savoir HTML, CSS ou encore JavaScript. Les développeurs back-end, par contre, se réfèrent aux outils de gestion de bases de données, aux frameworks client-serveur, etc.

De manière générale, il est reconnu que les aptitudes réclamées aux développeurs back-end sont assez complexes. Mais qu’en est-il des développeurs front-end ?

Ilias Ismanalijev, qui est également développeur frontal et designer, après avoir jaugé la perception que le public a des développeurs front-end a voulu corriger certaines idées reçues qui tendent à montrer cette profession comme un métier assez facile et donc accessible à tout le monde.

Pour lui, même si l’on ne rejette pas les difficultés liées au développement côté serveur, il est toutefois bon de reconnaître que le côté client en dénombre beaucoup et donc s’avère plus complexe qu’on pourrait le penser.

Pour commencer, Ilias souligne que lorsque les développeurs front-end conçoivent leurs applications web, l’usage des CSS commence déjà à poser problème une fois que le site devient assez large ou profond. En effet, il va falloir garder en mémoire tous les petits détails de présentation des documents HTML.

Aussi, dès que l’on touche à JavaScript, d’autres problèmes pointent également le nez. Nous avons entre autres des problèmes de performances dus à l’utilisation de ce langage et des bibliothèques dérivées. Et ces problèmes s’accroissent à mesure que vous vous retrouvez en face d’un grand nombre de lignes de code.

Une autre difficulté également relevée est le changement constant observé dans l’environnement de développement des applications ou sites web. Ces changements imposent de mettre à jour les connaissances acquises à un rythme insoutenable. Et pour le nouveau développeur, cela est encore plus difficile, car dès qu'il met les pieds dans l’environnement il est déjà dépassé. Il doit ainsi chercher sans fin à rattraper son retard avec des outils en constante évolution.

En outre, au-delà de ces fonctions de base, plusieurs autres compétences sont demandées aux développeurs front-end. Ces derniers doivent par exemple être capables de maîtriser les aspects de cache HTTP, l’optimisation du temps de recherche DNS, la sélection du meilleur moteur de présentation CSS pour le projet, etc.

De même, vu que le travail du développeur frontal est directement lié au client, il lui est recommandé d'avoir des notions en design ainsi qu’une bonne compréhension du marketing. Cela sous-entend également, connaitre la psychologie du consommateur, rendre accessible à tout moment le service fourni et maintenir un bon positionnement sur les moteurs de recherche.

À ces éléments, il faut ajouter le volet sécurité qui nécessite de mettre en œuvre des mécanismes de protection contre les attaques de types XSS, CSRF, l’usurpation de DNS, le détournement de clic, etc.

Enfin, cette présentation resterait incomplète si l'on ne parlait pas de la compatibilité avec les différentes plateformes qu'il faut entretenir. En effet, en jetant un coup d’œil uniquement du côté des navigateurs, la tâche non plus n'est pas aisée. Le développeur front-end doit s’assurer que son implémentation est fonctionnelle aussi bien sur plusieurs versions d’un même navigateur que sur différents types de navigateurs. À côté de cela, il faut également tenir compte des différents types d’appareils (mobile, tablette…) et les différents systèmes pour lesquels son code doit être fonctionnel.

Aussi, en considérant le fait que les fonctionnalités des applications front-end sont en interaction permanente avec le volet back-end, Ilias continue pour dire qu’un bon développeur front-end sera forcément amené à mettre la main dans le côté back-end. Et d'ajouter, « un bon développeur front-end doit être également un bon développeur back-end ».

Tous ces éléments poussent Ilias à conclure que le métier de développeur front-end est beaucoup plus difficile que l’on pourrait croire. Et trouver un bon développeur front-end pourrait s'avérer plus ardu que ce que des « non-initiés » pourraient penser. Ces propos viennent rappeler ceux de Bulat Bochkariov, également développeur front-end, lorsqu'il affirmait que « nous travaillons avec des outils de merde sur les plateformes incompatibles gérées par chaque type d’appareil que vous pouvez imaginer... en faisant en sorte que le produit fonctionne pour tout le monde ».

Source : Medium

Et vous ?

Que pensez-vous du point de vue d'Ilias sur le métier de développeur front-end ? A-t-il raison ?

Ou plutôt pensez-vous que cette présentation du métier de développeur front-end est surfaite ?

Voir aussi

Forum développement web

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de dfiad77pro
Membre expérimenté https://www.developpez.com
Le 14/11/2015 à 18:41
Citation Envoyé par NSKis Voir le message
Il y en a marre de ces éternels discours "il manque des spécialistes", "il manque des milliers d'informaticiens, blabla..."

Si il y avait pénurie, les acteurs de l'informatique seraient les premiers à s'en rendre compte parce que, vu leur rareté, on leur proposerait des salaires de ministres!!!!

Est-ce que quelqu'un sur ce forum, a vu son salaire doublé, triplé, ces derniers temps?

Faire croire à une pénurie sert à multiplier le nombre d'étudiant en informatique, pour ensuite pouvoir tirer les salaires vers le bas.
C'est une technique que la Syntec affectionne particulièrement et qu'elle utilise depuis quelques années déjà.

D'autre part, on embauche des bac+5 pour faire du pissage de code, et après on se plain que ça coute trop cher ...
Pour moi un ingénieur et quelqu’un qui conçoit, pas quelqu’un qui se fait tout dicter dans un dossier de spec techniques déjà établi.
7  0 
Avatar de NSKis
En attente de confirmation mail https://www.developpez.com
Le 14/11/2015 à 15:47
Il y en a marre de ces éternels discours "il manque des spécialistes", "il manque des milliers d'informaticiens, blabla..."

Si il y avait pénurie, les acteurs de l'informatique seraient les premiers à s'en rendre compte parce que, vu leur rareté, on leur proposerait des salaires de ministres!!!!

Est-ce que quelqu'un sur ce forum, a vu son salaire doublé, triplé, ces derniers temps?
7  1 
Avatar de captainKirk
Membre actif https://www.developpez.com
Le 14/11/2015 à 15:00
Nous ça fait longtemps que nous ne faisons plus de distinction entre développeurs front-end et développeurs back-end. Nous avons des développeurs, point. Chacun d'eux travaille de manière verticale, c'est à dire qu'il est capable d'intervenir sur n'importe quel aspect du projet. Franchement ça fonctionne bien mieux comme ça.
6  2 
Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 15/11/2015 à 13:26
D'expérience, voir du code HTML et CSS clair, simple et maintenable est extrêmement rare. La majorité des "développeurs front-end" ont appris en dilettante et comblent leurs lacunes en multipliant l'usage de plugins javascript et frameworks CSS inutiles. Cela donne des pages extrêmement lourdes qui chargent des dizaines de fichiers, des feuilles de style qui font des milliers et des milliers de lignes impossibles à optimiser tant la tâche est énorme. Bootstrap est l'un des problèmes majeurs actuels avec des milliers de lignes de CSS chargées pour un résultat qui n'en prendrait qu'une centaine en se limitant aux besoins réels du projet.

Le soucis est que peu de "developpeurs front end" (souvent des webdesigners ou des développeurs back-end qui s'y sont mis par besoin) font la démarche de se documenter sur les subtilités des différents langages utilisés, les bonnes méthodes de travail et les conventions.
3  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 16/11/2015 à 8:25
Citation Envoyé par air-dex Voir le message
C'est beaucoup trop bas niveau pour du développement Web moderne.
On à pas tout à fait la même notion de bas niveau je crois ...

Essai de faire une custom view sur un canvas (sans librairie) avec gestion des événements et tout le basard , tu vas voir que les balises html et le css c'est quand même plutôt haut niveau.
C'est tellement pas mal que toutes les UI récente se base sur le même principe (Android , JavaFX, WPF ...).

Pour revenir au sujet , il y'a 10 ou 15 ans le front end c'était compliqué. Il fallait gérer l'absence d'outils de débogage, les navigateurs , les versions d'IE qui n'évoluait pas , le js désactivé , ou mal interprété, les version de CSS disparates, bref c'était la merde. Actuellement on est simplement confronté à des problématiques d’ingénierie logiciel communes, on à des framework qui commencent à être assez aboutis , c'est devenu moins complexe qu'avant (à mon humble avis).
3  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 14/11/2015 à 15:05
Selon moi , le développement (front ou back) doit être complètement déconnecté du design et de l'ergonomie. Ce n'est pas le même métier ! Ce ne sont pas les mêmes thématiques, contraintes, outils... pour m'être égaré un moment, je peux aussi affirmer que les conférences UI/UX n'ont rien à voir avec les conférences de développement.

Certes en tant que dev front, j'ai appris quelques trucs en travaillant aux côtés de designers et d'ergonomes. Mais c'est loin d'être suffisant pour m'affirmer professionnel dans le domaine. J'ai un peu honte du design de mes sites persos Nos designers et ergonomes sont aussi amenés parfois à faire de l'intégration et un peu de code JavaScript. Eh bien ils ont appris quelques trucs aussi, mais c'est loin d'être acceptable. Généralement ça va à la poubelle dès qu'on reçoit les livrables

Ça ne veut pas dire qu'on peut pas faire les deux, peut-être que Ilias est un touche-à-tout. Mais d'après moi c'est préférable de chercher deux profils différents, chacun sa spécialité.
2  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 15/11/2015 à 15:15
Citation Envoyé par air-dex Voir le message
Si le développement front-end Web est plus complexe qu'il n'y parait, c'est aussi parce qu'au fond les technologies de développement front-end Web n'évoluent pas ou peu. Il y a une manière de concevoir des UI Webs qui est celle du trio HTML-CSS-JavaScript et si tu veux faire des UIs Web, c'est ça ou rien. Pire, le HTML 5 accentue ce problème. Tout ce qui n'appartient pas au trio HTML 5 - CSS 3 - JS est tabou, comme par exemple Flash quelles que soient ses qualités. HTML 5 donne également beaucoup trop de place au CSS. HTML devient un vulgaire sac à composants de page Web et tout est agencé par CSS, un langage fourre-tout où se mêlent architecture d'une page et look and feel de celle-ci. Il faudrait coder ses pages Web avec seulement des <div> et autres <span> et faire tout le reste avec du CSS. Le JS, quant à lui, ne doit être là que pour manipuler le sacro-saint DOM, modifier les propriétés CSS et communiquer avec le backend. Si t'es pas capable de raisonner comme ça alors tu peux faire une croix sur le développement front-end. C'est beaucoup trop bas niveau pour du développement Web moderne.
Au contraire, le web front-end évolue énormément ces dernières années, bien plus que les technos back. C'est d'ailleurs une source de complaintes régulières, car personne n'arrive à suivre toutes les nouveautés.

En responsive web design, domaine que je connais bien puisque c'est mon domaine de spécialisation, le look and feel et le layout sont intimement liés. Si on prend l'exemple d'un menu de navigation par exemple, le positionnement, la taille et le style varient de manière homogène entre différentes media queries. De ce point de vue, CSS est plutôt bien conçu (même si je suis d'accord que le layout en CSS est assez mal foutu). Après, si tu souhaites quand même séparer les deux, tu en as tout à fait la possibilité ; c'est d'ailleurs la démarche choisie par plusieurs frameworks UI qui proposent des composants et des thèmes.

Flash oblige les utilisateurs à installer un plug-in, n'est pas compatible avec de nombreuses plates-formes et présente de grosses failles de sécurité régulièrement. Le web se doit d'être sécurisé et universellement accessible, c'est pour ça que ce sont les éditeurs de navigateurs eux-même qui font le choix de retirer le support de Flash et de tout autre plugin. Et franchement, quand je retombe sur un site full Flash, je ne suis pas mécontent qu'on soit derrière tout ça. C'était une catastrophe, pas accessible, impossible à crawler/inspecter, code fermé, plantages et j'en passe.

Enfin, si tu codes ton HTML qu'avec des <div> et des <span>, je doute que quelqu'un veuille t'embaucher

Citation Envoyé par MikeRowSoft
Pour moi un front-end Web est comme l'ensemble des pages d'administrations ou gestions d'un modem-routeur. Donc somme toute très différent des pages web standard ayant pour objectif de captivé l'intérêt, commercial ou promotionnel ou fonctionnel, des internautes.
Non, web front-end signifie simplement toute la partie côté client d'un site web, côté navigateur si tu préfères. Certains englobent aussi dans le terme les langages de vues côté serveur comme PHP ou JSP, mais tout ça tend à disparaître.
2  0 
Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 16/11/2015 à 5:53
Donc en gros si j'en crois l'article, les webmaster / développeurs de pages webs viennent de découvrir les difficultés que les développeurs de clients lourds connaissent depuis des lustres ? Chuis pas vraiment impressionné...
2  0 
Avatar de rattlehead
Membre expérimenté https://www.developpez.com
Le 16/11/2015 à 11:25
POur répondre à la question on peut tous être dev front to back. dans le temps on l'etait tous. mais aujourd'hui vu c'est plus compliqué. là où moi je mettrais 2 jours à faire une interface un peu sympa, un dev front va le faire en moitié moins de temps. et puis connaitre tous les hacks les petites trucs de css d'optimisation de JS et autres un dev front qui fait ca toute la journée sera franchement meilleur qu'un dev back.
Après perso j'utilise pas mal les frameworks genre bootstrap. Sinon je ferais des beaux tableaux à l'ancienne :-)
2  0 
Avatar de psykokarl
Membre confirmé https://www.developpez.com
Le 14/11/2015 à 14:17
Ilias comme beaucoup confond, ou a confondu, ce qui relève de la complexité et ce qui relève de la criticité.
Dans le Web, ce qui est Front peut être autant, voir d'avantage, compliqué que ce qui est Back. Le truc est que très souvent un problème Front se traduit par des problèmes d'affichage ou d'interactivité. C'est toujours moins grave que des problèmes au niveau de la gestion du système ou la sécurisation des données. Il est techniquement possible de gérer l'aspect critique coté Front, mais cela ne se fait pas pour des raisons évidentes de sécurité.
Indépendamment des questions stratégiques de mise en oeuvre, la complexité du Front peut varier de la simple page HTML à la papy à un enchevêtrement complexe de XHTML et de canvas interactif animé à coup de webgl avec prise en compte de pas mal d'aspect sécurité.
1  0 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web