Article original : Why I learned to code instead of pursuing a career in finance

Par Amir Ghafouri

L'année dernière, j'ai été confronté à une décision majeure dans ma vie et ma carrière : m'engager à poursuivre une désignation d'analyste financier agréé ou passer mon temps à apprendre à coder en ligne sur un site appelé freeCodeCamp. L'institut CFA existait depuis des décennies et sa désignation était recherchée par certaines des personnes d'affaires les plus réussies au monde. freeCodeCamp n'existait que depuis quelques années avec quelques membres qui affirmaient avoir obtenu des emplois en tant que développeurs logiciels juniors.

J'ai passé 4 ans à étudier les affaires à l'Université Western, j'ai obtenu mon diplôme avec mention et j'ai accumulé une montagne de dettes étudiantes en cours de route. Mon score GMAT était dans le 95e percentile si jamais je voulais poursuivre un MBA. Pourquoi abandonnerais-je mon domaine d'études académiques avant même d'avoir commencé ma carrière ?

Après avoir consulté des amis, de la famille et d'autres professionnels, les conseils que j'ai reçus étaient unanimes. Apprendre à coder en ligne et devenir développeur logiciel sans diplôme en informatique ou sans expérience en ingénierie était une folie. Je devrais me dépêcher et m'inscrire à l'examen CFA Level I.

Le logiciel devient crucial pour la création de valeur

J'avais lu le célèbre essai de Marc Andreessen Why Software Is Eating The World, et 5 ans plus tard, son message semblait encore plus vrai.

La plus grande entreprise industrielle d'Amérique, General Electric, venait d'annoncer qu'elle déplaçait son siège social. Elle s'installait dans le hub technologique de Boston dans un effort pour se transformer en une entreprise logicielle de premier plan d'ici 2020. Le PDG Jeff Immelt avait des croyances révolutionnaires. Il était convaincu que les données qu'ils pourraient capturer en utilisant leurs machines pourraient devenir plus précieuses que les machines elles-mêmes. GE devait considérer ses concurrents comme Amazon et IBM. Plus tard cette année-là, il annoncerait que tous les nouveaux embauchés apprendraient à coder (mais je ne le savais pas à ce moment-là).

Comme le New York Times l'a détaillé, « Les employés de l'entreprise ont fait des pèlerinages à San Ramon pour des briefings technologiques, mais aussi pour s'imprégner de la culture. Leurs ordres étaient d'essayer d'adapter la magie numérique et les habitudes de précipitation de la Silicon Valley au monde de la fabrication industrielle de GE. »

Deloitte avait lancé un laboratoire blockchain et JP Morgan construisait sa propre plateforme blockchain. Chez Goldman Sachs, le pourcentage d'employés ayant une formation dans un domaine de la technologie était passé de 5 % à 25 % ces dernières années. Cela ne comptait même pas les développeurs logiciels qui travaillaient pour les startups dans lesquelles elle investissait à un rythme de plus en plus rapide.

The Economist a déclaré que, « Il n'y a pas si longtemps, 600 personnes travaillaient sur un vaste parquet de trading d'actions... Maintenant, Goldman a 2 personnes qui tradent des actions et 200 autres ingénieurs logiciels qui travaillent sur des systèmes qui, en effet, font le travail eux-mêmes. L'investissement bancaire traditionnel est également mûr pour le changement... Des étapes coûteuses et redondantes sont supprimées ou, une fois de plus, automatisées. »

Bloomberg avait ses propres réflexions sur la question : « Pourquoi Goldman laisserait-il ces outsiders entrer ? Il a besoin d'eux. Les grandes innovations de notre temps n'émergent pas d'une tour de verre de Henry Cobb surplombant l'Hudson River. Elles proviennent d'entreprises comme Kensho. Goldman doit apprendre d'eux — comprendre comment ils travaillent, comment ils pensent et comment ils prévoient de démanteler presque toutes les industries dans lesquelles Goldman gagne de l'argent, y compris la sienne. »

Des entreprises logicielles comme Facebook et Google ont grimpé au sommet du marché boursier en très peu de temps, délogeant des acteurs établis qui avaient besoin de décennies pour y parvenir.

Image _Graphique de [Bloomberg](https://www.bloomberg.com/gadfly/articles/2016-08-02/tech-giants-form-fab-five-to-dominate-stock-valuation-chart" rel="noopener" target="blank" title=")

Et il était difficile de soutenir que ces évaluations n'étaient pas justifiées. Le logiciel que ces entreprises avaient construit permettait à chacun de leurs employés de créer beaucoup plus de valeur.

Image _Ce graphique a été [tweeté](https://twitter.com/CBinsights/status/750120323270467584" rel="noopener" target="blank" title=") par CB Insights avec la légende : « Est-ce pour cela que chaque entreprise d'un secteur traditionnel essaie de se réinventer en tant qu'entreprise technologique ces jours-ci ? »

Le logiciel rend le monde meilleur

Je dépends du logiciel chaque jour pour me déplacer, organiser ma journée, communiquer avec des amis, rester en contact avec des proches et, en général, me libérer des tâches répétitives et fastidieuses. L'internet avait démocratisé l'accès à l'information et au savoir, et je l'utilisais pour lire et apprendre tout ce que je voulais.

Mais je savais que ces avantages n'étaient rien comparés à ce qu'il faisait pour d'autres personnes et à ce qu'il pourrait faire à l'avenir. Chris Dixon a écrit un article intitulé Eleven Reasons to be Excited About the Future of Technology, qui a regroupé certaines de ces avancées potentielles. Il discute de la manière dont les voitures autonomes pourraient réduire les taux de fréquence des accidents de 80 % (1,25 million de personnes meurent chaque année de blessures liées aux voitures). Il décrit des algorithmes de détection du cancer qui pourraient surperformer les pathologistes humains. Il nous parle de drones qui pourraient livrer des fournitures médicales dans des villages reculés.

Image _[Our World In Data](https://ourworldindata.org/" rel="noopener" target="blank" title=")

« Actuellement, un guerrier Masaï avec un téléphone mobile au milieu du Kenya a de meilleures communications mobiles que le président il y a 25 ans. S'il est sur un smartphone utilisant Google, il a accès à plus d'informations que le président des États-Unis il y a seulement 15 ans. » — Peter Diamandis

De nombreux développeurs logiciels n'ont pas appris à coder à l'université traditionnelle

J'ai beaucoup lu sur ces personnes. L'ex-banquier d'investissement de Goldman Sachs, Preethi Kasireddy, a écrit sur le fait de quitter son emploi de capital-risqueur chez Andreessen Horowitz pour s'inscrire dans un bootcamp de codage. Elle est devenue développeuse logicielle chez Coinbase peu après. L'ex-pro du poker Haseeb Qureshi a décrit comment il est passé par le bootcamp de codage App Academy pour devenir développeur logiciel chez Airbnb. Ensuite, j'ai entendu parler d'un gars nommé Andrew Charlebois. Il a utilisé freeCodeCamp pour passer de charpentier sans expérience technologique à développeur logiciel dans une agence de publicité mondiale en moins de 5 mois.

J'ai commencé à regarder les offres d'emploi pour les développeurs logiciels et j'ai remarqué que beaucoup semblaient impartiaux envers un diplôme de bachelor particulier. Certaines entreprises omettraient explicitement toute mention d'un diplôme dans la section des exigences, et exprimeraient plutôt une préférence pour les portefeuilles open-source.

J'ai également commencé à aller à des événements technologiques où j'ai rencontré des développeurs logiciels et des CTO pour la première fois. Beaucoup — sinon la plupart — m'ont dit qu'ils n'avaient jamais étudié l'informatique ou l'ingénierie à l'université.

Tout cela a été confirmé lorsque j'ai trouvé les résultats de l'enquête 2016 de Stack Overflow auprès de plus de 50 000 développeurs logiciels. Plus de la moitié des répondants n'avaient pas de diplôme de bachelor en informatique ou dans un domaine connexe, et 13 % affirmaient être entièrement autodidactes.

Image

Ma décision

J'ai continué à postuler à une large gamme d'emplois plus traditionnels. Je voulais apaiser mon père, mais je m'inquiétais aussi de manquer d'économies avant de pouvoir décrocher un emploi de développeur logiciel.

Malgré cela, le chemin à prendre était clair : je croyais que le logiciel était l'avenir et je voulais apprendre à aider à en construire une partie. Même si je ne devenais pas professionnel, au moins je pourrais enfin comprendre comment toute cette magie était possible. Je ne voulais pas dépendre de quelque chose que je n'avais même pas fait d'effort pour comprendre. En fait, cela semblait irresponsable de le faire.

Apprendre à coder

J'ai passé 8 mois, 24h/24 et 7j/7, à apprendre à coder. J'ai suivi le programme de freeCodeCamp et lu des livres comme Eloquent Javascript. J'ai regardé des vidéos Udemy et Udacity, cherché des réponses sur StackOverflow, posé des questions dans le salon de discussion de freeCodeCamp. Et je suis allé à autant d'ateliers Node School et de rencontres Coffee'n'Code que possible.

Après 8 mois, j'avais constitué un portefeuille d'applications web simples côté client. J'avais également commencé à apprendre sur les applications web côté serveur et la persistance des données. J'ai commencé à postuler pour des postes de développeur logiciel junior. C'était incroyable de voir combien d'intérêt j'ai reçu malgré ma transparence totale sur mon manque de compétences et d'expérience.

Finalement, une startup appelée Shoelace m'a invité pour un entretien. Ils m'ont demandé ensuite si je serais prêt à faire un essai payé de deux semaines. À la fin des deux semaines, le CTO m'a dit qu'ils voulaient m'embaucher. J'étais très junior, mais ils pensaient que j'avais le potentiel d'apprendre rapidement et de grandir dans le rôle.

Aujourd'hui

Je travaille à temps plein chez Shoelace en tant que développeur logiciel depuis plus d'un an. J'ai appris rapidement puisque je travaille avec d'autres développeurs expérimentés à qui je peux demander de l'aide. Ils m'ont présenté des outils et des modèles qui m'auraient pris beaucoup plus de temps à découvrir par moi-même.

Plus important encore, travailler sur une application qui est réellement en production m'a exposé à certains des aspects plus pratiques du développement logiciel. J'ai appris sur la planification des sprints, le travail avec les spécifications d'un chef de produit, le contrôle de version, les tests, la revue de code, le déploiement, la journalisation des erreurs et la surveillance des applications. Ce sont toutes des choses auxquelles je n'avais jamais vraiment pensé en apprenant à coder par moi-même.

Plus tôt cette année, j'ai construit une application web appelée Spotifest pour aider mes amis et moi à créer des playlists Spotify basées sur les lineups de festivals de musique. Rien ne vaut le fait de construire quelque chose et de voir les gens l'utiliser pour devenir plus rapides ou meilleurs dans quelque chose qu'ils faisaient manuellement auparavant.

Voir l'entreprise grandir

Lorsque j'ai commencé à travailler chez Shoelace, j'étais le 3e employé à temps plein. Maintenant, nous recrutons et aurons bientôt 18 personnes. J'ai pu voir une petite équipe proposer de nouvelles idées chaque jour et ensuite développer rapidement des produits pour attirer de nouveaux utilisateurs et lever des capitaux-risque.

Plus tôt cette année, nous avons été acceptés dans le programme de démarrage 500 Startups. Les fondateurs de mon entreprise nous ont donné à tous l'opportunité de passer un mois à vivre à San Francisco et à travailler dans les bureaux là-bas. Expérimenter l'énergie de la Silicon Valley et de la région de la baie pour la première fois était exaltant !

Image Les entreprises canadiennes du lot 500 lors du jour de démonstration à San Francisco (je suis assis en bas dans un sweat à capuche rouge sur le point d'applaudir).

Image Le reste de l'équipe regardant le livestream du jour de démonstration en ligne depuis Toronto dans notre bureau à l'incubateur technologique Ryerson DMZ.

Image Passer du temps avec certains de mes collègues après une journée à la conférence Unite de Shopify à San Francisco.

Je ne suis pas sûr que je choisirai de gagner ma vie en tant que développeur logiciel pour toujours, mais je sais que ma capacité à coder sera toujours un atout significatif. Je pense que chaque entreprise devient une entreprise technologique. Un nombre croissant de rôles nécessiteront au moins une compréhension de base du développement logiciel afin de prendre des décisions stratégiques et de gérer efficacement les équipes.

La vie est belle, et je suis si heureux d'avoir fait l'effort de le faire. Corriger des bugs peut être stressant, et écrire des tests unitaires peut être fastidieux. Mais dans l'ensemble, j'apprécie vraiment cette nouvelle capacité à donner vie à mes idées avec du code.

Comme Paul Graham l'a dit : « En 1970, un président de société signifiait quelqu'un dans la cinquantaine, au moins. S'ils avaient des technologues travaillant pour eux, ils étaient traités comme une écurie de course : prisés, mais pas puissants. Mais à mesure que la technologie est devenue plus importante, le pouvoir des nerds a grandi pour la refléter. Maintenant, il ne suffit plus pour un PDG d'avoir quelqu'un d'intelligent à qui demander des questions techniques. De plus en plus, ils doivent être cette personne eux-mêmes. »

Si vous avez aimé cet article, veuillez m'applaudir pour que plus de gens le voient.

Et vous pouvez me suivre sur Twitter ici. Merci !