For en uge siden fortalte vi jer om , hvor vi i kommentarerne blev fortalt om vigtigheden af praktikophold og praktisk erfaring. Det er umuligt at være uenig i dette, da teoretisk viden skal styrkes gennem praksis. Med dette indlæg åbner vi en artikelserie om sommerpraktikpladser for studerende: hvordan børn kommer dertil, hvad de laver der, og hvorfor det er godt.
I den første artikel vil jeg fortælle dig, hvordan du består alle faser af interviews og får en praktikplads hos Google.
Et par ord om mig selv
Jeg er førsteårsstuderende på kandidatniveau på HSE St. Petersburg campus, og jeg har afsluttet min bachelorgrad i maskinlæring på Academic University. Under sine bachelorstudier var han aktivt involveret i sportsprogrammer og deltog også i forskellige hackathons. Du kan læse om sidstnævnte , и .
Om praktikpladsen
Først vil jeg fortælle dig lidt om, hvordan et praktikophold hos Google ser ud indefra.
Alle praktikanter, der kommer til Google, bliver tildelt et team. Det kunne være et team, der udvikler en intern infrastruktur, som ingen uden for virksomheden nogensinde har hørt om, eller et produkt, der bruges af millioner af mennesker verden over. Sådanne produkter kan omfatte de velkendte YouTube, Google Docs og andre. Da der er snesevis eller endda hundredvis af udviklere, der arbejder på disse projekter, vil du blive tildelt et team, der specialiserer sig i en mere snæver del af det. For eksempel arbejdede jeg i sommeren 2018 på Google Docs og tilføjede ny funktionalitet til at arbejde med tabeller.
Da du er praktikant i virksomheden, har du en leder, der kaldes en vært. Dette er en almindelig fuldtidsansat, der selv beskæftiger sig med produktudvikling. Hvis du ikke ved noget, ikke kan løse det eller har problemer, så bør du kontakte ham. Typisk er der planlagt ugentlige en-til-en-møder, hvor I kan diskutere projektets aktuelle status eller snakke om noget helt irrelevant. Derudover er værten en af de personer, der vil evaluere det arbejde, du udfører under din praktikplads. Den vil også blive vurderet af en anden, yderligere korrekturlæser. Og selvfølgelig er de interesserede i, at du får succes.
Hos Google vil de indprente dig, men det er ikke sikkert, en god vane med at skrive et designdokument, før du skal foretage dig noget. For dem der ikke ved det, er et designdokument et dokument, der skitserer essensen af et eksisterende problem, samt en detaljeret teknisk beskrivelse af dets løsning. Et designdokument kan skrives for et helt produkt eller for blot én ny funktion. Ved at læse sådan dokumentation kan man forstå formålet med produktet, og hvordan det blev implementeret. I kommentarerne kan man også ofte se dialoger mellem ingeniører, der diskuterer forskellige måder at implementere en del af projektet på. Dette giver en god forståelse af formålet med hver enkelt beslutning.
Det unikke ved denne praktikplads er, at du vil bruge fantastiske interne udviklingsværktøjer, hvoraf Google har et stort antal. Efter at have arbejdet med dem og talt med mange mennesker, der tidligere har arbejdet hos Amazon, Nvidia og andre kendte tech-virksomheder, kan jeg sige, at disse værktøjer har en god chance for at være de bedste, du nogensinde vil støde på i dit liv. For eksempel giver et værktøj kaldet Google Code Search dig ikke blot mulighed for at se hele kodebasen og ændringerne i hver kodelinje, men giver også mulighed for at navigere i koden, hvilket vi er vant til i moderne udviklingsmiljøer som Intellij Idea. Og til dette behøver du kun en browser! En relateret ulempe ved denne funktion er, at du vil savne de samme værktøjer uden for Google.
Hvad angår frynsegoder, har virksomheden fede kontorer, god mad, et fitnesscenter, god forsikring og andre godbidder. Jeg vil lige lægge et par billeder fra kontoret i New York her:



Hvordan får man et tilbud?
Anmeldelse
Nu er det tid til at tale om noget mere alvorligt: hvordan får man en praktikplads?
Det handler ikke om Google, men om hvordan det sker generelt. Jeg vil skrive om detaljerne i Googles praktikantudvælgelsesprocessen nedenfor.
Interviewprocessen i virksomheden vil højst sandsynligt se nogenlunde sådan ud:
- Ansøgning om praktikplads
- Konkurrence på Hackerrank/TripleByte Quiz
- Screeningsinterview
- Første tekniske interview
- Andet teknisk interview
- Onsight interview
Ansøgning om praktikplads
Det hele starter naturligvis med dit ønske om at få en praktikplads. For at gøre dette skal du udtrykke det ved at udfylde en formular på virksomhedens hjemmeside. Hvis du (eller dine venner) har bekendte, der arbejder der, så kan du prøve at komme ind gennem dem. Denne mulighed er at foretrække, fordi den hjælper dig med at skille dig ud fra den store strøm af andre studerende. Hvis dette ikke er muligt, så ansøg selv.
Prøv ikke at blive for ked af det, når du modtager e-mails, der siger ting som "du er så fantastisk, men vi valgte andre kandidater". Og her har jeg et par råd til dig:

Konkurrence på Hackerrank/TripleByte Quiz
Hvis rekruttereren kan lide dit CV, vil du modtage et brev med den næste opgave inden for 1-2 uger. Du vil højst sandsynligt blive tilbudt at deltage i en Hackerrank-konkurrence, hvor du skal løse algoritmiske problemer inden for den tildelte tid, eller TripleByte-quizzen, hvor du skal besvare forskellige spørgsmål vedrørende algoritmer, softwareudvikling og strukturen af lavniveausystemer. Denne fase fungerer som et indledende filter i kandidatudvælgelsesprocessen.
Screeningsinterview
Hvis du består testen, vil du derefter have en screeningssamtale, hvor du vil tale med en rekrutterer om dine interesser og de projekter, som virksomheden tilbyder praktikanter. Hvis du viser interesse, og din tidligere erfaring matcher virksomhedens forventninger, får du grønt lys. Efter min erfaring er dette den mest uforudsigelige del af hele processen, og det afhænger i høj grad af rekruttereren.
Hvis du har bestået disse tre tests, så er størstedelen af tilfældigheden allerede bag dig. Dernæst er der de tekniske interviews, som er mere afhængige af dig, hvilket betyder, at du kan påvirke deres resultat mere. Og det er godt!
Tekniske interviews
Dernæst kommer tekniske interviews, som normalt afholdes via Skype eller Hangouts. Men nogle gange er der mere eksotiske tjenester, der kræver installation af yderligere software. Så sørg for at alt fungerer på din computer på forhånd.
Formatet for tekniske interviews afhænger i høj grad af den stilling, du søger jobsamtale til. Hvis vi taler om stillingen som praktikant inden for softwareudvikling, vil du højst sandsynligt blive stillet et par algoritmiske problemer, hvis løsning skal kodes i en online kodeeditor, for eksempel, . De kan også stille et spørgsmål om objektorienteret design for at se, hvor godt du forstår softwaredesign. For eksempel kan du blive bedt om at designe en simpel onlinebutik. Det er sandt, at jeg aldrig er stødt på et problem, hvis løsning man virkelig kunne bedømme denne færdighed. Ved afslutningen af interviewet vil du sandsynligvis få mulighed for at stille spørgsmål. Jeg anbefaler kraftigt, at du tager dette alvorligt, fordi du gennem spørgsmål kan vise din interesse for projektet og demonstrere din kompetence inden for emnet. Jeg plejer at udarbejde en liste over mulige spørgsmål på forhånd:
- Hvordan fungerer arbejdet med projektet?
- Hvad er den største udfordring, du har været nødt til at løse på det seneste?
- Hvad er udviklerens bidrag til det endelige produkt?
- Hvorfor besluttede du dig for at arbejde for denne virksomhed?
Det er ikke altid tilfældet, at man bliver interviewet af den person, man skal arbejde sammen med i fremtiden. Derfor kan de sidste spørgsmål give en idé om, hvad der sker i virksomheden som helhed. For mig er det for eksempel vigtigt, at jeg har indflydelse på det endelige produkt.
Hvis du består den første samtale, vil du blive tilbudt en anden. Den vil afvige fra den første i intervieweren og dermed opgaverne. Formatet vil højst sandsynligt forblive det samme. Efter at have bestået den anden samtale, kan du blive tilbudt en tredje.
Onsight interview
Hvis du ikke er blevet afvist på dette tidspunkt, vil du have en samtale på stedet, hvor kandidaten inviteres til en samtale på virksomhedens kontor. Det består normalt af flere tekniske interviews og et adfærdsinterview. Under en adfærdssamtale taler du med din leder om dine projekter, hvilke beslutninger du har truffet i forskellige situationer og så videre. Det vil sige, at intervieweren forsøger at forstå din personlighed bedre og dykke ned i dine oplevelser mere detaljeret. Nogle virksomheder, der udfører 3-4 tekniske interviews i stedet for et interview på stedet, tilbyder kun at gennemføre ét adfærdsinterview på afstand.
Nu er der kun tilbage at vente på svaret fra rekruttereren. Hvis alt gik glat, vil du helt sikkert modtage et brev med det længe ventede tilbud. Hvis der ikke er noget tilbud, så bliv ikke ked af det. Virksomheder afviser systematisk gode kandidater. Prøv venligst at søge om en praktikplads igen næste år.
Kodningsinterview
Okay, vent ... Vi har ikke haft nogen interviews endnu. Vi har lige lært, hvordan hele processen ser ud, og nu skal vi forberede os godt til interviewene for ikke at gå glip af chancen for at få en behagelig og nyttig sommer.
Der er ressourcer som f.eks , и , som jeg allerede har nævnt. På disse sider kan du finde et stort antal algoritmiske problemer, og også sende deres løsninger til automatisk verifikation. Det er alt sammen dejligt, men for mig føles det mere som at skyde en kanon mod spurve. Mange af opgaverne på disse ressourcer er designet til at tage lang tid at løse og kræver kendskab til avancerede algoritmer og datastrukturer, mens opgaverne i interviews normalt ikke er så vanskelige og er designet til at tage 5-20 minutter. Derfor er der i vores tilfælde en ressource som f.eks. , som blev skabt som et værktøj til forberedelse til tekniske interviews. Hvis du løser 100-200 opgaver af varierende sværhedsgrad, er det meget sandsynligt, at du ikke vil have nogen problemer under interviewet. Der er stadig nogle fornuftige , hvor du kan vælge sessionens varighed, for eksempel 60 minutter, og systemet vil vælge et sæt problemer for dig, som i gennemsnit ikke tager mere end en time at løse.
Mange anbefaler også at læse bogen “". Jeg har selv kun selektivt læst nogle dele af den. Men det er værd at bemærke, at jeg løste en masse algoritmiske problemer i løbet af min skoletid. Hvis du ikke har haft denne oplevelse, er det stadig værd at i det mindste skimme igennem denne bog."
Hvis du har haft få tekniske jobsamtaler i udenlandske virksomheder, anbefales det også at tage et par prøvejobs. Men jo mere, jo bedre. Dette vil hjælpe dig med at føle dig mere selvsikker under interviewet og mindre nervøs. Prøveinterviews kan arrangeres på .
Adfærdsinterviews
Som jeg nævnte, forsøger intervieweren under et adfærdsinterview at lære mere om din oplevelse og forstå din karakter. Hvad hvis du er en dygtig udvikler, men ikke kan arbejde i et team? Jeg er bange for, at mange mennesker ikke vil være tilfredse med dette. For eksempel kan du blive stillet et spørgsmål som dette: "Hvad er din svaghed?" Ud over spørgsmål af denne art vil du blive bedt om at fortælle om projekter, hvor du har spillet en nøglerolle, om problemer, du er stødt på, samt deres løsninger. Det er værd at bemærke, at du også kan blive spurgt om dette i de første minutter af tekniske interviews. Hvordan man forbereder sig til sådanne interviews er godt beskrevet i et af kapitlerne i "Cracking the Coding Interview".
Nu hvor vi forstår, hvordan udvælgelsesprocessen for praktikanter generelt ser ud, og hvordan man forbereder sig til jobsamtaler, er det tid til at tale om, hvordan det fungerer hos Google.
En liste over ledige praktikpladser kan findes . Hvis du planlægger at tage i sommerpraktik, bør du begynde at ansøge allerede i september.
Interviews
Her ser processen lidt usædvanlig ud. Du vil have en screeningssamtale og to tekniske interviews. Hvis du klarer dig godt i dem, går du videre til projektsøgningsfasen. Du skal udfylde et forholdsvis langt spørgeskema, hvor du angiver alle dine nuværende færdigheder, samt udtrykker præferencer vedrørende projektets emne og det sted, hvor du gerne vil være i praktik.
Det er meget vigtigt at udfylde denne formular grundigt og omhyggeligt! Potentielle værter, der leder efter folk til at deltage i deres projekt, vil gennemgå ledige praktikanter og arrangere samtaler med de kandidater, de kan lide. De kan filtrere eleverne efter placering, nøgleord, afkrydsningsfelter i spørgeskemaer og sortere efter interviewresultater.
Under samtalen taler intervieweren om det projekt, som kandidaten skal arbejde på, og lærer også om kandidatens erfaring. Dette er en god mulighed for at lære, hvordan arbejdsprocessen rent faktisk vil se ud, fordi du kommunikerer med den person, der vil være din vært. Efter interviewet skriver du et brev til rekruttereren med dine indtryk af projektet. Hvis du kunne lide projektet, og intervieweren kunne lide dig, så vil du modtage et tilbud. Ellers bliver du nødt til at vente på efterfølgende opkald, som kan være 2-3-4, eller der er måske slet ikke flere. Det er værd at præcisere, at selvom du har klaret dig godt i interviews, men intet team har valgt dig i projektsøgningsfasen (eller måske har ingen endda interviewet dig), så vil du desværre stå uden et tilbud.
Amerika eller Europa?
Blandt andet skal du beslutte, hvor du vil være i praktik. Jeg havde et valg mellem USA og . Og her er det vigtigt at kende til nogle funktioner. For eksempel er der en følelse af, at det er sværere at komme ind i USA. Først skal du bestå en yderligere 90-minutters konkurrence, hvor du skal løse algoritmiske problemer, samt endnu en 15-minutters undersøgelse, der forsøger at afsløre din karakter. For det andet, efter min og mine venners erfaring, er folk mindre interesserede i dig i den fase, hvor man søger efter et hold. For eksempel havde jeg i 2017 kun én samtale, hvorefter teamet valgte en anden kandidat, og jeg modtog ikke et tilbud. Mens de fyre, der søgte til Europa, havde 4-5 projekter. I 2018 fandt de et hold til mig i januar, hvilket er ret sent. Fyrene arbejdede i New York, jeg kunne lide deres projekt, og jeg var enig.
Som du kan se, er tingene lidt mere komplicerede med USA. Men jeg ville derhen mere end til Europa. Plus, de betaler mere i USA.

Hvad skal man gøre nu?
Ved afslutningen af din praktik har du to muligheder:
- Få en praktikplads til næste år.
- Bestå to tekniske interviews for at få en fuldtidsstilling.
Disse to muligheder er tilgængelige, forudsat at du har gennemført dit nuværende projekt med succes. Hvis dette ikke er din første praktikplads, kan du endda blive tilbudt en fuldtidsstilling uden samtaler.
Derfor opstår følgende situation, som kan beskrives i ét billede:

Da dette var min første praktikplads, besluttede jeg mig for at gennemgå to tekniske samtaler for at få en fuldtidsstilling. Baseret på deres resultater indvilligede de i at give mig et tilbud og begyndte at lede efter et hold, men jeg afslog denne mulighed, fordi jeg besluttede mig for at færdiggøre min kandidatgrad. Det er usandsynligt, at Google forsvinder om 2-3 år.
Konklusion
Venner, jeg håber, at jeg på en tilgængelig og forståelig måde har forklaret, hvordan vejen fra studerende til praktikant ser ud. (og så tilbage…), og dette materiale vil finde sin læser, som vil finde det nyttigt. Som du kan se, er det ikke så svært, som det måske ser ud til, du skal bare lægge din dovenskab og dine frygt til side og begynde at prøve!
P.S. Jeg har også dette her i kurven, hvor du kan kigge.
Kilde: www.habr.com
