Comment faire la différence sur un CV quand on n'a pas ou peu d'expérience ?
Il est difficile de se démarquer lorsque l’on a que peu ou pas d’expérience.
Notre CV n’est qu’un CV de plus sur la pile et notre portfolio contient les mêmes petits projets que tous les autres développeurs juniors / reconvertis ont fait en suivant leur formation.
Non, ne jetez pas tout de suite votre projet de Pokédex dont vous êtes si fier ! Tant que vous apprenez des choses c’’est le plus important.
Par contre, pour un recruteur, voir les mêmes projets en permanence sur tous les portfolios est un vrai problème.
Et si vous sortiez du lot ?
L’intérêt d’un “vrai” projet
Lorsque vous êtes en bootcamp, ou en formation accélérée, il est difficile d’avoir le temps de se concentrer sur un “vrai” projet.
Qu’est-ce qu’un “vrai” projet ?
C’est un projet qui est consultable en ligne, publiquement, et que vous avez fait de A à Z.
C’est un projet dont la complexité est suffisante pour que le recruteur y voit tout de suite une certaine expérience.
“Mais je n’ai pas d’expérience justement ! C’est ça le problème !”
Posez-vous la question de ce qu’un recruteur attend d’un développeur sénior. Oui oui, j’ai bien dit sénior. Il s’attend a priori à ce que celui-ci ait de l’expérience. Autrement dit, il attend que face à certaines problématiques données, le développeur sache comment y répondre, car il y aura déjà été confronté avant !
En choisissant d’utiliser un projet complexe comme support d’apprentissage, vous allez sortir de votre zone de confort, et donc nécessairement faire face à des problématiques nouvelles.
En résolvant ces problématiques, vous engrangez donc de l’expérience ! Et ça, c’est primordial pour les recruteurs.
En voyant votre projet il doit se dire :
“Ah oui ok ! Donc je vois qu’il/elle a traité telle problématique, c’est intéressant, ça dénote un esprit curieux et pugnace !”.
À l’inverse, un projet “classique” que le recruteur aura vu 1000 fois ne déclenchera aucune émotion en lui autre qu’une certaine exaspération désabusée.
J’espère vous avoir convaincu de l’intérêt d’avoir un projet complexe dans votre portfolio !
Par où commencer ?
Je sens que vous êtes en train de vous poser plein de questions :
“Complexe ? Mais complexe comment ?”
“Est-ce que le projet que je vais choisir ne va pas être trop complexe ?”
“Si je candidate ou que je reçois une offre alors que mon projet n’est pas terminé, comment je fais ?”
“Comment garder la motivation ?”
Ce sont des questions totalement légitimes. Mais j’ai une bonne nouvelle pour vous, elles ont toutes une réponse très simple :
Vous allez développer votre projet itérativement. Pas à pas.
Vouloir tout développer d’un coup avant de mettre en ligne une fois que l’on considère son projet comme “terminé” est une erreur que font beaucoup de développeurs (et pas uniquement des juniors).
Pour être le plus efficace possible, voilà comment vous devriez procéder :
✅ Dégrossir rapidement les fonctionnalités principales, propres à votre projet, en mettant de côté les fonctionnalités transverses à tous les projets (comme l’authentification par exemple).
✅ Sélectionner une voire deux fonctionnalités considérées comme étant les plus simples.
✅ Mettre en ligne le projet le plus rapidement possible, idéalement chaque jour où vous avancez dessus.
✅ S’attaquer aux fonctionnalités plus complexes
✅ En parallèle : intégrer les fonctionnalités qui ne sont pas propres à votre projet en utilisant directement des outils tout fait (je pense notamment à l’authentification). Vous pourriez les reproduire vous-même, mais rappelez-vous que l’objectif est de faire face à des problématiques propres au projet, pour que cela vous donne un réel aperçu de ce qui se passe en entreprise. De plus, savoir déléguer une fonctionnalité qui n’est pas au cœur du projet à un système externe est une compétence à développer. En entreprise on aime bien ne pas avoir à réinventer la roue.
De la sorte, vous aurez toujours un projet disponible et “montrable”.
Si vous n’avez pas d’idée de projets, le meilleur conseil que je puisse vous donner est de copier un projet existant. De la sorte, vous n’aurez pas à vous soucier de “découvrir” votre produit. Vous pouvez par exemple tenter de recopier StackOverflow, ProductHunt, Slack, voire YouTube !
Comment déterminer la complexité d’une fonctionnalité ? Comment avancer pas à pas ? Comment découper les fonctionnalités de façons suffisamment fines pour qu’au bout de seulement une ou deux journées de développement elles puissent être mises en ligne ?
Nous verrons tout cela dans les prochaines semaines :)
Happy Coding !