8 conseils pour jeunes développeurs

Parce que je trouvais que plus ça serait trop et que j’aime bien ce chiffre, voici 8 conseils généraux que devrait suivre tout bon développeur. Ou du moins, ceux qui aspirent à le devenir.

N. B. Ceci n’est pas un article technique.

1) Ne vous trompez pas de voie

Un des plus gros chocs que j’ai eu en commençant mes études, c’est de tomber sur des étudiants ayant ce genre de discours :

Non alors moi si je fais des études en informatique c’est pas pour pisser du code toute ma vie hein ! Après mon Bac+5, je serai chef de projet et je bosserai pas pour moins de 50k.

Si vous pensiez passer pour une personne ambitieuse en disant ça, perdu : vous passez pour un branleur.

Jusqu’alors autodidacte, je m’imaginais naïvement que mes camarades étaient aussi des passionnés. Hélas en réalité, c’est plutôt rare. Dans le cas présent la plupart n’avaient même jamais pondu la moindre ligne de code.

On retrouve ce genre de profils en école — et par la suite dans le monde du travail — pour une bonne raison : c’est la conséquence directe de la communication de toutes les écoles privées qui ne se vendent qu’en promettant des salaires de 35k minimum à la sortie.

Si votre motivation principale est l’argent, vous ne ferez jamais un bon développeur (ou autre métier qui requiert une once de créativité). Alors laissez ce boulot à ceux qui ont une bonne raison de le faire et commencez à chercher quelque chose que vous aimez vraiment.

2) Soyez curieux (et restez-le)

Ou alors envisagez de changer de métier. Sérieusement.

Trop peu de personnes le réalisent, mais en tant que développeur votre apprentissage ne s’arrête jamais.

Si vous ne vous revendiquez pas comme quelqu’un de curieux et si vous estimez que vos connaissances actuelles vous suffisent, alors encore une fois : ce job n’est pas pour vous.

Et puisque ça ne fait pas de mal de s’intéresser à d’autres domaines que la programmation, penchez-vous aussi sur d’autres secteurs ! Le management, l’ergonomie ou encore l’administration système (à petites doses) sont de fabuleux sujets transverses à étudier et qui vous aideront au quotidien.

3) Apprenez à être autonome

Que faites-vous quand vous rencontrez un problème et qu’une personne se trouvant juste à côté de vous en détient la solution ? Vous lui demandez de l’aide et pour peu qu’il s’agisse de quelqu’un de sympa, elle vous l’apportera.

Deux jours plus tard, nouveau problème. La personne qui vous a déjà aidé auparavant est à deux mètres. Vous vous dites qu’elle détient probablement la solution, vous lui demandez à nouveau de l’aide.

Quelques temps après, rebelotte : “a wild bug appears”. Vous vous dites qu’elle détient la solution. Sauf que cette fois-ci, elle vous envoie balader pour une raison simple : en tapant votre bug dans Google, la réponse apparait dans les 3 premiers résultats !

Le problème quand on commence à demander de l’aide (et qu’on nous l’apporte sur un plateau) c’est que l’on peut vite en arriver jusqu’à oublier comment chercher par soi-même.

Apprenez à ne demandez de l’aide que quand vous avez déjà passé du temps à essayer de trouver une solution par vous-même.

Gardez en tête que tous les problèmes sur lesquels on tombent ont déjà étés rencontrées et résolus 99 % du temps. Il suffit “juste” d’être capable de les identifier. Pour cela je ne saurais que vous recommander d’essayer la méthode des 5 pourquois dont un collègue m’a récemment parlé et qui fonctionne à merveille.

Au passage Stack Overflow et les sites de Stack Exchange sont de très bons endroits pour trouver de l’aide.

4) Devenez bilingue

Codez en anglais, commentez en anglais, commitez en anglais.

Beaucoup de développeurs débutants ont du mal avec la langue de Shakespeare. Étonnamment ce sont souvent les mêmes qui ont du mal à faire les plus simples recherches sur Google.

Une fois que vous aurez adopté ce réflexe, vous réaliserez que vous trouverez beaucoup plus rapidement les solutions à vos problèmes et qu’en plus elles seront souvent de bien meilleure qualité.

Parce que oui, c’est un fait : les bons développeurs font tout en anglais. Live with it.

Notez que cet article est en français uniquement parce qu’il s’adresse à des juniors et non par flemme.

5) Faites de la veille

Si vous êtes en train de lire ces lignes, c’est probablement que c’est déjà un peu le cas. Bravo !

Actuellement, la meilleure source d’informations que vous pouvez trouvez en tant que développeur est incontestablement Hacker News (toutes les technologies et langages y passent). Et non, ceci n’est pas un avis totalement subjectif.

Lire des sites d’actualités qui vous prémâchent tout, c’est bien. Aller chercher l’information à sa source pour se faire sa propre idée, c’est mieux.

Un développeur dont les seules sources d’informations sont Korben et PC INpact ne peut pas être pris au sérieux.

6) Intéressez-vous au design, à l’ergonomie et à l’expérience utilisateur

Concevez des produits simples, qui font ce qu’on leur demande sans rentrer dans le superflus. Ça a l’air tout bête comme ça, mais c’est pourtant un exercice des plus difficiles.

Imaginons que l’on donne le sujet suivant à deux équipes de développeurs : “Réalisez un site internet pour commander des billets de train”.

Il y a ceux qui feront Voyages-sncf, qui auront pensé à tout un tas de fonctionnalités géniales que personne n’utilisera (souvenez-vous, ici on cherche à commander des billets de train) et il y a ceux qui arriveront avec un produit simple et agréable à utiliser : Capitaine Train.

Alors, qu’est-ce qu’un bon logiciel d’un point de vue utilisateur ?

  • C’est un logiciel qui répond à un besoin précis et qui y répond vite et bien.
  • C’est un logiciel dont on prend plaisir à se servir au quotidien. Qu’y-a-t-il de plus frustrant que d’être obligé d’utiliser une application mal fichue ?
  • C’est un logiciel que l’on peut utiliser “out of the box”, de façon intuitive, sans avoir à se poser de questions ou que l’on ait besoin d’en lire la notice.

J’ai passé un an dans une société où j’entendais en permanence parler des fonctionnalités, des fonctionnalités et encore des fonctionnalités. Résultat, on se retrouvait avec des interfaces surchargées, des menus et des sous-menus dans tous les sens et on délaissait presque totalement l’expérience utilisateur. Et pour cause, on n’utilisait pas nous-même nos logiciels.

Aimez les choses bien faites et créez des produits que vous prendriez plaisir à utiliser tous les jours !

7) Restez ouvert d’esprit et ne vous attachez pas à une technologie

Parce que de toute façon, elle sera obsolète d’ici quelques années !

Vendez-vous comme expert de ce que vous voulez lorsque vous cherchez du travail à la limite, mais restez ouvert d’esprit.

Oui, vous avez le droit d’être bon sur une techno ou un langage. Mais sachez aussi reconnaitre leurs faiblesses et gardez-les en tête. Il n’en sera que plus facile d’en changer quand vous sentirez le vent tourner !

Et puis au moins, vous ne finirez pas comme ces vieux profs qui enseignent encore aujourd’hui mais qui semblent coincés à l’apogée du C dans les années 80.

P.-S. J’adore le C !

8) Ayez un projet personnel qui vous tienne à coeur

Ce dernier point est le plus important. Si vous réussissez à le satisfaire, vous devriez par la même occasion satisfaire tous les points précédents.

Si vous cherchez une idée et que vous êtes en manque d’inspiration, j’ai une technique imparable pour trouver des projets. Pendant une semaine, notez toutes les choses qui vous énervent ou qui vous frustrent. À la fin de la semaine, reprenez votre liste point par point et demandez-vous comment vous pourriez rendre ces choses plus agréables. Des idées devraient rapidement émerger.

Alors le risque, c’est de commencer à coder un robot capable de faire la vaisselle avant de songer à acheter une machine à laver, donc éliminez les tâches pénibles avec lesquelles tout le monde doit vivre. Ou alors devenez constructeur de robots, mais vous aurez besoin d’un peu plus qu’un ordinateur pour lancer votre activité.

Une alternative — si rien ne sort de votre esprit au bout d’une semaine et pour peu que vous aimiez rendre service — est de demander à des amis ou des proches de s’adonner à la même expérience. Mais en règle générale, ces derniers n’attendent pas que vous leur demandiez s’ils ont des problèmes au quotidien pour vous solliciter !

Idéalement votre projet devra répondre à 3 critères :

  • Résoudre un problème qui vous touche directement.
  • Répondre à un besoin auquel ne répond pas une solution existante (ou alors, faites mieux que la solution existante).
  • Être utile à d’autres personnes qui rencontrent le même problème et qui pourront vous apporter des avis précieux.

Au final, peu importe l’idée, ce qui compte c’est que vous ayez le sentiment de vous amuser et de ne pas travailler quand vous la réaliserez.

TL;DR

Développer est une passion avant d’être un métier. Si vous ne prenez pas de plaisir en codant, vous devriez envisager une reconversion.

Pierre-Yves Jamon

I make web & mobile things.