Comment je suis passé de débutant à Ingénieur Logiciel en 9 mois tout en travaillant à temps plein

Classé dans : Articles | 0

dans cet article, je vais partager comment je suis passé de zéro(ish) à une offre d’emploi en génie logiciel à six chiffres en neuf mois tout en travaillant à temps plein et en étant autodidacte.

chaque fois que je commençais à lire une histoire à succès, je cherchais immédiatement à trouver l’arrière-plan de l’auteur, en espérant qu’il correspondrait au mien. Je n’ai jamais trouvé quelqu’un qui avait le même parcours que moi, et le mien ne correspondra probablement pas exactement au vôtre.,

néanmoins, j’espère que mon histoire inspire les autres et agit comme un point de données précieux qui peut être ajouté à votre jeu de données success story.

divulgation complète

j’ai suivi un cours Visual Basic for Applications (VBA) au lycée (il y a neuf ans). Dans mon cours d’ingénierie de première année (il y a sept ans), j’ai appris du C, Python, Matlab et Labview. Je suis diplômé d’une bonne université avec un diplôme en génie chimique et un bon GPA (il y a trois ans). Je n’avais fait aucune programmation en dehors de l’école, au lycée ou au collège, jusqu’à ce que je décide que je voulais apprendre l’année dernière.,

Après l’Université, j’ai obtenu un emploi D’ingénieur de processus dans une raffinerie. J’y ai travaillé jusqu’à ce que je change de carrière en génie logiciel.

pourquoi je voulais changer de carrière

j’aimais résoudre des problèmes techniques, mais je savais que je voulais entrer dans le monde des affaires / start-up à un moment donné. J’ai toujours gardé l’idée d’un MBA en tête, mais chaque fois que je regardais le prix des meilleures écoles, mon intérêt diminuait.

Le 27 mai 2017, je me suis retrouvé à googler à nouveau sur les MBA, et en quelque sorte je suis tombé sur l’ingénierie logicielle. Cela semblait être un ajustement parfait.,

Les ingénieurs logiciels sont de plus en plus demandés, les salaires sont excellents et c’est l’industrie idéale pour entrer dans le monde des startups sans avoir besoin d’une tonne de capital initial. Tout ce dont vous avez besoin est un ordinateur, et vos opportunités sont illimitées (en quelque sorte).

dans aucune autre discipline d’ingénierie, vous ne pouvez simplement avoir une idée, commencer à la construire, la montrer aux utilisateurs et itérer avec peu de capital et une faible barrière à l’entrée. En génie chimique, vous avez essentiellement besoin d’une course de l’usine ou beaucoup d’argent pour la conception d’une installation, si vous aviez une idée pour un nouveau produit.,

j’avais entendu parler de gens qui quittaient leur emploi et assistaient à un bootcamp, mais plus je lisais à ce sujet en ligne, plus je réalisais que vous pouvez tout apprendre par vous-même si vous êtes engagé et concentré.

vous pourriez soutenir que vous perdez sur le réseautage et les conseils de carrière fournis par un bootcamp. Cela peut être vrai, mais j « ai eu la chance de vivre dans la région de la baie, ce qui m » a permis d  » assister à plusieurs rencontres, donc je me suis connecté de cette façon.

de plus, le pire des cas était que je réalisais que je ne pouvais pas le faire tout seul, puis je quittais mon travail pour assister à un bootcamp.,

Le But

Photo par Robert Baker sur Unsplash

Vous devez avoir un objectif. Surtout si vous essayez d’apprendre tout en travaillant à plein temps. Il est facile de laisser traîner votre apprentissage si vous n’avez aucune pression externe qui vous pousse. Vous devez donc créer une pression interne. Votre objectif doit être simple et quantitatif. Vous devriez faire suffisamment de recherches pour trouver un objectif raisonnable., Le mien était le suivant:

obtenez un emploi d’ingénierie logicielle dans un an avec le même salaire ou un meilleur salaire que celui que je gagne en ce moment.

Le Plan

Photo par Glenn Carstens-Peters sur Unsplash

une Fois que vous avez un but, vous avez besoin d’un plan pour vous aider à y arriver. C’est là que vous consommez autant d’histoires à succès que vous le pouvez. Aucun d’entre eux correspondent à votre situation exacte, mais vous pouvez prendre quelques conseils de chacun., J’ai développé (et itéré sur) mon plan en utilisant des ressources telles que le subreddit learnprogramming, le forum freeCodeCamp et Medium.

le 27 Mai 2017, j’ai décidé que j’allais faire le codage plonger, et j’ai plongé la tête la première. Ce jour-là, j’ai décidé de ne pas consacrer plus de 40 heures par semaine à mon travail, afin d’avoir le temps de coder après le travail et le week-end. Heureusement pour vous, j’ai fait un très bon travail de documenter mes progrès.,

mon plan, à travers de nombreuses itérations, a fini par ressembler à ceci:

  1. prenez un cours D’introduction à CS pour obtenir une compréhension de base solide des concepts de base de CS
  2. suivez freeCodeCamp jusqu’à ce que je puisse créer moi-même des applications Web complètes au niveau du portefeuille
  3. Refactor pour nettoyer ol>

    pour commencer, mon plan était simple., À l’époque, je pensais que j’allais suivre le Guide technique de Google, alors j’ai commencé par leur cours d’introduction recommandé, Udacity CS101.

    mois 0 – Udacity CS101, Harvard CS50

    Le high de prendre cette grande décision m’a donné une tonne d’énergie. Je commençais à coder dès que je rentrais du travail et je ne m’arrêtais pas avant d’aller me coucher. Et puis, de nouveau, tous les week-end. Udacity CS101 a suivi le pourcentage d’achèvement, ce qui a été un grand facteur de motivation pour moi. J’ai enregistré mon pourcentage d’achèvement tous les jours après le codage. J’ai terminé le premier 75% en 10 jours., Le dernier 25% était lourd en récursivité, et c’était un peu plus difficile pour moi. Dans l’ensemble, il m’a fallu 20 jours pour terminer Udacity CS101.

    pendant que je prenais Udacity CS101, j’avais commencé à lire le subreddit learnprogramming assez fortement. J’ai lu qu’il était important pour les développeurs autodidactes qui cherchent à changer de carrière d’être actifs en ligne. J’ai décidé de créer de nouveaux comptes Twitter, Reddit, Stack Overflow, Medium et Quora en utilisant mon nom complet, afin que je puisse créer une présence en ligne.,Instagram, Facebook et les subreddits qui ne sont pas programmables, j’ai également décidé d’arrêter de lire des médias distrayants comme Instagram, Facebook et les subreddits qui ne sont pas programmables. Je ne vérifierais mon téléphone que pour les nouvelles et les messages liés à la programmation. C’était crucial pour m’assurer que je découvrais les meilleurs chemins d’apprentissage et ressources d’apprentissage. C’est à cause de cela que j’ai découvert Harvard CS50 sur edX.

    à l’origine, je me contentais de faire un cours d’intro, mais tout le monde semblait recommander Harvard CS50, alors j’ai décidé de me plonger dans ce prochain., Les étudiants de CS dans d’autres écoles avaient suivi ce cours et ont déclaré qu’ils avaient appris plus dans CS50 qu’un an ou deux à leur université étudiant CS. Le consensus général était que le cours était difficile mais en valait la peine. À la fin du mois 0, j’avais terminé les 5 premières conférences et devoirs.

    mois 1 – Harvard CS50, Linux, 1er Meetup, freeCodeCamp

    J’ai terminé CS50 à mi-chemin du mois. Je ne vais pas trop commenter mon expérience avec CS50, car j’ai écrit un article approfondi sur mon expérience ici.

    TLDR: c’est un excellent cours, je le recommande vivement., David Malan est un excellent conférencier, et il y a une tonne de ressources pour vous aider à passer à travers. Vous commencez en C, passez à Python, puis terminez avec le développement web. C’est très dense et il y a beaucoup de matériel, mais je pense que cela en vaut la peine.

    Après CS50, j’ai décidé de configurer mon XPS 15 à double démarrage Windows et Ubuntu. C’était un week-end frustrant. J’ai foiré mes partitions et presque maqué mon ordinateur portable. J’étais sur le point de jeter mon ordinateur portable et d’en obtenir un nouveau.

    je me suis lentement sevré de Windows et finalement j’utilisais uniquement Ubuntu., Je voulais me forcer à me mettre à l’aise avec la ligne de commande qui, je pense, a fonctionné dans une certaine mesure, mais j’ai encore beaucoup de chemin à parcourir.

    j’ai commencé 100 jours de code pour m’assurer de rester concentré et codé tous les jours. Il est important de documenter vos progrès. Si vous faites des progrès tous les jours, cela ne semblera pas beaucoup, mais quand vous regardez en arrière un mois ou plusieurs mois, vous vous rendrez compte que vous avez réellement fait un peu de progrès qui vous motive à continuer.

    je savais que le réseautage me ferait ou me briserait, alors j’ai rassemblé le courage d’aller à mon premier meetup de codage., Je n’étais jamais allé à un meetup et encore moins à un meetup de codage. J’étais tellement nerveux qu’après avoir conduit là-bas, stationné et marché jusqu’à la porte, j’ai presque fait demi-tour et je suis rentré chez moi.

    cela a aidé que ce soit le premier meetup pour le groupe. J’ai vite compris qu’il n’y avait aucune raison d’être nerveux. Personne ne se connaissait, personne ne jugeait et tout le monde était désireux d’apprendre. Ce fut le début d’une frénésie de rencontres. J’ai fini par assister à plus de 50 meetups en 9 mois.

    je suis heureux d’avoir commencé à meetups tôt., La plupart des gens ont seulement commencé à assister à des rencontres quand ils cherchaient un emploi, mais à ce moment-là, il est presque trop tard. Il y a tellement de raisons de commencer tôt. Pour n’en nommer que quelques-uns:

    1. développer des relations prend beaucoup de temps. Commencer tôt signifie que vous avez des connexions qui peuvent se porter garantes de vous lorsque vous cherchez un emploi plus tard
    2. parler de programmation avec des étrangers est un excellent moyen de se préparer à des entretiens
    3. Vous pouvez apprendre de nouveaux cadres, outils et ressources d’apprentissage de personnes qui sont en avance sur vous. Cela peut influencer votre futur plan d’apprentissage.,

    Il y avait une certaine incertitude à ce moment dans mon parcours de codage. C’était à peu près quand j’avais besoin de décider quel genre de développeur de logiciels je voulais être.

    en fin de compte, j’ai choisi le développement web car il semblait qu’il y avait une forte demande et aussi beaucoup de ressources en ligne. Une fois que j’ai compris cela, j’avais besoin de comprendre quoi faire ensuite. Certaines personnes ont recommandé qu’à ce stade, je pense aux applications web que je voulais créer, puis que je me lance. Certaines personnes ont recommandé le projet Odin ou freeCodeCamp.,

    Le gars qui dirigeait le meetup hebdomadaire auquel j’assistais connaissait Ruby et voulait faire des projets avec Ruby. C’était une grande raison pour laquelle j’ai pris la décision de participer au projet Odin.

    Et puis, deux jours plus tard, j’ai abandonné cette idée.

    c’est L’un des inconvénients de la voie autodidacte. Une minute vous pensez que vous savez ce chemin que vous devez prendre, mais le lendemain, vous vous demandez si c’était la bonne décision.

    j’ai lu que Ruby tombait en disgrâce, et je l’ai prouvé en recherchant des travaux Ruby vs JavaScript, j’ai donc fini par démarrer freeCodeCamp., La seule chose qui m’a dérangé à propos de freeCodeCamp, c’est qu’ils sont venus avec les idées de projet, donc chaque campeur fait les mêmes projets. Cela m’a d’abord concerné parce que je voulais me démarquer auprès des recruteurs. Cependant, j’ai fini par aimer freeCodeCamp, et maintenant je le recommande fortement. Pour plus de détails sur mon expérience et des recommandations concernant freeCodeCamp, consultez mon writeup ici.

    mois 2 — YDKJS, Freecodecamp Front End, React

    j’ai commencé à lire you Don’t Know JavaScript, car tout le monde l’a recommandé pour compléter freeCodeCamp., J’ai dû relire plusieurs sections car elles sont assez denses, mais c’est une ressource parfaite pour apprendre la portée lexicale, les fermetures, les promesses et toutes les parties de JavaScript dont vous entendez parler et que vous voulez apprendre mais que vous ne faites jamais parce qu’elles semblent difficiles.

    j’ai terminé la section front-end de freeCodeCamp. Le format de la liste de contrôle et le temps d’achèvement estimé m’ont motivé à terminer rapidement. J’avais aussi envie de passer à la section suivante et d’apprendre à réagir. Cependant, cela signifiait aussi que mes projets avaient un style minimal. J’ai fait tout ce qu’il fallait pour remplir les histoires d’utilisateurs et rien de plus.,

    avec le recul, j’aurais peut-être dû me concentrer sur les projets plus attrayants. Peut-être, cela m’aurait aidé à apprendre CSS plus profondément.

    l’étape suivante a été d’apprendre React, et j’étais assez pompé.

    j’avais tant entendu parler, et j’étais prêt à s’intégrer avec les cool kids. Cependant, j’étais un peu hésitant compte tenu des problèmes de licence à l’époque. Je suis vraiment heureux que ce ne soit plus un problème. Apprendre React a été difficile pour moi. Je n’étais pas au courant de bons tutoriels à l’époque (mais il semble qu’il y en ait une tonne maintenant).,

    j’ai essayé de lire les documents et de suivre le tutoriel Tic-Tac-Toe de Facebook, mais je ne comprenais pas tout. On m’a dit que si cela ne fonctionnait pas pour moi, cela signifiait que je ne comprenais pas assez JavaScript. Alors je suis retourné à la lecture de You Don’t Know JavaScript, mais encore une fois c’était trop dense pour moi.

    mois 3 – Freecodecamp React, CodeClub, démarrage de freeCodeCamp Back End

    en fin de compte, je viens de décider que je travaillerais mon chemin à travers les projets freeCodeCamp React pour voir comment cela s’est passé. Ce code était moche, mais il m’a aidé à comprendre React un peu mieux.,

    ce meetup auquel j’assistais chaque semaine a décidé qu’ils allaient construire des projets avec JavaScript full stack au lieu de Ruby, et ils ont décidé que le premier projet serait de construire un site web pour le groupe meetup, CodeClub.Social.

    j’ai développé des cartes utilisant L’API React et Meetup permettant à l’utilisateur de s’inscrire aux trois prochains meetups de notre site web. C’était un peu difficile pour moi de prendre une pause rapide de freeCodeCamp pour le faire, mais c’était une opportunité que je ne pouvais pas laisser passer. J’ai été heureux de travailler sur un projet avec un petit groupe de personnes., Cela m’a également aidé à apprendre Git et Github.

    avant la fin du mois, j’ai commencé à travailler sur la section back-end de freeCodeCamp.

    mois 4 – fini Freecodecamp Back-End, Yeggle

    j’ai travaillé à travers tous les projets API dans freeCodeCamp, mais j’ai commencé à m’écarter de freeCodeCamp au projet de couche D’Abstraction de recherche D’Image.

    j’avais envie de faire des applications Web full stack, donc dès que j’ai vu le titre de ce projet, j’ai eu une idée pour mon propre projet., Je créerais une application node qui stockerait des URL imgur aléatoires dans une base de données, puis créerais un frontal qui produirait un nombre spécifié par l’utilisateur de ces images aléatoires. Ce que tout le monde dit est vrai: vous travaillez plus dur et avez plus de succès lorsque vous travaillez sur un projet qui était votre propre idée.

    Une fois que je l’ai fait fonctionner, j’étais très fier de moi. C’était laid et maladroit, mais ça a marché.

    alors que je travaillais via freeCodeCamp, j’apprenais quels projets seraient dans mes capacités., Je courais régulièrement à l’époque, donc je trouvais des idées sur mes courses et je les écrivais quand je rentrais à la maison. De cette façon, j’aurais une liste d’idées de projet quand j’étais prêt.

    je me suis enfin senti prêt à commencer à créer mes propres applications Web complètes utiles et polies à partager avec les utilisateurs et à mettre sur mon portfolio. J’étais donc prêt à commencer.

    lorsque je cherchais un nouveau restaurant, je me suis toujours retrouvé à ouvrir Yelp pour vérifier les avis, puis à ouvrir Maps pour vérifier leurs avis. Et si je faisais une application qui comparait les deux côte à côte?

    J’ai donc fait Yeggle., J’ai utilisé Node / Express / React avec les API Google Maps et Yelp. Il y avait quelques obstacles que je ne pensais pas pouvoir surmonter, mais à la fin, j’ai terminé et j’étais très fier de mon application. Ensuite, je l’ai posté sur Reddit, et personne ne s’en souciait. C’était un peu dommage, mais je ne l’ai pas laissé me faire tomber.

    mois 5 – StockIT

    je n’ai pas fait autant ce mois-ci, car j’ai commencé avec des vacances de deux semaines au Japon et en Thaïlande!

    Mais j’ai commencé et terminé mon prochain projet., J’ai continué à lire à quel point il était difficile d’obtenir un emploi en tant que développeur autodidacte, alors j’ai pensé que je devais faire quelque chose d’unique. Je me suis souvenu d’un jeu où un graphique boursier Dow Jones a commencé tendance, et vous avez eu une occasion d’acheter et une occasion de vendre, et l’objectif était de battre le marché. Le but du jeu est de vous montrer combien il était difficile de battre le marché.

    mon idée était de faire un jeu similaire à cela, mais au lieu du marché, vous joueriez contre un algorithme d’apprentissage automatique. J’ai donc créé StockIT.,

    j’ai pris un tutoriel vidéo sur Pandas et Scikit Learn qui couvrait plusieurs techniques d’apprentissage automatique. À l’origine, je voulais faire des techniques d’apprentissage en profondeur intéressantes, mais j’ai réalisé que cela prenait des ensembles de données massifs et plus de temps que ce que je voulais dépenser.

    Au Lieu de cela, je suis resté sur un modèle de régression linéaire simple. Je pensais que ce serait la partie difficile, mais ce n’était pas le cas. obtenir D3 à jive avec React était la partie difficile. Les deux bibliothèques voulaient contrôler le DOM. Il y avait d’autres bibliothèques qui ont aidé à rejoindre les deux, mais je sentais qu’ils étaient trop gonflé., J’ai fini par utiliser D3 pour générer les SVG et réagir pour gérer le DOM qui a assez bien fonctionné pour moi.

    cette fois, quand je l’ai partagé avec Reddit, tout le monde l’a adoré!

    Il S’avère, tout comme VCs, redditors sont tout au sujet de cet apprentissage automatique. Tout l’amour de Reddit était un grand coup de pouce de confiance. Les gens jouaient à mon jeu et l’appréciaient!

    mois 6 – jobSort(), Job Hunt Prep

    Après StockIT, je me suis lancé directement dans mon prochain projet personnel. Je voulais créer un tableau d’emploi regroupant les sites Web de listes d’emplois plus petits et axés sur la technologie tels que Stack Overflow, Github et Hacker News., Pour ajouter mon propre spin unique, j’ai décidé de le trier en fonction des technologies que l’utilisateur voulait dans un travail et à quel point ils voulaient chacun d’eux.

    par exemple, disons que je cherchais un emploi qui cherchait quelqu’un qui connaissait JavaScript, React et/ou Python, et je voulais vraiment travailler avec JavaScript et React mais je ne me souciais pas tellement de Python. Ensuite, je pourrais donner à JavaScript un 3, React un 3 et peut-être à Python un 1. Les listes seraient ensuite triées en conséquence.,

    j’ai rencontré divers obstacles avec ce projet et j’ai dû changer de Cap plusieurs fois, mais je me suis retrouvé avec un produit qui me plaisait. Ma dernière pile technique était React / Node/Express / MySQL. J’ai posté le projet sur le subreddit cscareerquestions et j’ai obtenu des vues 650 avant qu’il ne soit supprimé car ils n’autorisent pas les projets personnels.

    Le produit « final” est ici, et si vous souhaitez en savoir plus sur mes luttes et mes refactors, consultez mon article ici.

    en raison de mes problèmes, jobSort() a pris une partie décente du mois., J « ai fini par prendre un café avec un ami que j » avais rencontré à mon premier meetup, et il m  » a conseillé de commencer à postuler pour un emploi maintenant. J’ai lu partout que tout le monde dit qu’ils ont attendu trop longtemps pour postuler. De plus, chaque fois que je voyais un message demandant quand postuler, le commentaire supérieur était toujours « maintenant. »

    dans ma tête, j’allais me frayer un chemin à travers mon plan structuré pour construire mon portefeuille avec des projets personnels, puis travailler sur des contributions open source, puis me préparer à des entretiens, et enfin commencer à postuler à des emplois. Cet ami m’a convaincu d’abandonner ce plan et de commencer à postuler., Donc, ce mois-ci, j’ai fait un portfolio et un CV. Le mois suivant, je commencerais à postuler.

    mois 7 – tests, recherche d’emploi

    Ce mois-ci, je me suis concentré sur la retouche de mes projets et la candidature à un emploi. Je voulais aussi apprendre testing et Redux.

    j’ai ajouté flexbox à CodeClub.Social pour le rendre réactif. J’ai amélioré l’UX mobile sur jobSort (). J’ai ajouté des tests à jobSort () avec mocha/chai/enzyme qui était difficile à configurer, facile à Démarrer, puis difficile d’obtenir une couverture à 100%.

    à la fin du mois, j’avais postulé à 63 emplois. J’ai vu cela comme une auto-évaluation., Mon portfolio / curriculum vitae était-il assez bon? Si oui, sur quoi ai-je dû travailler pour me préparer aux entrevues? Au début, j’ai postulé avec Hacker News: qui embauche, et en effet.

    sur Hacker News, j’ai utilisé jobSort() pour déterminer les listes à postuler. En effet, j’ai essayé des sociétés non logicielles pour voir si je pouvais même obtenir un appel ou une interview n’importe où.

    Au début, je postulais rapidement et je ne personnalisais pas mon CV/Lettre de motivation. Ensuite, j’ai décidé de personnaliser ma lettre de motivation et mon CV, puis d’essayer d’envoyer un e-mail à quelqu’un de l’entreprise., Cette méthode était clairement meilleure que l’approche du fusil de chasse.

    j’ai reçu cinq appels Ce mois — là-deux de sociétés de recrutement et trois de sociétés de logiciels qui comprenaient:

    • Un Rôle contractuel DevOps/test dans une société dotcom
    • Une société d’analyse alimentaire de série B, et
    • une start-up assez importante et réussie qui a été récemment achetée par une grande société

    je suis passé devant l’écran des ressources humaines dans deux d’entre eux, mais aucun d’entre eux n’a donné une entrevue sur place. J’étais assez content des trois appels, et j’ai beaucoup appris d’eux.,

    Tout le monde a mentionné en ligne que les développeurs juniors ne sont pas censés en savoir autant dès le début, ils ont juste besoin d’être passionnés et excités d’apprendre. Alors j’ai pensé, facile. Je suis passionné et excité d’apprendre. Ce que j’ai appris de ces appels, cependant, c’est que personne ne cherchait un développeur junior. Ils s’attendent à ce que vous sachiez ce que vous faites dès le premier jour.,

    ces appels m’ont appris que je devais

    • être assez bon pour ajouter de la valeur dès le premier jour
    • être assez confiant pour les convaincre que je peux ajouter de la valeur dès le premier jour

    mois 8 – Quart de nuit, Redux, Open Source, entretien sur site

    j’ai commencé ce mois – ci à travailler le quart de nuit pour une période de 40 jours à mon emploi à temps plein-6 jours par semaine, 12 heures par jour, 17 heures à 5h du matin. Ugh.

    je savais que je ne pourrais pas faire autant ce mois-ci, mais j’avais un objectif et je voulais l’atteindre, donc je ne pouvais pas prendre un mois de congé.,

    j’ai refactorisé jobSort pour utiliser Redux, ce qui n’était étonnamment pas aussi difficile que je le pensais. J’ai écouté beaucoup de podcasts à ce sujet et lu des articles de blog à ce sujet, et cela n’a jamais eu de sens pour moi jusqu’à ce que je commence à l’utiliser.

    j’aime vraiment le flux de données avec Redux. Il est intéressant de voir maintenant des gens se plaindre de Redux. Je ne pense pas que je suis qualifié pour exprimer fortement mes opinions, mais j’aime le Modèle réducteur.

    C’était censé être le mois de l’open source pour moi., J’allais faire ma première contribution open source, et ce serait une grande contribution à une bibliothèque fantastique. J’allais contribuer à Réagir!

    Tout le monde a dit que c’était une base de code difficile à lire et encore moins à contribuer. Mais j’avais besoin de me démarquer, d’être unique. Je savais que ma contribution ne serait pas significative, mais je voulais quand même le faire.

    je commencerais par lire les documents tout au long, puis par parcourir la base de code. Regardez chaque numéro, chaque PR. Lire les documents React dans leur intégralité a été un excellent exercice, et je suis heureux de l’avoir fait., Mais j’ai rapidement réalisé que le problème avec la contribution à React est qu’il n’y a tout simplement pas beaucoup de « bons premiers problèmes”, et ils sont rapidement arrachés.

    lors de l’un des meetups auxquels J’ai assisté, Anthony Ng m’a recommandé D’essayer Downshift, une bibliothèque de saisie semi-automatique de Kent C. Dodds. C’était un gamechanger. Il a eu raison de mon timonerie. La bonne difficulté, la bonne quantité de problèmes à résoudre, pas trop de collaborateurs, un mainteneur super utile, un code propre et bien testé. En plus de tout cela, c’était une solution parfaite à certains problèmes que j’avais avec mon application jobSort ().,

    vers la moitié du mois, j’ai reçu un e-mail de l’une des entreprises auxquelles j’ai postulé le mois précédent. Ils ont mis en place un écran de téléphone initial, puis un écran de téléphone technique. Les technologies qu’ils recherchaient étaient exactement ce que j’avais appris – React, Redux et D3. J’ai surtout parlé de mes projets et des raisons pour lesquelles j’ai pris certaines décisions. Après cela, ils m’ont demandé de venir sur place pour une entrevue. Mon premier entretien sur place!,

    Je ne m’étais pas du tout préparé pour les entrevues, alors j’y suis allé avec l’espoir que je n’obtiendrais pas le travail, mais que j’acquerrais une expérience d’entrevue précieuse. J’ai aussi couru sur trois heures de sommeil depuis que je travaillais encore le quart de nuit qui n’a pas aidé. Heureusement, la partie technique n’était pas un tableau blanc, juste une session de programmation de paire d’une heure. C’était un défi assez simple, mais j’étais très nerveux.

    Au début, j’étais inquiet de m’assurer que je savais tout sans le chercher., Quand j’ai réalisé que je n’allais pas finir le défi, j’ai réalisé que je devais arrêter de me soucier de ce que l’intervieweur pensait de moi et juste google/Stack overflow pour trouver des réponses. Je n’ai pas fini, et je pensais avoir échoué lamentablement.

    comme je pensais avoir échoué à la programmation de la paire, je me suis senti détendu pour le reste de l’interview. En fin de compte, j’ai quitté l’interview le menton levé. Dans le pire des cas, j’ai eu une expérience d’entrevue précieuse, et dans le meilleur des cas, j’ai eu ma première offre d’emploi.,

    9 Mois – Offre d’Emploi

    j’ai fini par recevoir ma première offre d’emploi 9 mois et 7 jours après le premier jour où j’ai décidé que j’allais plonger la tête la première dans la programmation, avec l’intention de changer de carrière. Je me sentais confiant étant donné que j’ai reçu une offre après ma première entrevue sur place, mais en même temps, si je n’acceptais pas l’offre, que se passe-t-il si c’était la seule offre que je recevrais pendant plusieurs mois? J’ai fini par accepter l’offre, et je suis heureux de ma décision. Je voulais être payé pour le code!,

    Conseils

    Jusqu’à ce point, j’ai surtout partagé mon histoire avec quelques conseils asperge. Il y a de fortes Chances que si vous lisez ceci, vous songiez à changer de carrière ou que vous appreniez à coder dans le but de changer de carrière. J’espère que les conseils ci-dessous vous aideront à élaborer un plan ou à respecter votre plan actuel et à atteindre votre objectif.

    1. découvrez ce qui vous motive et l’utiliser à votre avantage. Pour moi, il s’agissait de listes de contrôle, de documenter mes progrès et d’interagir avec diverses communautés de programmation., Si vous n’êtes pas motivé pour atteindre votre objectif, rien d’autre ne compte car vous ne finirez pas.
    2. Se fixer des objectifs et les atteindre. Je dirais que vous devriez avoir des objectifs mensuels et peut-être même des objectifs quotidiens. Objectifs mensuels pour vous assurer que vous êtes sur la bonne voie pour atteindre votre objectif principal, et les objectifs quotidiens pour vous assurer que vous faites réellement des progrès quotidiens. Une stratégie qui a fonctionné pour moi était de faire mes objectifs quotidiens la veille. De cette façon, vous ne pouvez pas faire de travail improductif toute la journée et avoir l’impression d’avoir progressé alors que vous ne l’avez vraiment pas fait., Il vous oblige à comparer vos réalisations quotidiennes avec vos objectifs quotidiens.
    3. allez à meetups bien avant de penser que vous êtes prêt. Aller à meetups peut sembler effrayant, mais comme je l’ai mentionné ci-dessus. Mais, en général, tout le monde est gentil et prêt à aider. Vous pourriez trouver des gens qui ne sont pas intéressés à parler avec vous, mais ils sont la minorité et personne ne portera de jugement. De plus, Tout le monde aime donner des conseils (comme je le fais en ce moment).
    4. contribuez à l’open source avant de penser que vous êtes prêt., Lorsque vous commencez à programmer, Github semble être cet endroit effrayant où vous ne voulez jamais aller. Il est en fait très accueillant pour les débutants et est un endroit idéal pour voir le bon code et obtenir votre propre code examiné. Si vous n’êtes toujours pas convaincu, consultez mon post, Pourquoi devriez-vous contribuer à l’open source maintenant.
    5. commencez à appliquer avant de penser que vous êtes prêt. Celui-ci était difficile pour moi parce que je pensais que j’étais différent. Je pensais que je n’avais pas besoin de tester le marché pour avoir une idée de quoi travailler. Je pensais savoir quand je serais prêt à postuler. Je te le dis maintenant., Vous ne saurez pas quand s’appliquer. Donc, vous pourriez aussi bien commencer maintenant. Vous ne devriez pas devenir fou et appliquer à 300 entreprises avant d’apprendre pour les boucles. Mais vous devez savoir que la meilleure façon de savoir ce que vous devez apprendre est de l’application et de tester le marché.

    maintenant, retournez là-bas et codez!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *