Kuinka saada ohjelmistoinsinööri-työpaikka Googlelta ja muilta huipputeknologiayrityksiltä

Hei kaikki!

Olen jo puhunut siitä, kuinka sain henkilökohtaisesti ohjelmistoinsinöörityön Googlessa muutamassa videossa ohjelmointiopetuksen YouTube-kanavallani nimeltä CS Dojo.

Monet ihmiset kuitenkin kysyvät minulta, kuinka saada työpaikka Googlessa ohjelmistoinsinöörinä. Joten tässä on artikkelini, jossa selitetään strategia, jota käytän.

Voit käyttää samaa strategiaa ohjelmistosuunnittelutyön saamiseksi paitsi Googlessa myös muissa huipputeknologiayrityksissä, kuten Amazon, Microsoft ja Facebook.

Tässä artikkelissa aion näyttää sinulle 6-vaiheisen prosessin työpaikan saamiseksi johonkin näistä yrityksistä. Matkan varrella aion myös keskustella:

  • Kuinka oppia koodaamaan ensinnäkin
  • Mitä oppia koodaamisen oppimisen jälkeen
  • Kuinka saada ensimmäinen koodaustyösi tai työharjoittelu
  • Paras tapa hakea ohjelmistosuunnittelijan töihin
  • Kuinka valmistautua parhaiten haastattelujen ohjelmointiin
  • Onko tärkeää saada tietojenkäsittelytieteen tutkinto?
  • Onko tärkeää mennä huippuyliopistoon?

Okei, aloitetaan!

Vaihe 1: Opi koodaamaan

Tämä on ehdoton vähimmäistutkinto, jonka tarvitset tullaksesi ohjelmistoinsinööriksi.

Tätä varten suosittelen, että pääset alkuun interaktiivisella verkkosivustolla, kuten Codecademy ja freeCodeCamp. Voit oppia suurimman osan ohjelmoinnin perusteista näiltä sivustoilta. Kuulin myös, että myös SoloLearn on hyvä.

Sen jälkeen käytän video-opetusohjelmia oppimaan edistyneempiä aiheita. Suosittelen tähän verkkosivustoja, kuten YouTube, Pluralsight, Lynda.com ja Udemy. Näiltä verkkosivustoilta sinun pitäisi pystyä löytämään oppaita seuraavista aiheista:

  • verkkokehitys
  • Mobiilikehitys
  • Pelin kehittäminen

mielenkiinnostasi riippuen.

Mutta odota, minkä ohjelmointikielen minun pitäisi ensin oppia?

Lyhyt vastaukseni olisi valita joko JavaScript tai Python, mutta se riippuu todella kiinnostuksistasi. Minulla on pidempi vastaus tähän kysymykseen tässä videossa.

Vaihe 2: Työskentele muutaman henkilökohtaisen projektin parissa

Kun olet seurannut muutama ohjelmointiopetusohjelma, sinun tulee rakentaa muutama henkilökohtainen projekti harjoitellaksesi oppimiasi.

Tätä varten sinun pitäisi löytää jotain, jota olet kiinnostunut rakentamisesta.

Esimerkiksi, jos pidät valokuvauksesta, voit ehkä rakentaa portfolio-sivuston kaikille valokuvillesi. Jos pidät osakekaupasta, voit ehkä rakentaa järjestelmän, joka analysoi osakekaavioita puolestasi. Tai jos nautit ongelmanratkaisusta, voit kokeilla kilpailua koodauskilpailussa.

Kun työskentelet projektin parissa, rakenna ensin mahdollisimman paljon itse. Jos sitten jää jumiin, hanki apua muilta käyttämällä joko online- tai offline-resursseja. Voit esimerkiksi käyttää pinon ylivuotoa kysyäksesi teknisiä kysymyksiä, jos juutut johonkin ohjelmointiin liittyvään.

Vaihe 3: Hanki ensimmäinen ohjelmointityösi tai työharjoittelu

Kun olet rakentanut muutaman henkilökohtaisen projektin, sinun pitäisi pystyä saamaan ensimmäinen ohjelmointityösi tai työharjoittelu. Sen avulla sinulla on jonkin verran kokemusta ennen haastattelujen aloittamista huipputeknologiayritysten kanssa.

Voit saada ensimmäisen työpaikkasi yhdestä huipputeknologiayrityksistä, mutta on paljon helpompaa ja yleisempää saada se ensin vähemmän tunnetulle yritykselle.

Paras tapa hakea ohjelmistosuunnittelijan töihin

Pelkkä työpaikkahaku verkossa ei välttämättä ole paras strategia, koska juuri kaikki muutkin tekevät.

Sen sijaan suosittelen LinkedInin ja henkilökohtaisen verkon käyttöä ensimmäisen ohjelmointityön saamiseksi.

LinkedInistä löydät ensin rekrytoijat yrityksestä, jossa olet kiinnostunut työskentelemään. Kysy sitten heiltä, ​​olisiko sinulla pätevyys kiinnostavaan tehtävään. Kysy myös heiltä, ​​kuinka voit valmistautua paremmin, jos et ole vielä pätevä.

Henkilökohtaiseen verkostoitumiseen suosittelen Meetupin kaltaisia ​​verkkosivustoja tapaamaan insinöörejä ja rekrytoijia paikallisissa yrityksissä.

Odota, odota, mutta se ei ole kaikki.

LinkedInin ja henkilökohtaisen verkostoitumisen käyttäminen toimii hyvin, jos haet pienistä ja keskisuurista yrityksistä. Olen kuitenkin havainnut, että nämä strategiat ovat vähemmän tehokkaita suosituimmille yrityksille, kuten Google ja Facebook.

Näille suurille yrityksille suosittelen sen sijaan seuraavien kolmen strategian yhdistämistä:

  1. Ura-messut ja rekrytointitapahtumat lähellä olevissa yliopistoissa.
  2. Kutsu ystävät, jotka työskentelevät yhdessä näistä yrityksistä
  3. Käytä vain verkossa.

Kaikkien näiden strategioiden yhdistäminen auttaa lisäämään mahdollisuutta saada haastattelu yhden näistä huipputeknologiayrityksistä.

Muuten, en ole aivan varma, miksi LinkedIn on vähemmän tehokas näiden suurten yritysten kanssa, mutta mielestäni se voi johtua siitä, että he saavat liian monta viestiä. Pohjimmiltaan he ovat siellä liian suosittuja: P

Vaihe 4: Opi tietorakenteet ja algoritmit

Huipputeknologiayritykset, kuten Google ja Microsoft, esittävät haastatteluissa usein kysymyksiä tietorakenteista ja algoritmeista. Joten sinun pitäisi oppia ne, jos et ole vielä.

Perusteiden oppimiseksi suosittelen videoriviäni tietorakenteista ja algoritmeista. Kaikki on YouTubessa. Olen tehnyt nämä videot, jotta tähän aiheeseen tutustuminen olisi mahdollisimman helppoa.

Koska tässä sarjassa on vain 7 videota, tarvitset lisää materiaalia oppiaksesi edistyneempiä aiheita.

Tähän on useita suosittuja vaihtoehtoja, kuten:

  • Nämä Stanfordin kurssit Courseralla
  • Tämä MIT-kurssi YouTubessa
  • Skienan algoritmisuunnittelukäsikirja (kirja)
  • Algoritmit (toinen kirja)

Kokeile muutama näistä ja jatka siitä, josta pidät eniten.

Vaihe 5: Valmistaudu haastattelujen koodaamiseen

Haastattelujen tekeminen Googlen ja Microsoftin kaltaisissa yrityksissä on vaikeaa, mutta valmistautuminen niihin on hieman suoraviivaista.

Kun sinulla on vankka käsitys tietorakenteista ja algoritmeista, suosittelen näitä kolmea resurssia käytäntöön:

  • Leetcode - interaktiivinen foorumi haastatteluongelmien koodaamiseen.
  • Cracking the Coding Interview - suosittu kirja haastattelujen koodaamisesta.
  • Päivittäinen koodausongelma - postituslista, joka antaa sinulle yhden ongelman päivässä.

Harjoiteltuasi muutaman viikon yksin, sinun pitäisi alkaa tehdä pilkkohaastatteluja.

Kuinka tehdä haastatteluja

Yhdistä periaatteessa ystäväsi kanssa ja anna toisillesi ongelmia yllä mainituista resursseista.

Ratkaise sitten jokainen ongelma paperilla tai Google-dokumentissa. Selitä ratkaisu ystävällesi.

Varmista, että harjoittelet sekä haastateltavana että haastattelijana, jotta näet, millaista on olla haastattelijan kengissä.

Kun olet tehnyt noin 20 pilkata haastattelua, sinun pitäisi olla valmis aloittamaan haastattelut niiden yritysten kanssa, joissa haluat työskennellä.

Vaihe 6: Käytä, käytä ja käytä uudelleen :)

Käytä edellä mainittuja kolmea strategiaa voidaksesi soveltaa huipputekniikan yrityksiä:

  • rekrytointitapahtumat / uramessut
  • saada ystäväsi viittaamaan sinuun
  • ja hakeminen verkossa.

Jos et pääse ensimmäistä kertaa, älä huoli. Itse asiassa sinun pitäisi odottaa joitain epäonnistumisia, koska pääsy mihin tahansa näistä yrityksistä on kilpailukykyinen.

Minulle henkilökohtaisesti minun piti hakea Googlesta viisi kertaa, ennen kuin sain ohjelmistoinsinööri-työpaikkani sinne.

Se siitä! Tässä on lyhyt yhteenveto:

  • Vaihe 1: Opi koodaamaan
  • Vaihe 2: Työskentele muutaman henkilökohtaisen projektin parissa
  • Vaihe 3: Hanki ensimmäinen ohjelmointityösi tai työharjoittelu
  • Vaihe 4: Opi tietorakenteet ja algoritmit
  • Vaihe 5: Valmistaudu haastattelujen koodaamiseen
  • Vaihe 6: Käytä, käytä ja käytä uudelleen :)

Odota, onko se todella niin yksinkertaista?

Kyllä se on. Silti se vie paljon aikaa ja omistautumista läpi kaikki 6 vaihetta.

Muutama muistiinpano lisää:

Pitääkö minun hankkia tietojenkäsittelytieteen tutkinto?

Lyhyt vastaus on ei. Tietojenkäsittelytieteen tutkinnon saaminen auttaa kuitenkin paljon. Jos otat vankan CS-ohjelman, se huolehtii suurimmasta osasta vaiheita 1, 2, 3 ja 4 (koodaamisen oppiminen, henkilökohtaisten projektien tekeminen, ensimmäisen ohjelmointityön tai harjoittelun saaminen sekä tietorakenteiden ja algoritmien oppiminen).

Ilman CS-tutkintoa sinun tarvitsee oppia lisää yksin.

Huomaa myös, että jopa CS-tutkinnon suorittaminen vie paljon työtä saadakseen ohjelmistosuunnittelijan työpaikan johonkin näistä yrityksistä.

Pitääkö minun mennä huippuyliopistoon, kuten MIT, Stanford, Carnegie Mellon jne.?

Lyhyt vastaus on jälleen ei. Se todennäköisesti auttaa vähän, mutta se ei ole läheskään välttämätöntä.

Laszlo Bock, entinen Googlen People Operations -yksikön johtaja, on samaa mieltä.

Kirjoittamansa kirjan mukaan Work Rules! Google pitää parempana vähemmän tunnettujen koulujen parhaiten menestyviä opiskelijoita kuin MIT: n kaltaisten huippukoulujen keskinkertaisesti menestyviä opiskelijoita.

Mielestäni tällä on järkeä, koska jos olet älykäs ja omistautunut, sillä ei pitäisi olla väliä liikaa mitä koulua olet käynyt.

Tarvitseeko minun olla korkea GPA?

Lyhyt vastaus on jälleen ei.

Korkea GPA-arvo auttaa todennäköisesti myös haastattelua, mutta on todennäköisesti paljon tärkeämpää saada vankka käytännön kokemus ja mielenkiintoiset projektit, jotka näytetään ansioluettelossasi.

Itse asiassa Työsääntöjen mukaan! Google on aiemmin välittänyt paljon ehdokkaiden GPA-arvoista. He ovat kuitenkin havainneet, että korkean GPA: n saaminen ei ole vahvassa korreloinnissa vahvaan työpaikan suorituskykyyn pitkällä aikavälillä. Tämän löydön jälkeen he lopettivat niin vahvan painotuksen GPA: hin.

Mitä minä sitten tarvitsen?

Pohjimmiltaan kaikki mitä tarvitset on vahva koodaus- ja ongelmanratkaisutaito, hyvä ymmärrys CS-perusteista ja mielenkiintoiset projektit ja kokemukset, jotka näytetään ansioluettelossasi.

Pystyt rakentamaan kaikki nämä, jos noudatat edellä selitettyjä kuutta vaihetta.

Odota, kuinka voin kuitenkin kirjoittaa hyvän yhteenvedon ?

Voit halutessasi käyttää mallina jatkoa, jota käytin Googleen.

  • Tässä on PDF-versio.
  • Tässä on yksi Wordille.
  • Tässä on sivuille.

Se on varsinainen yhteenveto, jolla käytin työpaikkaa Googlessa ohjelmistoinsinöörinä. Sen olisi pitänyt olla yksi sivu, joten sanoisin, että ansioluetteloni oli liian pitkä. Silti voit käyttää sitä lähtökohtana.

Lisäresurssit yhteenvedon kirjoittamiseen :

  • Täältä löydät hyvän yleiskatsauksen aiheesta CareerCup.
  • Ystäväni Zhia Hwa Chongilla, joka on ohjelmistosuunnittelija Twitterissä, on täällä mukava artikkeli.

Okei, onnea, ja kiitos tämän artikkelin lukemisesta!

Jos sinulla on kysyttävää, ilmoita siitä minulle alla olevassa kommentissa tai Instagramissa tai Twitterissä (@ykdojo molemmissa).