Retour aux articles

L'agence

WanadevStudio

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.

@ 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.

Commentaires

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

  • Tests automatiques fonctionnels d’applications 2D/3D

    Il y a 7 mois

    Comme nous le disions dans cet article, l’automatisation des tests dans le développement logiciel est indispensable : dès lors qu’une application commence à avoir un minimum d’importance, les tests automatiques permettront de gagner énormément de temps en évitant de reproduire ad vitam æternam les mêmes tests manuels, et éviteront beaucoup de régressions. Dans cet article, nous allons présenter différents types de tests automatiques dans le cadre plus spécifique d’applications 2D/3D, puisque c’est ce que nous faisons ! Cela va du test basique qui clique sur 3 boutons aux tests de plusieurs minutes reproduisant les actions comme un véritable utilisateur. Accrochez-vous, c’est parti !

  • Configurateur web à l'abonnement : forces et faiblesses

    Il y a 8 mois

    Aujourd’hui, si vous cherchez à mettre en place un configurateur sur votre site, deux grandes possibilités s'offrent à vous : les solutions par abonnement (du type SaaS) ou le développement sur mesure. Au premier abord, les solutions semblent proches, mais les enjeux sur le long terme eux, sont bien différents.

  • Les frameworks front, tous les mêmes !
    Méthodologie

    Il y a 9 mois

    C'est une phrase que j'ai osé sortir un jour dans la salle de pause de Wanadev. Je ne sais plus exactement avec quel collègue je discutais, j’essayais de le rassurer, il possédait déjà une certaine expérience avec React et allait devoir, en arrivant sur le projet sur lequel je travaille, se mettre à Vue.
    Il a malheureusement fallu qu'un autre collègue de passage nous entende pour ne pas trouver la conversation inintéressante et suggérer que j'en fasse un petit talk pour nos réu du lundi. Et, de fil en aiguille, me voilà en train d'en faire un article de blog. Comme quoi, note pour moi-même, il faut toujours se méfier des discussions dans les salles de pause.

  • [NOVEMBRE 2021] C'est la gazette de Wanadev !
    Méthodologie

    Il y a 12 mois

    Retrouvez ici les informations et actus du mois de novembre de l'Agence! Au programme de cette édition : découvrez le configurateur de fenêtre développé pour Caseo, recontrez François Deleglise, notre directeur communication et un nouvel espace de jeu pour les professionnels du loisir en VR. Bonne lecture !

  • Un peu d'ingérence dans votre infogérance ?
    Méthodologie

    Il y a 2 ans

    Même si les impacts sont difficiles à mesurer, on peut dire qu’il a eu un avant et un après incident OVH. Sans épiloguer sur l'incendie du 5 mars 2021 dernier, un petit vent de panique a soufflé sur les milliers de clients découvrant les problématiques de sécurisation des données. Les réactions à chaud d'une partie des utilisateurs (touchés ou non) montrent la méconnaissance et l'incompréhension qui existent dans les offres d'hébergement. Qui est responsable ? Qui fait quoi ? Comment vérifier mon offre ? Voici quelques clés de compréhension.

  • Améliorer la qualité avec les tests et la review

    Il y a 2 ans

    L’importance des tests et de la revue de code dans le cadre du développement logiciel est parfois négligée ou passée au second plan. Cet article a pour but de montrer que les tests logiciels constituent une étape cruciale qu’il faut considérer avec beaucoup de rigueur.