Les technologies évoluent d’année en année et le secteur numérique nécessite de plus en plus de professionnels. Si vous faites le tour de Linkedin ou des annonces sur le web vous voyez bien que des métiers sont très en demandés. Je pourrais parler des métier qui recrute le plus comme les data miners, les métiers du webmarketing, mais plus encore des développeurs. C’est sur ces derniers que j’aimerais m’attarder aujourd’hui. Plus spécifiquement sur le métier de développeur web et mobile. Comment devenir développeur ? Combien on gagne ? Quelles sont les évolutions possibles ? Voici les réponses auxquels nous allons répondre.

Que fait un développeur web et mobile ?

Si vous en êtes arrivé à cet article, c’est que vous avez plus ou moins la réponse. Le développeur informatique est ce professionnel qui écrit du code. Du code écrit en plusieurs langages de programmation. La diversité des langages permet de créer des applications pour le web, pour mobile, des logiciels SAS ou compilé. Il doit ensuite maintenir ces applications et les faire évoluer dans le temps…

Le « Dev » est aussi une personne qui est passionnée pour la technologie, qui aime apprendre, reste en veille des nouveautés pour maintenir son employabilité au niveau. L’étude et l’expérience dans le domaine sont en fait l’exigence essentielle pour exceller.

Gardez à l’esprit, que la « programmation » est un terme qui contient en lui-même un large éventail de possibilités. Être développeur de sites Web, développeur d’applications mobiles ou développeur de jeux vidéo exige des compétences et des tâches différentes. Chaque tâche correspond à un certain degré de connaissance : un développeur peut être spécialisé dans la construction d’un site, un autre dans les systèmes d’exploitation, un autre dans les applications, etc.

De plus, il est pratiquement impossible à un développeur de connaître tous les langages de programmation. On peut dire qu’un bon programmeur web connaîtra les langages de base tels que HTML et CSS évidemment, un langage serveur (PHP le plus souvent), le JavaScript, la connaissance d’un ou plusieurs frameworks (React JS, Symfony, Zend). Il sera plus rare de rencontrer un développeur web maîtrisant « parfaitement » dans le même temps le Java, Python ou le Ruby.

Les possibilités d’emploi sont également nombreuses : vous pouvez décider de travailler en tant que salarié d’une entreprise (agence ou chez l’annonceur) ou en tant que freelance.

Développeur front-end, développeur back-end et développeur full-stack

img_5d2d09b65cce9.jpg

Commençons par analyser quelques-unes des possibilités offertes dans les différents métiers liés à la conception d’un site web. Si par le passé (10 ans environ), un développeur était généralement polyvalent, la complexification des projets, les méthodes de travail utilisées (agile) et le nombre de langages de programmation utilisés ont fait que les métiers se sont spécialisés. Aujourd’hui, on désigne les développeurs web et mobile sous trois appellations : front-end, back-end et full-stack.

Le développeur front-end s’occupe de l’interface utilisateur. Cela signifie que son code permet à l’utilisateur d’interagir avec le site (liaisons entre la charte graphite et les fonctionnalités).

Ses langages de programmation (HTML, CSS et JavaScript) seront donc utilisés pour créer la partie esthétique et visible du site.

Alors que le front-end est tout ce avec quoi l’utilisateur interagit directement, le back-end est ce qui se passe en coulisse. Les langages de programmation utilisés en back-end incluent le PHP, Ruby, Python et autres. Donc, si le développeur frontal s’occupe de la partie visuelle et interactive, le développeur back-end construit ses fondations.

Le développeur full-stack et à la place ce programmeur qui a de très bonnes connaissances à la fois sur le front end et sur le back end d’un site. Comme nous l’avons dit, un programmeur ne peut pas connaître tous les langages de programmation, mais le développeur full-stack est celui dont le profil est tout de même le plus proche de cet état de fait. Il connaît généralement HTML et CSS, un langage serveur (PHP), mais est également prêt à utiliser des langages tels que JavaScript, Angular et React. De plus il maîtrise généralement assez bien l’aspect serveur.

Alors, combien gagne un développeur Web? Le salaire paie les journées incessantes d’études et d’engagement. Un développeur front-end commence généralement sa carrière à 30 000 euros mensuels. Il pourra ensuite espérer jusqu’à 50 000 à 60 000 euros par an pour les chiffres seniors. Quant à un développeur back-end, le salaire tourne autour des 30 000 euros par an pour un débutant jusqu’à 100 000 euros pour un senior. Le développeur full-stack commence généralement à un salaire allant de 1 500 à 1 800 euros par mois. Comme sénior, ce sera 3 000€ et plus. En étant polyvalent le dev full-stack trouvera plus facilement des missions en freelance dans ce cas sont salaire sera (une fois la réputation faite) d’au moins 2 000 euros par mois.

Développeur d’applications mobiles

Si votre domaine d’intérêt est les applications de périphériques, vous pouvez envisager de prendre la route pour vous établir comme développeur d’applications.

Un développeur d’applications mobiles crée et développe des applications pour smartphones et tablettes, connaît les systèmes d’exploitation et exploite leurs capacités; une bonne connaissance des langages de programmation de base sera alors accompagnée par l’étude de certains langages Object-C (iOS) et Java (Android) car changer de support signifie aussi changer de langage de programmation.

Le salaire d’un développeur d’application, la réponse dépend du « comment » et du « pour qui ». Dans une entreprise, le salaire va de 1 800 euros par mois pour un junior à 3 500 euros et plus pour un senior; cependant, rien ne vous empêche d’imaginer de créer votre propre application et d’en tirer un revenu.

Quelles études pour devenir développeur web ?

img_5d2d0a0c94129.jpg

Combien de temps faut-il pour devenir programmeur? Répondre à cette question avec certitude, c’est un peu comme prédire qui sera le futur vainqueur de la coupe du monde. Car les cursus pour devenir développeur peuvent être tellement différents que cela peut varier du simple au double.

D’après les avis recueillis, et compte tenu de certains retours d’expérience reçus lors de discussions lues sur des forums thématiques, je pense que je peux donner la moyenne de 4 à 5 ans. Une formation connue et reconnue et justement Formation Bac +4 spécialisée en informatique.

Comme on a pu le voir précédemment, il est important d’après moi d’apprendre par soi-même dans ce métier. Vous trouverez ci-après des sites qui m’aident encore aujourd’hui pour apprendre mon métier.

  • Codeacedemy.com, en anglais, mais vraiment parfait pour étudier les compétences que je viens de vous expliquer
  • W3schools.com, excellente ressource.
  • openclassrooms.com, j’ai commencé à développer grâce à ce site en 2007. Il s’appelait alors le site du zéro.

Compétences générales et compétences de caractère

Je suis convaincu que pour n’importe quel emploi, avant même que les compétences opérationnelles soient nécessaires et indispensables, une série de softs skills et de compétences de caractère qui peuvent vous donner un avantage certain dans l’accomplissement de votre futur métier.

Je suis développeur depuis maintenant 12 ans. Et j’aimerais vous faire part de mon expérience.

Le premier conseil que j’ai envie de vous donner, c’est de maîtriser la langue anglaise. Je ne suis pas ici pour parler de la situation française et du grand fossé linguistique qui nous sépare des autres pays européens, le fait est que pour devenir développeur, les manuels, les ressources et la littérature qui font références sont en anglais. Les ressources sont beaucoup plus nombreuses dans cette langue. Donc si vous voulez comprendre pleinement les précieuses connaissances fournies par ces sources, vous aurez malheureusement à traiter avec cette langue.

En deuxième conseil, je dirai qu’un développeur doit savoir maîtriser parfaitement l’algorithmique. Cette gymnastique mentale est indispensable avant de commencer à développer. Poser son algo sur papier, permet de gagner du temps par la suite.

En troisième, je dirai que le développeur doit être capable de bien cataloguer et trier ses tâches par niveau de priorité. Il peut s’aider d’outils pour le faire. Je pense à des outils comme Trello ou encore Wunderlist.

En quatrième, je pense qu’une bonne gestion du stress est nécessaire. Même si le développeur est moins au centre de la tempête qu’un Product Owner. Il devra tout de même gérer des projets compliqués, des corrections de bugs, des changements en cours de sprints… De sorte que plus vite vous prendrez conscience de la nécessité de gérer les pressions psychologiques et plus vite vous serez capable de mieux gérer les charges et les tâches du métier que vous avez choisi.

En cinquième, la patience. On peut croire parfois qu’un problème peut se résoudre rapidement, avant de se rendre compte que ce n’est pas du tout le cas et que le correctif nécessitera de nombreuses heures de travail. La patience sera alors votre allié le plus précieux. Découpez vos tâches en petits objectifs facilement accessibles.

En sixième, prendre rapidement conscience qu’il n’existe pas de projets sans problème ;).

En septième, flexibilité, flexibilité et encore de la flexibilité. Surtout aujourd’hui en méthode agile.
img_5d2d09d5446dc.jpg
En huit, l’appétence pour le travail en équipe. Que vous soyez employé d’une entreprise ou d’une Agence Web, que vous décidiez d’exercer la profession de freelance, vous travaillerez forcément avec des tiers. Vous n’aurez peut-être pas toujours la même vision sur le projet. Il faut donc savoir travailler en bonne intelligence avec tout le monde. Comme le Web devient de plus en plus complexe, qu’un projet nécessite toujours plus de nouveaux métiers et de nouvelles compétences je ne pense pas qu’on puisse se passer d’une interface avec d’autres professionnels, alors armez-vous d’un esprit constructif et développez dès que possible une aptitude au travail en équipe.

Enfin la neuvième et dernière est à mon sens la capacité à étudier et rester en veille. Je pense qu’il faut aimer apprendre et savoir de remettre en question constamment. Car les langages et les frameworks qui sont à la mode aujourd’hui seront peut-être devenus has been dans quelques mois. Par conséquent, même après les diplômes les études ne seront pas terminées. Une fois dans le monde professionnel, les entreprises permettent généralement de se maintenir en offrant des formations et remises à niveaux.

Devenir développeur : qu’elles sont compétences requises ?

img_5d2d0a694ce6b.jpg

Permettez-moi de faire une prémisse : pour des raisons éditoriales, mais aussi et surtout pour ne pas vous décourager et vous désorienter face à la surcharge d’information, j’ai choisi tout d’abord de limiter le domaine de référence à la programmation pour le Web pur, puis au développement de sites dynamiques (portail rédactionnel, e-commerce) et de conception, développement et maintenance des systèmes de gestion.

Deuxièmement, je devrai nécessairement résumer les compétences que je vais énumérer, bien conscient que pour les étudier et les maîtriser dans leur intégralité et leur complexité, il vous faudra une étude dédiée d’au moins 120 heures par discipline.

Cela dit, je crois que pour devenir un bon développeur Web, il vous faudra commencer à étudier :

Phase 1 : compétences de base

  • Langage de formatage HTML et CSS : basique, essentiel, obligatoire.
  • De plus, commencer à étudier HTML5 et CSS3 sera d’une importance vitale pour vous dans quelques années.
  • JavaScript, un langage de script incontournable côté client et de plus en plus utilisé côté serveur.
  • Côté serveur, le PHP devrait être votre deuxième langue maternelle avec l’anglais.
  • Acquérir des compétences en création, gestion, optimisation et maintenance Base de données.
  • Acquérir des notions de système et sécurité sur le Web
  • Être un minimum à l’aise dans un environnement Linux.
  • La maîtrise de logiciels de base comme Netbeans notepad++, Filezilla.

Phase 2 : les compétences à acquérir,

Avec l’avènement des plates-formes Open Source, vous devrez vous familiariser avec :

  • WordPress, la plateforme d’auto-édition la plus célèbre parmi les plus populaires pour la création de blogs, de magazines, mais aussi de sites commerciaux et de vitrines pour entreprises et réalités professionnelles. Savoir utiliser WordPress, c’est acquérir un plus significatif, si l’on considère la demande croissante des agences et des entreprises pour développer des sites web basés sur cette plate-forme.
  • Prestashop, au lieu de cela est un système de gestion open source parfait pour la réalisation de sites e-commerce. Fin et puissant, je vous suggère de l’apprendre si vous voulez développer des portails commerciaux de manière simple et fonctionnelle.
  • Magento est aussi un CMS orienté e-commerce. Beaucoup plus complexe et « lourd » que Prestashop, est une compétence particulièrement demandée par les Web Agency pour la consultation et l’optimisation du e-commerce existant, je pense qu’il peut être un atout précieux si vous souhaitez travailler sur des sites e-commerces complexes.

Un autre obstacle auquel vous aurez à faire face dans votre cursus d’études est celui lié à la connaissance de certains cadres PHP ou JS, largement utilisés pour le développement de projets partagés et/ou complexes.

Si vous vous demandez ce qu’est un framework, c’est un ensemble complet de bibliothèques et de fonctions préconçues permettant de gagner du temps et de l’énergie.

Parmi les plus populaires et utilisés sont Symfony et Zend Framework pour le PHP. Côté JS, je dirais que React JS et Angular sont aussi devenus incontournables.