Am fost un boboc și am început să programez auto-studiu în perioada ianuarie – februarie. În luna mai, am primit oferta de stagiu la o companie cunoscută.

Ceea ce pot să spun este că obținerea unui stagiu de inginerie software este greu în zilele noastre. Trebuie să parcurgi întregul proces de aplicare, să studiezi pentru interviuri tehnice și să te înfățișezi mereu. Înțeleg lupta, deoarece am aplicat la peste 700 de companii pentru a obține oferta mea.

Cu toate acestea, este total posibil să intrați în industrie prin auto-studiu dacă sunteți riguros și studiați modul corect.

Mai jos este un ghid pas cu pas cu pașii importanți pe care i-am făcut și o prezentare generală a ceea ce am făcut în special.

Cum mi am obtinut stagiul de inginerie software dupa 4 luni

Pasul 1: Învățarea elementelor de bază

Routech și CodeCademy sunt cele mai bune resurse dacă începeți, cu mâinile jos.

Ambele oferă explicații în cel mai simplu mod posibil și vă învață noțiunile de bază absolute ale ceea ce trebuie să știți pentru a intra în industrie. Vă recomand să începeți cu CodeCademy pentru a învăța sintaxa limbii la alegere.

Notă: Este important să știți la ce roluri doriți să aplicați pentru a studia eficient. De exemplu, dacă doriți un stagiu front-end, cursul de dezvoltare web pe Routech va fi deosebit de util. Acest ghid se va concentra în principal pe partea frontală.

Ce am facut:

Personal, am fost întotdeauna mai interesat să lucrez la front-end. Pentru un dezvoltator web front-end, o cunoaștere profundă a JavaScript, HTML și CSS este, fără îndoială, cel mai important lucru.

Prin urmare, am început prima mea săptămână de auto-studiu petrecând tot timpul pe CodeCademy excelent Introducere în Javascript curs. Este complet gratuit, cu explicații pentru începători. Pentru ca studiul meu să fie și mai eficient, am luat în mod regulat note despre ceea ce am învățat și ceea ce nu am înțeles. Mai târziu aș revedea acele note pentru a-mi reîmprospăta memoria, ceea ce este crucial pentru a nu uita ceea ce am învățat.

HTML și CSS sunt relativ mai ușor de învățat. Am trecut la cursul complet de design web Routech. Este una dintre cele mai bune resurse gratuite disponibile. Dacă veți parcurge întregul curs, ați ști mai multe decât elementele de bază ale dezvoltării web.

Când simți că știi elementele de bază, îți recomand cu tărie să continui să înveți cu Manualul dezvoltatorului front-end. Oferă o listă completă de resurse pentru cursanții mai avansați, atât plătiți, cât și gratuit. Conține mii de ore de lectură și vă va învăța toate trucurile pe care ar trebui să le cunoască un maestru dezvoltator web.

Pasul 2: Crearea de proiecte

După câteva săptămâni, ar trebui să fiți gata să vă angajați să creați un proiect mic. Proiectele sunt imense în CV-ul dvs. atunci când nu aveți multă experiență. Din nou, Routech oferă idei de proiecte foarte bune. Începeți cu ceva mic.

Dacă te lupți să găsești idei de proiect, poți să faci „100 de idei de proiecte în limbaj X” de la Google și de obicei face asta. De asemenea, aruncați o privire asupra altor repos-uri GitHub și învățați din codul lor.

Când ați terminat, testați-l și puneți codul sursă pe Github. Acest lucru este crucial, deoarece este singurul mod în care companiile vă pot valida abilitățile fără experiență prealabilă în muncă. Puneți cod de bună calitate cu documentație atunci când puteți.

Ce am facut:

Când am primit oferta mea, făcusem 4 – 5 proiecte. Am început cu o mică aplicație web de jocuri de dactilografiere furcată de la GitHub al altui student și am învățat multe din codul lor, apoi am adăugat-o pe a mea. Am mers treptat către proiecte mai complicate. Iată o listă cu toate proiectele pe care le-am făcut înainte de a-mi face stagiul, descrierile lor și stivele pe care le-am folosit:

  1. Diverse alte jocuri mici, cum ar fi Minesweeper, toate realizate cu React și stilate cu CSS.
  2. O hartă pentru a vizualiza peste jumătate de milion de puncte de date de trafic realizate cu Javascript și Mapbox.
  3. O aplicație React Native funcțională pentru a permite utilizatorilor să-și prezinte cele mai bune imagini, cu backend-ul implementat în Node.js și Mongoose, găzduit pe Heroku.
1612024269 463 Cum mi am obtinut stagiul de inginerie software dupa 4 luni

Pasul 3: Solicitați locuri de muncă

Am cea mai mare experiență în acest domeniu, deoarece am aplicat la atâtea locuri de muncă. Cele mai bune sfaturi pe care le am, cu privire la căutarea unui loc de muncă și procesul de interviu, sunt:

  1. LinkedIn, Glassdoor și Indeed Easy Apply nu sunt prietenii tăi. Cu acest tip de postări, recrutorul primește atât de multe aplicații încât utilizează de obicei un ATS (Application Tracking System) pentru a filtra toate CV-urile. Dacă nu aveți experiență anterioară sau proiecte impresionante, șansele de a trece prin filtru sunt foarte mici.
  2. O scrisoare de intentie este o sabie cu două tăișuri. Când ați terminat corect, vă poate diferenția cu adevărat de restul candidaților. Cu toate acestea, atunci când faceți greșit, vă poate agrava situația. Sfatul meu dacă ai scrie unul este să-l croiești, să-l croiești, să-l croiești. Direcționați scrisoarea de intenție în mod special către compania pentru care solicitați. NU trimiteți aceeași scrisoare de intenție generică fiecărei companii, deoarece recrutorii știu că ați trimis deja 100 dintre acestea. În cele din urmă, vă rugăm să vă asigurați că nu există erori gramaticale. Un tipar este suficient pentru ca recrutorul să te respingă.
  3. Cel mai mare succes l-am avut fie aplicând direct pe site-ul companiei, fie prin recrutare prin e-mail rece (sau chiar CEO-ul, dacă compania este destul de mică). Dacă compania nu are un e-mail public, puteți ghici de obicei, deoarece este aproape întotdeauna în formă hello at companyname dot com. Au șanse MULTE mai mari să se uite la CV-ul tău decât dacă l-ai fi trimis prin Indeed / Glassdoor. Puteți avea un șablon și puteți modifica ușor formularea pentru diferite companii.
  4. Au pielea groasă. Companiile te resping din tot felul de motive aleatorii și recrutorii te fantomează tot timpul. Este normal. Dacă aveți un CV mai puțin atractiv, aveți șanse mai mici de a primi un interviu. Continuați să aplicați și nu renunțați. Nu se termină niciodată până nu încetați să încercați.

Pasul 4: Interviu

1612024269 164 Cum mi am obtinut stagiul de inginerie software dupa 4 luni

Când veți obține în cele din urmă acel interviu dulce, asigurați-vă că vă pregătiți pentru el. Există numeroase resurse online care vă învață cum să obțineți un interviu tehnic. Dacă nu l-ați citit deja, Cracking Interviu de codare este o lectură foarte bună.

Interviurile tehnice sunt foarte stresante. Nu există nicio soluție pentru ei – trebuie să rezolvați întrebările algoritmului. Leetcode oferă o mulțime de întrebări bune pentru practică.

Cu toate acestea, din moment ce sunt atât de cunoscute, este foarte puțin probabil să primiți exact aceeași întrebare pe care ați practicat-o la un interviu. Intervievatorul are de obicei o bancă de întrebări aleatorii care nu sunt postate online. Totuși, ideea de bază rămâne aceeași. De exemplu, este întotdeauna bine să vă cunoașteți cu atenție structurile de date și Big O.

Un alt lucru de remarcat: companiile cu care am intervievat mi-au adus deseori în discuție proiectele și mi-au pus întrebări tehnice despre implementare. Este modul lor de a testa dacă ați mințit proiectele dvs., așa că fiți pregătiți pentru asta.

Ce am facut:

Pentru a începe: este ok să sugeți la interviuri. Le-am încurcat complet pe primele mele. Este jenant să ne amintim.

Mi-am dat seama că nu sunt suficient de pregătit pentru întrebările tehnice. Am început să fac Leetcode 2 – 3 ore pe zi. Cel mai important lucru este să nu cheltuiți prea mult pe o singură problemă. Nu aveți timp nelimitat la interviu. În schimb, puneți un cronometru, spuneți 10 minute pentru o întrebare ușoară și 20 de minute pentru una medie (majoritatea nu veți primi întrebări dificile Leetcode la interviurile dvs. dacă solicitați o poziție de bază sau un stagiu).

Dacă nu o puteți rezolva la timp, este complet ok. Uită-te la soluție și încearcă să o înțelegi. Bifați întrebarea pe care nu o puteți rezolva și încercați din nou peste o săptămână.

Deoarece interviurile îți testează și abilitățile de comunicare, te poți pregăti spunându-ți gândurile cu voce tare atunci când practici întrebări. Crede-mă, poate suna ciudat la început, dar face o mare diferență în interviuri atunci când ești obișnuit să vorbești.

Resurse: unde să găsiți locuri de muncă și stagii de bază

Ceea ce obișnuiam să găsesc stagii (în afară de Glassdoor, Indeed și Linkedin) include Lista Breakout și AngelList.

2 cenți ai meis: Mi-am dat seama cât de groaznic era să încerc să găsesc locuri de muncă pentru stagii. Nu există o modalitate ușoară și rapidă de a găsi o listă completă a companiilor cu listele lor de internship. Comunitatea Routech este minunată și m-a ajutat foarte mult pe parcursul slujbei mele și aș dori să contribui înapoi.

1612024269 831 Cum mi am obtinut stagiul de inginerie software dupa 4 luni

Am venit cu această aplicație după stagiul meu ca proiect secundar, să întocmesc o listă a companiilor și a stagiilor lor / posturilor de bază, care pot fi filtrate după locație, etichete, termen școlar etc. Voi detali despre aceasta în secțiunea următoare.

Concluzie

Găsirea primului loc de muncă / stagiu poate fi un proces lung, frustrant și plictisitor. Cu toate acestea, experiența pe care o câștigi de la locul de muncă efectiv o merită în totalitate.

Iată o comparație a proiectului pe care l-am realizat după stagiul meu și unul dintre primele mele proiecte.

1612024269 203 Cum mi am obtinut stagiul de inginerie software dupa 4 luni
Proiectul meu de a ajuta studenții, noii absolvenți și auto-învățații să găsească stagii și locuri de muncă. Disponibil la mrshibe.me
1612024270 253 Cum mi am obtinut stagiul de inginerie software dupa 4 luni
Primul proiect pe care l-am făcut singur. Mineweeper cu cronometru

O diferență destul de mare, nu?

Acesta este motivul pentru care cred că timpul petrecut în timpul stagiului meu a meritat în totalitate. Nu aș fi reușit niciodată să realizez ultimul meu proiect fără toate îndrumările și experiența acumulată la stagiul meu. Proiectul este o platformă și un forum de locuri de muncă pentru a descoperi stagii și posturi de bază pentru studenți, dezvoltatori autodidacti și noi absolvenți. Poti vizualizați-l aici.

Mă străduiesc să mă îmbunătățesc și orice feedback este binevenit. Aș dori să scriu următorul articol ca ghid pas cu pas despre modul în care am proiectat și structurat aplicația, așa că anunțați-mă dacă sunteți interesat. Mi-ar plăcea, de asemenea, să-i ajut pe alții care abia încep, așa cum înțeleg lupta. Dacă aveți întrebări, nu ezitați să-mi trimiteți un mesaj (puteți evidenția acest lucru și faceți clic pe pictograma mesajului din fereastra pop-up).

Noroc tuturor!