Ma roadmap de développeur Javascript (2020)

Il est toujours important de faire une introspective pour s'améliorer. Parfois il faut se poser et prendre un peu de hauteur pour se rendre compte du chemin parcouru depuis nos premières lignes de code mais aussi de toutes les compétences manquantes.

Je me suis beaucoup aidé de cette roadmap sur ce profil GitHub pour plannifier mon apprentissage et je vous invite à faire de même.

1. Ce que je pense maîtriser

void main()
{
      printf("Hello World");		
}

Il est loin le temps de mes premiers Hello World en C lors de mes années d'études de DUT. Aussi loin que je me souvienne, ma première expérience de développement remonte à mes années lycées quand en cours de Maths, j'étais plus intéressé par la programmation de ma TI 83+ que par les cours de mathématiques (j'aurais quand même dû être plus attentif ça m'aurait évité quelques galères). Commençons par ce que je pense "maitriser" depuis :

  • HTML/CSS : C'est la base me direz vous... Mais c'est plus compliqué qu'il n'y parait ! La maitrise des Flexbox et des Grids demande un certain temps quand on débute.

  • Javascript : Le langage que j'ai préféré dès le début.

  • Frameworks frontend: Quand on est débutant, l'utilisationde React parait déroutante avec ses notions compliquées de Props et States, mais aussi le Life Cycle etc.. et on a très rapidement mal à la tête la première fois. Une astuce qui m'a permis de comprendre bien plus facilement a été de commencer à développer sur Svelte (en fait Svelte est un compiler et non un Framework à ce qu'on dit). Je le conseille vraiment au début pour faire ses premiers projets. En revanche, j'ai toujours voulu me spécialiser sur React et c'est devenu mon Framework de prédilection.

  • Gatsby : L'élément principal de mon site. Une vraie merveille vous ne trouvez pas ?

  • NodeJS/Express : Parce que j'ai toujours voulu développer mes idées de A à Z, il me fallait souvent développer mon propre backend. J'ai choisi de me former sur NodeJS et particulièrement sur Express pour créer mes propres API REST.

  • MongoDB : Vraiment un bon outil couplé avec Javascript.

  • Bootstrap/Reactstrap : Je ne suis pas le roi du design je dois vous dire et avoir des composants stylés clés en main c'est assez appréciable quand on est un peu à court d'idées. J'ai bien envie de me tourner vers Material UI pour mon prochain projet, il me fait de l'oeil.

  • Mapbox : Pour l'un de mes projets, j'ai du me servir de cartes pour dessiner des polygones grâce à des coordonnées enregistrées dans une base de données.

2. Analyse honnête des choses que je dois encore apprendre

Si je devais être vraiment honnête, je pourrais mettre les mêmes points que dans la première partie car on ne maîtrise jamais à 100%. Il y a des choses que je n'ai pas trop vu mais qu'il faut absolument que je mette en pratique dans mes prochains développements tellement elles sont devenues incontournables :

  • Sass : Je vais clairement l'utiliser dans mon prochain projet.

  • Typescript : il me semble de plus en plus indispensable

  • Testing : Très important à en entendre certains. Il faut vraiment que je bosse ce sujet car il peut aussi faire la différence face à un recruteur.

  • PostgreSQL : Ce serait bien de maîtriser une BDD relationnelle en plus de MongoDB en NoSQL

  • NextJS : en plus de Gatsby, il m'a l'air aussi plus complet pour faire du SSR

C'est une petite liste mais il ya tellement de choses que je pourrais rajouter...

3. Et le futur alors ?

On a vu que le métier de développeur est passionnant. On peut apprendre toute sa vie et être encore loin d'appréhender toutes les richesses qui s'offrent à nous. J'ai quand même quelques souhaits que je voudrais exaucer dans un futur plus ou moins proche.

J'ai appris le développement Android à son époque sous Java. Cela m'a laissé un regard bienveillant concernant les applications mobiles et j'aimerais m'y remettre. Je n'ai pas encore fait mon choix... Est-ce que je reste sur du natif ou je tente plutôt de faire du cross-platform avec Flutter et React Native ? Je ne sais pas...

Je ne suis pas un designer dans l'ame et l'association des couleurs/formes/vêtements etc... ce n'est pas du tout mon fort. J'ai beaucoup plus envie aujourd'hui de réaliser des applications web ou mobiles avec une certaine compléxité que de réaliser des sites internets créatifs et design.

Enfin, la question fatidique, dois-je me trouver un CDI ou trouver des missions Freelance, le nouvel Eldorado des développeurs à en écouter certains ? On verra bien comment va évoluer le métier.

Le mot de la fin

Je vous ai tout dit et je n'ai plus aucun secrets pour vous. En réalité, je suis assez heureux de ce que je suis capable de faire jusqu'à maintenant même si c'est loin d'être parfait. J'ai trouvé une belle passion qui ne risque pas de s'éteindre rapidement et rédiger cet article m'a permis de faire une véritable autocritique de mon travail mais surtout de dessiner mon futur avec beaucoup plus de clarté.

Retour au blog