Front-end ou back-end telle est la question…

En développement, on entend souvent parler de « back » et de « front » mais concrètement qu’est-ce que c’est ? Et quelle est la différente entre les deux ? Est-ce les mêmes personnes qui s’en occupent également ?

Le développeur back-end

Déjà, premier point, le développeur back-end programme la partie cachée d’un site web ou d’une application, le coté serveur, administrateur. Contrairement au développeur front-end, qui lui, s’occupe de la partie visible. Selon le contexte, le développeur back-end peut avoir un rôle plus ou moins large. Il peut aussi bien être un exécutant, qu’un décisionnaire dans les choix techniques.

Il se chargera de l’ensemble des fonctionnalités d’un site web. A la différence du développeur front-end que nous aborderons plus tard dans cet article, le développeur back-end ne s’occupera ni de l’aspect ergonomique ni de l’esthétique du site ou application. Mais de l’aspect technique et fonctionnel. Il travaille dans l’ombre. Il peut concevoir un site web et dans ce cas réaliser lui-même l’architecture technique du site. Ou bien rester sur la plateforme instaurée et adapter des solutions techniques sur celle-ci.

Le développement back-end peut donc englober la mise en place, la configuration et le maintien de plusieurs composantes essentielles d’un projet web ou d’une application :

  • Le serveur où sera hébergé le site internet qui doit tourner 24h/24. Il est souvent géré par un administrateur système.
  • La base de données où toutes les informations seront stockées, comme l’identifiant d’un utilisateur, le mot de passe crypté ou les commandes effectuées lors d’un achat pour citer les exemples les plus simples.
  • L’application, c’est à dire le site internet dans sa globalité et la logique qui permet aux différentes pages, au serveur et à la base de données d’interagir.
  • Le back-office dans certains cas, une interface interne utilisée par les administrateurs du site afin qu’ils puissent intégrer du contenu comme du texte facilement.

En complément de ces missions, les développeurs back-end doivent connaître plusieurs Frameworks propres à chacun de ces langages. Ceci afin de rendre le code plus clair, plus rapide à écrire et facilement modifiable que ce soit en solo ou dans une équipe. Par exemple :

  • PHP : Symfony, Laravel, CakePHP
  • Java : Spring, Hibernate, Maven, Struts
  • Ruby : Ruby on Rails
  • Python : Django, Pyramid, Flask
  • JavaScript : Node.js

Le développeur back-end peut également être amené à :

  • Former le client lorsque le site internet lui est livré,
  • Apporter un support technique tout au long de la vie du site internet,
  • Effectuer de la veille et des corrections suite à des problèmes remontés par le client.

En résumé le développeur back-end détient de fortes compétences techniques et sait gérer un budget ainsi que son temps de travail pour être dans les délais de réalisation. Il possède une culture générale informatique large. Il a conscience du fonctionnement d’un serveur, il est force de proposition et à l’écoute des évolutions du marché.

Le développeur front-end

Parlons maintenant du développeur front-end. Contrairement à son collègue, celui-ci va se charger de la partie visible de la construction des sites ou des applications. D’un premier abord on pourrait croire que le développeur front-end et un intégrateur web font sensiblement la même chose. Pas vraiment. Il a un rôle plus important dans la création d’une solution web grâce à ses nombreuses compétences en développement.

C’est pourquoi on parle aussi de développeur intégrateur web, il contribue largement à ce que l’utilisateur profite d’une interface d’utilisation agréable via l’interface ergonomique dont il a la responsabilité du développement.

Grâce à sa connaissance de plusieurs langages de développement comme le HTML, CSS et Javascript, le dev-front crée des pages web en suivant les maquettes d’un graphiste ou d’un webdesigner (on en reparlera dans un autre article promis).

Les missions principales d’un développeur front-end sont bien sûr différentes du développeur back-end, bien qu’ils collaborent étroitement entre eux.

  • L’objectif principal est de rendre, ou de maintenir, le site fonctionnel, intuitif et rapide tout en respectant les normes W3C. Un code de qualité et des tests pré-production rigoureux sont nécessaires.
  • Aussi, le développeur front doit intégrer dans leurs codes différentes balises bien précises afin de le rendre SEO-friendly, pour mieux référencer le site et amener du trafic.
  • Enfin, une veille technologique permanente est indispensable afin de rester à jour par rapport aux multitudes d’innovations du secteur et de maîtriser les solutions les plus efficaces du marché. Ça, c’est le cas aussi pour un dev back.

Quelles qualités pour devenir développeur ?

Rigueur, pragmatisme et organisation sont des qualités primordiales pour tout développeur. La curiosité et la passion pour la discipline sont particulièrement importantes dans le front-end afin de s’adapter aux évolutions technologiques. Niveau connaissances, trois technologies principales sont à la base du front-end :

  • Le HTML : il permet d’incorporer tous les éléments (textes, images, etc..) dans une page,
  • Le CSS, lui, sert à modifier l’aspect de ces éléments (couleur, taille) et leur position,
  • Enfin, le JavaScript est nécessaire pour proposer du contenu dynamique, effectuer des actions, des effets esthétiques, des menus interactifs et plus encore.​

Avec de la pratique et de l’expérience, le développeur front-end peut devenir dev full-stack s’il maîtrise les langages et les CMS que maitrisent les développeurs back-end. Un développeur full-stack est capable de tout gérer seul, du back-end au front-end et peuvent devenir indépendant facilement.

Ils peuvent également se diriger vers une carrière artistique en devenant designer UI/UX ou Webdesign. Dans ce cas, c’est une maitrise des logiciels de maquettage et de création qui se rajoute à son arc.

En résumé, le développeur front-end détient de fortes compétences techniques pour comprendre les développeurs back-end. Il doit également bien gérer son temps de travail pour être dans les délais de réalisation. Il possède une culture générale artistique et un intérêt pour celle-ci étant en constante communication avec un graphiste/maquettiste.

Le mot de la fin

Au final, ils sont tous les deux les faces d’une même pièce. Le développeur front-end n’existe pas sans le développeur back-end, et vice-versa. Pour développer un site Internet ou une application, les deux parties doivent travailler ensemble pour faire avancer le projet. Il n’y a donc pas vraiment lieu de chercher à différencier les deux profils. Tout ce dont vous avez à vous préoccuper, c’est que vous avez besoin des deux pour réaliser un site web performant ! Et si l’aventure vous tente, initiez-vous au langage de programmation !