Edensia, 12 rue des Devezes, 34660 Cournonterral, France

E : info@edensia.com T : +33 6 80 42 82 58

  • Black Facebook Icon
  • Black LinkedIn Icon

Ingénieur Full Stack : mythe ou réalité aujourd'hui ?

Mis à jour : 25 déc 2019


Peut-on vraiment avoir un haut niveau d'expertise du back-end au front-end?

Qu'est-ce qu'un développeur Full Stack? Un développeur Full Stack est un informaticien capable de réaliser des tâches à n'importe quel niveau technique de la pile des différentes couches d'une application. Rigoureusement, dans le monde technologique d'aujourd'hui, il devrait donc être capable :

  • configurer l'infrastructure matérielle et le système d'exploitation ainsi que les dépendances entre les différents composants logiciels à utiliser ;

  • concevoir, manipuler et interroger des bases de données ;

  • concevoir le code de back-end et les API d'accès à ces données sous forme de webservices, en utilisant des langages dit back-end comme Java, Python, Ruby ou PHP ;

  • concevoir le code front-end qui est exécuté sur la plateforme de l'utilisateur, le plus souvent un smartphone ou un navigateur Web, dans des langages tels que JavaScript et ses bibliothèques, HTML ou CSS ;

  • être capable de gérer et planifier un projet avec des méthodes de développement agiles telles que Scrum ou Kanban, pouvoir interagir avec le client et ses besoins, et documenter l'ensemble des parties du projet.

Pourquoi est-il important ? De la définition adoptée précédemment, pour le moins qu'on puisse dire, un développeur Full Stack est quelqu'un de familier avec chacune des couches d'une application informatique, même s'il a souvent une affinité ou des compétences plus étendues dans l'une d'elles. Cette connaissance large devrait donc lui permettre de travailler sur un projet de A à Z sans avoir à recourir à d'autres développeurs - du moins, pour les petits projets. C'est donc ce genre de profils dont rêvent les RH. Après tout, il s'agit d'avoir un seul gars capable de faire le travail de deux ou trois personnes, ce qui est intéressant en termes d'économies. Ce n'est donc pas une surprise de voir de nombreuses offres d'emploi pour ce genre de profil. Le fait qu'il soit polyvalent permet en outre de faciliter les remplacements ponctuels ou durables au sein d'une équipe. Pour un gros projet, le développeur Full Stack est également important. Un lead developer Full Stack par exemple pourrait rendre la vie plus facile aux autres développeurs sur le projet, puisqu'il sait comment les différentes couches communiquent et s'articulent. Mais qu'en est-il dans la réalité ? Dans la réalité, il faut reconnaitre qu'il est aujourd'hui difficile, voire impossible, de trouver des profils tels que décrits ici. Pour espérer trouver des développeurs Full Stack, avec l'allure à laquelle les technologies innovantes aujourd'hui deviennent obsolètes demain, il faut commencer par restreindre la définition de Full Stack à : back-end + front-end. Là encore, ça ne nous permettrait pas systématiquement de trouver des développeurs Full Stack à tous les coins de rue. Parce que ce qu'on voit le plus, ce sont des développeurs qui penchent le plus vers l'un ou l'autre, surtout que pour chaque couche, la pile de technologies explose constamment.


#Développement #FullStack #Scrum