Comprendre les métiers du web : le développement

Vous souhaitez comprendre ce sur quoi se penchent ces "geeks", ces "informaticiens", toutes ces personnes qui vous semblent venir d'une autre planète à écrire des choses étranges ? Pour sortir de ces clichés, nous allons tenter de vous expliquer l'univers du développement.

Attention, cet article date de plus de 2 ans maintenant... Il est possible que les infos publiées ne soient plus correctes aujourd'hui...

Cet article sert volontairement des propos simples pour éclairer les novices en notions informatiques. Vous êtes déjà professionnels du web ? Vous connaissez déjà tout ;-) !

Le développement, c'est quoi ?

Pour comprendre ce qu'est le développement web ainsi que ses métiers, il faut disséquer l'histoire, l'environnement et les évolutions du secteur de l'informatique. Le mot "informaticien", par exemple, est un terme qui définit très mal la pluralité du métier.

Historiquement, l'informatique était le moyen d'automatiser des tâches par un système. Un processus autonome dans son fonctionnement où l'Homme a sa part dans la conception et le fonctionnement de l'automate. Étymologiquement, le terme "informatique" balaye donc très large.

Nerd gif

Si l'informatique a une multitude de facettes et d'applications, le métier d'informaticien en est de même depuis les années 2000 et l'émergence du web. Cet essor technologique a étendu le périmètre technique et obligé les professionnels à se spécialiser.

La pluralité technique du développement s'exprime donc par une multitude de métiers. Rien que sur la conception, dans notre cas chez Wanadev, de site web, on peut trouver :

  • Le Webdesigner qui s'occupe de réaliser "l'habillage" d'un projet ;
  • Le Développeur qui va travailler sur les fonctionnalités du projet ;
  • Le Chef de projet technique est un facilitateur entre les équipes techniques et le client ;
  • L'Intégrateur lui, va récupérer le travail du Webdesigner pour le transformer dans un format web ;
  • Un Administrateur système s'occupe du bon fonctionnement de la partie "matériel" du système informatique (serveur, sécurité,....) ;

Cette liste n'est pas exhaustive et il existe beaucoup d'autres métiers tout aussi importants : DevOps, Lead développeur, Architecte, Webmaster, Traffic Manager...

Enfin, pour être complet, le développeur dit "Fullstack" a une connaissance globale qui lui permet d'intervenir sur la plupart des métiers précédemment cités. Le développeur fullstack est une sorte de couteau suisse du web.

Continuons à défricher le sujet en étudiant maintenant le rôle principal du développeur : le développement (ou la programmation).

Le développement, ce jeu de Lego

Pour créer un site internet, le développeur doit utiliser du code (les briques Lego). Ce sont ces fameuses lignes "imbuvables" tapées par les développeurs. Comme chaque projet n'a pas le même niveau de difficulté, il faut choisir les bons outils. Un Lego Technic  ne se monte pas de la même façon qu'un Lego Duplo.

Un développeur ne créé pas un site de A à Z par magie mais utilise un langage pour y parvenir (les blocs de construction) et suit une documentation (la notice de montage).

Il existe plusieurs langages pour faire des sites web en fonction des besoins. C'est tout comme réaliser une voiture de modélisme : en Lego ou en Meccano, par exemple. Le niveau de difficulté de montage entre ces deux précédents choix n'est pas le même, et les résultats seront différents.

Une fois le langage maîtrisé, il est possible de réaliser de nombreux projets mais l’immatérialité de la technologie marque la grande différence avec nos fameux Lego. Là ou le nombre de blocs Lego limite le montage, le développement n'est limité que par la capacité du développeur, de même que certaines contraintes techniques.

Un langage informatique est finalement un moyen d'exprimer une idée ou un fonctionnement d'une manière compréhensible par l'ordinateur. Concrètement, un langage de programmation décrit des instructions pour communiquer entre le concepteur et la machine qui exécutera les ordres (le code source).

Par exemple, prenons le code (en langage HTML) suivant :

<a href="http://www.wanadev.fr">Wanadev</a>

La machine qui lira ce code comprendra que <a est un lien, href permet de connaitre la destination du lien et enfin </a> est la fin du lien. Le résultat sera donc l'affichage par votre navigateur du lien ci dessous :

Wanadev

Facile non ?

Pour le web, il n'y a pas que le HTML, il y a de nombreux autres langages ! Voici une sélection de langages couramment utilisés : Java, PHP, Javascript, Python, Ruby, C, C++, Golang...

La difficulté du développement d'un site internet

Le niveau de difficulté dans la réalisation d'un site internet n'est pas facile à déterminer. La jauge principale d'estimation en terme de difficulté (et aussi souvent en temps de travail) est la personnalisation de la plateforme souhaitée. Grosso modo, **au plus un site sera pointu et unique visuellement & techniquement, au plus il sera long et délicat à développer".

Il existe par exemple des solutions techniques "clés en main", faciles à installer, d'une part, et des outils "sur-mesure" pour répondre à des besoins spécifiques d'autres parts.

En passant par des générateurs de site (CMS) du type Wordpress, Joomla..., le travail du développeur est de paramétrer et modifier une solution existante pour qu'elle convienne au besoin final. Alors que des technos comme Symfony ou Zend (appelés "Frameworks") permettent un développement sur-mesure. Cette seconde solution est souvent préférée pour des gros projets très spécifiques, qui sont amenés à évoluer au fil du temps.

Avis personnel : souvent les solutions "clés en main" sont plus rapides mais surement moins passionnantes que celles où il faut mettre les mains dans le cambouis ;-). En effet, pour ma part, le défi et l’intérêt réside plus souvent dans le création d'un système de A à Z que dans la réutilisation d'une solution existante. Il faut cependant veiller à rester pragmatique. A chaque projet, le bon outil. Vous ne gagnerez jamais le Tour de France avec un VTT, aussi performant et pratique soit-il.

Le développement : un univers extrêmement vaste

Cet article a pour objectif de dégrossir le sujet si vous naviguez dans le noir. En revanche, chaque développeur a sa vision de son métier. Aussi, même si les principes sont similaires, le développement web n'est pas le développement logiciel, par exemple. Si vous ne deviez retenir qu'une chose de cet article, ce serait la phrase suivante :

Développer, c'est un moyen d'exprimer une idée ou un fonctionnement d'une manière compréhensible par l'ordinateur au travers de ligne de codes écrites dans un langage connu des machines.

Enfin, pour être complètement exhaustif sur le sujet, il faut noter que les développeurs ne pourraient pas travailler sans l'utilisation de langages et d'outils créés par et pour la communauté. C'est la force du métier et notre prochain article : l'open-source.

Tags de
l'article

Cet article n'est pas taggué.

Catégories de l'article

Méthodologie Développement

Commentaires

Il n'y a actuellement aucun commentaire. Soyez le premier !

Articles liés