de YK Sugi

Cum să obțineți un loc de muncă inginer software la Google și la alte companii de top tehnologie

Cum sa obtineti un loc de munca inginer software la

Buna tuturor!

Am vorbit deja despre cum am obținut personal un post de inginer software la Google în câteva videoclipuri de pe canalul meu YouTube de educație-programare numit CS Dojo.

Cu toate acestea, mulți oameni încă mă întreabă despre cum să obțin un loc de muncă la Google ca inginer software. Deci, iată articolul meu care explică strategia pe care aș folosi-o.

Puteți utiliza aceeași strategie pentru a obține o slujbă de inginerie software nu doar la Google, ci și la alte companii de top din domeniul tehnologiei, cum ar fi Amazon, Microsoft și Facebook.

În acest articol, vă voi arăta procesul în 6 pași pentru obținerea unui loc de muncă la una dintre aceste companii. Pe parcurs, voi discuta și:

  • Cum să înveți să codezi în primul rând
  • Ce să înveți după ce înveți să codezi
  • Cum să obțineți primul loc de muncă de codificare sau stagiu
  • Cele mai bune moduri de a aplica pentru locuri de muncă inginer software
  • Cea mai bună pregătire pentru programarea interviurilor
  • Este important să obțineți o diplomă în informatică?
  • Este important să mergi la o universitate de top?

Bine, să începem!

Pasul 1: Învață să codezi

Aceasta este calificarea minimă absolută de care aveți nevoie pentru a deveni inginer software.

Pentru aceasta, vă recomand să începeți cu un site web interactiv, cum ar fi Codecademie și Routech. Puteți afla cele mai multe elemente fundamentale de programare de pe aceste site-uri. Am auzit și asta SoloLearn este bine, de asemenea.

După aceea, aș folosi tutoriale video pentru a afla subiecte mai avansate. Recomand site-uri web precum YouTube, Pluralsight, Lynda.com și Udemy pentru asta. Pe aceste site-uri web, ar trebui să puteți găsi tutoriale despre subiecte precum:

  • dezvoltare web
  • Dezvoltare mobilă
  • Dezvoltarea jocului

în funcție de interesul dumneavoastră.

Dar așteaptă, ce limbaj de programare ar trebui să învăț mai întâi?

Răspunsul meu scurt ar fi, alege fie JavaScript, fie Python, dar depinde într-adevăr de interesele tale. Am un răspuns mai lung la această întrebare în acest video.

Pasul 2: Lucrați la câteva proiecte personale

După ce ați urmat câteva tutoriale de programare, ar trebui să construiți câteva proiecte personale pentru a practica folosind ceea ce ați învățat.

Pentru aceasta, ar trebui să găsiți ceva care vă interesează să construiți.

De exemplu, dacă îți place fotografia, poate îți poți construi un site de portofoliu pentru toate fotografiile tale. Dacă vă place să tranzacționați acțiuni, poate puteți construi un sistem care să analizeze diagramele de acțiuni pentru dvs. Sau, dacă vă place rezolvarea problemelor, puteți încerca să concurați într-o competiție de codare.

Când lucrați la un proiect, construiți mai întâi cât mai mult posibil de unul singur. Apoi, dacă vă blocați, primiți ajutor de la alții folosind fie resurse online, fie offline. De exemplu, puteți utiliza Stack Overflow pentru a pune întrebări specifice, tehnice, dacă vă blocați ceva legat de programare.

Pasul 3: Obțineți primul loc de muncă de programare sau stagiu

După ce ați construit câteva proiecte personale, ar trebui să puteți obține primul loc de muncă de programare sau stagiu. Cu aceasta, veți avea ceva experiență înainte de a începe interviurile cu companii de top tehnologie.

Este posibil să obțineți primul loc de muncă la una dintre cele mai bune companii de tehnologie, dar este mult mai ușor și mai obișnuit să îl obțineți mai întâi la o companie mai puțin cunoscută.

Cele mai bune moduri de a aplica pentru locuri de muncă inginer software

Pur și simplu să aplicați pentru locuri de muncă online nu este neapărat cea mai bună strategie, deoarece asta fac aproape toți ceilalți.

În schimb, aș recomanda să folosiți LinkedIn și rețeaua personală pentru a obține primul loc de muncă de programare.

Pe LinkedIn, găsiți mai întâi recrutorii companiei la care sunteți interesat să lucrați. Apoi, întrebați-i dacă ați fi calificat pentru postul care vă interesează. Ar trebui să îi întrebați și cum vă puteți pregăti mai bine dacă nu sunteți încă calificat.

Pentru rețeaua personală, aș recomanda site-uri web precum Meetup pentru a întâlni ingineri și recrutori la companii locale.

Stai, stai, dar asta nu e tot.

Utilizarea LinkedIn și rețeaua personală funcționează bine dacă aplicați pentru companiile mici și mijlocii. Cu toate acestea, am constatat că aceste strategii sunt mai puțin eficiente pentru companiile mai populare precum Google și Facebook.

Pentru aceste companii mari, în schimb, recomand să combinați următoarele trei strategii:

  1. Târguri de carieră și evenimente de recrutare la universități din apropierea dvs.
  2. Obțineți recomandări de la prieteni care lucrează la una dintre aceste companii
  3. Pur și simplu aplicați online.

Combinarea tuturor acestor strategii vă va ajuta să creșteți șansa de a obține un interviu cu una dintre aceste companii de top tech.

Apropo, nu sunt exact sigur de ce LinkedIn este mai puțin eficient cu aceste companii mari, dar cred că ar putea fi pentru că primesc prea multe mesaje. Practic, sunt prea populari acolo: P

Pasul 4: Aflați structurile de date și algoritmii

Companiile de înaltă tehnologie precum Google și Microsoft pun adesea întrebări despre structurile de date și algoritmi în interviurile lor. Deci, ar trebui să le învățați dacă nu le-ați făcut încă.

Pentru a învăța elementele de bază, aș recomanda seria mea video pe structuri de date și algoritmi. Totul este pe YouTube. Am realizat aceste videoclipuri pentru a face cât mai ușor posibil cunoașterea acestui subiect.

Deoarece există doar 7 videoclipuri în această serie, veți avea nevoie de mai mult material pentru a afla subiecte mai avansate.

Există mai multe opțiuni populare pentru acest lucru, inclusiv:

Ar trebui să încercați câteva dintre acestea și să continuați cu cel care vă place cel mai mult.

Pasul 5: Pregătiți-vă pentru codarea interviurilor

Codificarea interviurilor la companii precum Google și Microsoft este dificilă, dar este oarecum simplu să ne pregătim pentru ele.

Odată ce ați înțeles solid structurile de date și algoritmii, aș recomanda aceste trei resurse pentru practică:

După ce ați practicat singur câteva săptămâni, ar trebui să începeți să faceți interviuri simulate.

Cum se fac interviuri simulate

Practic, împerecheați-vă cu prietenii dvs. și dați-vă reciproc probleme din resursele menționate mai sus.

Apoi, rezolvați fiecare problemă pe hârtie sau pe un document Google. Explică-ți soluția prietenului tău.

Asigurați-vă că exersați atât ca intervievat, cât și ca intervievator, astfel încât să puteți vedea cum este să fiți în locul intervievatorului.

După ce faceți aproximativ 20 de interviuri simulate, ar trebui să fiți gata să începeți interviurile cu companiile pentru care doriți să lucrați.

Pasul 6: Aplicați, aplicați și aplicați din nou 🙂

Utilizați cele trei strategii menționate mai sus pentru a aplica companiilor de top tehnologie:

  • recrutarea de evenimente / târguri de carieră
  • determinându-i pe prietenii tăi să te îndrume
  • și aplicarea online.

Dacă nu primești prima dată, nu-ți face griji. De fapt, ar trebui să vă așteptați la unele eșecuri, deoarece intrarea în oricare dintre aceste companii este competitivă.

Pentru mine personal, Trebuia să aplic la Google de 5 ori înainte de a-mi atinge locul de muncă inginer software acolo.

Asta e! Iată o recapitulare rapidă:

  • Pasul 1: Învață să codezi
  • Pasul 2: Lucrați la câteva proiecte personale
  • Pasul 3: Obțineți primul loc de muncă de programare sau stagiu
  • Pasul 4: Aflați structurile de date și algoritmii
  • Pasul 5: Pregătiți-vă pentru codarea interviurilor
  • Pasul 6: Aplicați, aplicați și aplicați din nou 🙂

Stai, este chiar atât de simplu?

Da, este. Totuși, este nevoie de mult timp și dedicare pentru a parcurge toți cei 6 pași.

Câteva note:

Trebuie să obțin o diplomă în informatică?

Răspunsul scurt este nu. Cu toate acestea, obținerea unei diplome în informatică ajută foarte mult. Dacă luați un program CS solid, acesta se ocupă de majoritatea pasului 1, 2, 3 și 4 (învățarea codării, realizarea proiectelor personale, obținerea primului loc de muncă de programare sau stagiu și învățarea structurilor de date și algoritmilor).

Fără a lua o diplomă de CS, va trebui doar să aflați mai multe pe cont propriu.

De asemenea, vă rugăm să rețineți că, chiar și cu o diplomă în CS, este nevoie de multă muncă pentru a obține un loc de muncă inginer software la una dintre aceste companii.

Trebuie să merg la o universitate de top precum MIT, Stanford, Carnegie Mellon etc.?

Din nou, răspunsul scurt este nu. Probabil ajută puțin, dar este departe de a fi necesar.

Laszlo Bock, fost vicepreședinte senior al operațiunilor pentru oameni la Google, este de asemenea de acord.

Conform cărții pe care a scris-o, Reguli de lucru!, Google preferă elevii cu performanțe superioare la școli mai puțin cunoscute decât elevii cu performanțe mediocre din școlile de top precum MIT.

Cred că acest lucru are sens, pentru că dacă ești inteligent și devotat, nu ar trebui să conteze prea mult la ce școală ai mers.

Trebuie să am un GPA ridicat?

Răspunsul scurt este nu, din nou.

A avea un GPA ridicat probabil ajută puțin și pentru obținerea unui interviu, dar este probabil mult mai important să aveți experiență practică solidă și proiecte interesante de prezentat în CV-ul dvs.

De fapt, potrivit Reguli de lucru!, Google obișnuia să aibă grijă mult de GPA-urile candidaților în trecut. Cu toate acestea, au descoperit că a avea un GPA ridicat nu este puternic corelat cu a avea o performanță puternică la locul de muncă pe termen lung. După această constatare, au încetat să mai pună un accent atât de puternic pe GPA-uri.

De ce am nevoie atunci?

Practic, tot ce aveți nevoie este abilități puternice de codare și rezolvare a problemelor, o bună înțelegere a elementelor fundamentale ale CS și proiecte și experiență interesante de arătat în CV-ul dvs.

Veți putea construi toate acestea dacă urmați cei 6 pași pe care i-am explicat mai sus.

Stai, cum pot scrie un bun relua deşi?

Dacă doriți, puteți utiliza CV-ul pe care l-am folosit pentru a aplica la Google ca șablon.

Acesta este CV-ul propriu-zis pe care l-am folosit pentru a obține un loc de muncă la Google ca inginer software. Ar fi trebuit să fie o singură pagină, așa că aș spune că CV-ul meu a fost prea lung. Totuși, nu ezitați să îl utilizați ca punct de plecare.

Resurse suplimentare pentru scrierea unui relua:

  • Există o prezentare generală frumoasă despre acest subiect pe CareerCup aici.
  • Prietenul meu Zhia Hwa Chong, care este inginer software la Twitter, are un frumos articol despre asta aici.

Bine, mult succes și vă mulțumesc că ați citit acest articol!

Dacă aveți întrebări, vă rugăm să ne anunțați într-un comentariu de mai jos sau pe Instagram sau Stare de nervozitate (@ykdojo pe ambele).