C’est quoi un développeur ?

Avant d’entrer dans les détails de ce métier si complexe, commençons par enfoncer une porte ouverte en nous posant une question simple mais déterminante : qu’est-ce qu’un développeur ?

Développeur : définition

Le développeur est un technicien en charge de la réalisation d’un système ou d’une application : site web, appli mobile, logiciel embarqué, jeu vidéo, distributeur à billets... Lors de la conception d’un projet, on exprime les besoins fonctionnels, on détaille ce qu’il doit s’afficher, ce qu’il doit se passer. Le rôle du développeur est de traduire ces besoins en code ; un code que la machine pourra comprendre et exécuter.

Cours HTML

Pour ce faire, le développeur peut s’appuyer sur plusieurs langages comme le JavaScript, le C, le SQL, le Java, le HTML… Il existe de nombreuses technologies différentes, pour des utilisations différentes et des contextes différents. Mais on peut tout aussi bien développer la même chose avec plusieurs langages ! La phrase que vous lisez actuellement a été générée par du JavaScript, mais elle aurait pu être généré par du PHP, du Ruby, du Python...

Que fait un développeur au quotidien ?

Même si le but du jeu est de traduire un besoin en code, le métier de développeur ne se résume pas simplement à coder. Taper une ligne de code, c’est peut-être même le plus facile ! Encore faut-il savoir ce qu’il faut coder, savoir s’organiser et architecturer une application, respecter les bonnes pratiques de sécurité, avoir un environnement de test… Savoir développer, c’est avant tout avoir la capacité d’analyser et d’anticiper des problématiques, afin de concevoir une solution qui répond efficacement au problème posé. Voyons dans le détail :

1

Décrypter un besoin

Avant de se lancer dans son éditeur de texte, le développeur doit définir une roadmap. À savoir une sorte de chemin sur lequel il va placer les étapes de réalisation de l’application à développer. Il va donc prendre le temps et le soin d’étudier le cahier des charges qui lui sera confié et déterminer les besoins techniques qui en découlent.

Le dev va souvent devoir reprendre des éléments qui ont été conçus par d’autres membres de son équipe : graphiste, chef de projet, concepteur-rédacteur… Des intervenants non techniques qui peuvent formuler des spécifications incomplètes. Il faudra donc bien souvent écouter, échanger et être force de proposition, afin de cheminer le besoin exact. Ce fameux « savoir-être » indispensable dans ce métier, qui pèse parfois bien plus lourd dans la balance que la simple capacité à écrire une ligne de code.

Logique mathématique
2

On passe au développement

Une fois que le plan est tracé, on peut commencer à coder. C’est pas le tout de déterminer avec ses collègues le besoin technique, il s’agit maintenant de se retrousser les manches pour matérialiser tout ça. Le travail du développeur sera alors de créer toute une architecture de code ; concrètement, des dossiers et des fichiers textes dans lequel on écrit du code informatique.

Et c’est là que ça se complique : il en faut du code pour créer une application entière ! Le dev va alors utiliser toute une série d’outils ainsi que des bouts de code déjà créés par d’autres développeurs. On appelle ça l’environnement de développement, et ça nécessiterait certainement un site tout entier pour en parler !

Langages informatiques
3

Code, rinse, repeat.

Une fois que l’environnement de dev est installé et configuré sur la machine du développeur, c’est là que commence le gros du boulot. Étape après étape, fonctionnalité après fonctionnalité, le développeur code tout ce dont le projet a besoin.

On distingue souvent deux parties distinctes : l’interface que l’on nomme « front-end », c’est-à-dire ce que voit l’utilisateur, et les coulisses, le « back-end », où s’effectue le traitement, les calculs et la persistance des données. Par exemple, pour un site web : le front, c’est le code qui permet d’afficher ce que l’on voit dans le navigateur ; le back, c’est le code qui permet de traiter les requêtes sur le serveur, d’enregistrer votre commande, d’envoyer un e-mail…

Lego
4

Allez, on envoie en prod ?

Même quand tout est codé, c’est loin d’être fini !

Avant d’envoyer « en production » — c’est-à-dire publier l’application pour la rendre accessible aux utilisateurs — on doit s’assurer que tout fonctionne bien. On va donc naviguer sur l’application, s’essayer à toutes les fonctionnalités et tous les chemins utilisateurs possibles pour déceler les malfaçons et les bugs. On fait alors un reporting de bugs où l’on listera toutes les corrections que l’équipe de développeurs devra apporter au projet.

Mais cela ne s’arrête pas là. Le développeur va aussi rédiger des tests unitaires et fonctionnels. Ce sont des cas d’utilisation des fonctions qu’il a codé ainsi que des scénarios utilisateurs qui peuvent arriver, afin d’être certain que l’ajout d’une fonctionnalité n’a pas cassé la fonctionnalité précédente. Une bonne pratique de développement consiste même à créer ces tests en même temps que l’on code, voire avant même d’avoir codé. Cela permet de tester tout le code rédigé au fur et à mesure. Du code pour tester du code, c’est pas dingue ça ?

Catapulte
5

Quand il n’y en a plus…

On a testé, on a débuggé, on a mis en production avec l’administrateur système ou à l’aide des outils de déploiement automatique, on peut partir en vacances siroter des Maï Taï ? Ahah, bien sûr… que non. Une fois l’application publiée, c’est le début d’une nouvelle ère : le suivi, la maintenance, l’amélioration. Malgré tous les tests, il peut y avoir des bugs.

Plus probable encore, il peut y avoir des modifications à effectuer, parce que les utilisateurs ne sont pas satisfaits ou que le client souhaite apporter un changement. C’est quasiment inévitable, il va souvent falloir faire évoluer le site, le jeu, le logiciel, rajouter un contenu ou mettre à jour des informations. On a rarement le temps de s’ennuyer quand on est dev, surtout qu’en général, les équipes ont souvent plusieurs projets en parallèle…

cocktail

Et le développeur web ?

Internet fut une révolution, et notamment le web : ce réseau de sites qui comportent aujourd’hui des milliards de pages web sur des millions de serveurs. Parmi les développeurs, le développeur web fait donc partie des spécialités les plus courantes. En prime, le développement web est un bon moyen de mettre le pied à l’étrier, car on a tous sous la main un navigateur web, sur notre ordinateur, notre tablette ou notre téléphone.

Le web est partout. Certaines technologies web sont incontournables, comme le HTML pour écrire du contenu, le CSS pour le décorer ou le JavaScript pour les interactions côté front-end. Sur la partie back-end, on retrouvera du PHP, du Python, du Java, mais aussi encore du JavaScript, langage qui peut s’exécuter des deux côtés !

On creuse le sujet ?

Attardons-nous maintenant sur le développement web et ses différents métiers.

Les spécialisations web