Skip to main content

Tekniska intervjufrågor och tips - musen

ECHA - Classification and labelling, notify in time! (Juni 2025)

ECHA - Classification and labelling, notify in time! (Juni 2025)
Anonim

Med Silicon Valley andra stora tekniska boom, ingenjörer har varit i oerhört hög efterfrågan av såväl startups som tech jättar. För dig som har teknisk bakgrund eller studerar datavetenskap är världen din ostron just nu.

Som sagt, företag ger inte bara jobb. Programmerare behöver fortfarande genomgå specialiserade intervjuprocesser - inklusive den ibland fruktade tekniska intervjun.

Att förbereda sig för dessa kan vara förvirrande prövningar. Ska du studera specifika tekniska projekt eller generellt uppdatera dig om många ämnen? Ska du öva på en dator eller med en vän?

Som den tredje ingenjören på Pocket Gems, som har cirka 165 tekniska anställda, har jag genomfört hundratals telefonintervjuer och platsintervjuer. Under den här tiden har jag lärt mig mycket om hur jag ordentligt förbereder mig för en. Här är de tips du behöver för att spika din nästa tekniska intervju.

Fokusera på Fundamentals

Intervjuare kommer främst att ställa frågor om dina grunder: datastrukturer, algoritmisk komplexitetsanalys, klassdesign och liknande. Dessa kommer att vara frågor både direkt om grunder (t.ex. använda X för att göra Y) och frågor som du kommer att använda dina grunder (mer om det nedan).

Tänk på grunderna som verktygen i din verktygslåda. De kommer att förbli densamma oavsett vilken fantastisk ny teknik som kommer ut. Med starka grunder är du bättre beredd att ta itu med öppna problem - de typer av problem som vi och många andra nystartade företag löser på en daglig basis. Genom att fokusera på grunderna kan intervjuerna spendera mindre tid på att ställa in intervjufrågorna och mer tid att se hur du tänker.

Till exempel kan du bli ombedd något som: Du får ett binärt träd och två noder i trädet. Hitta den lägsta gemensamma förfäder till de två givna noderna i O (n) -tid.

Genom denna fråga ser intervjuaren för att se hur väl du kan kommunicera din tankeprocess och lösning. Hur du tänker igenom problemet, organiserar dina tankar och kommunicerar ditt svar är ofta lika viktigt som din slutsats. Vi arbetar i komplexa och ständigt föränderliga miljöer och behöver människor som både kan lösa tuffa problem och effektivt kommunicera dem till sina tekniska och icke-tekniska teamkamrater.

För detta område av intervjun bör du vara bekväm att diskutera saker som strängar, matriser, grundsyntax, datatyper, länkade listor, träd, grafer, staplar, köer och hashbord. Åh, och se till att du kan svara på FizzBuzz utan att slå ett öga.

Var beredd på att lösa saker på olika sätt

Var och en av dina grunder har för- och nackdelar och erbjuder en unik lösning för en viss typ av problem. När intervjuerna ställer en fråga enbart om dina grunder, kommer de sannolikt att se hur du kan använda dem i praktiken. Detta uppnås genom att ställa öppna frågor som kan lösas på olika sätt.

En exempelfråga här skulle vara: Du får en aritmetisk ekvation som en sträng. Denna ekvation kommer att ha enstaka siffror 0-9, tillägg, subtraktion, multiplikation och parenteser. Skriv en funktion som tar denna ekvation och beräknar rätt svar. Exempelingångar inkluderar “1 + 1” och “2 * (1 + 9) - ((2 + 5) -9”).

Som tidigare vill intervjuaren se hur du bryter ner öppna frågor och din tankeprocess när du väljer din lösning. Det viktigaste av allt är att de vill se att du effektivt kan kommunicera komplexa problem.

Oavsett vilken fråga eller vilken lösning du väljer, se till att tänka högt! Om du har olika sätt att lösa problemet, prata igenom alternativen innan du bestämmer vilka du ska använda. Det hjälper intervjuaren att se och förstå din tankeprocess. Intervjuaren kan också rekommendera en lösning framför de andra eftersom han eller hon vet att de andra kan ha vissa fallgropar eller kan ligga utanför intervjun.

Var inte rädd för att ställa frågor om något är oklart eller om det inte finns mycket detaljerad information. Dessa visar att du tänker också - och ger intervjuaren en känsla av hur du skulle arbeta med andra. Se till att du ställer uppklarande frågor för att förstå frågan fullt ut och att du inte utvidgar räckvidden för problemet (t.ex. Vilka är exempel på ingångar? Måste jag oroa mig för att dela med 0? Måste jag oroa mig för sommartid?)

Slutligen, se till att du muntligt går igenom några testfall innan du säger att du är klar. Detta låter dig både kontrollera koden och visa intervjuaren att du kontrollerar din kod. Så enkelt som det skulle göra jobbintervjuer kan vi tyvärr inte läsa ditt sinne.

Så när du förbereder dig, träna på att lösa frågor med olika verktyg från din verktygslåda så att du utvecklar en intuition om det. Vet när du ska använda vart och ett av dina verktyg så att du inte får löst ut under intervjun. Och se till att du tränar helt och hållet på att beskriva din tankeprocess - det kan vara den svåraste delen för kodare som är vana att arbeta isolerat.

Öva, öva, öva

Ju mer du övar, desto bättre förberedda blir du för den tekniska kodningsintervjun. Detta gäller för de flesta saker, men särskilt relevant för tekniska intervjuer - de kräver verkligen att du värmer upp din hjärna.

Här är några tips som hjälper dig att få ut mesta möjliga av din träningstid:

  • Se till att du simulerar intervjumiljön. Ge dig själv en tidsbegränsning för problem. Om du ska göra en telefonintervju, öva på både Stypi och Google Docs. (Jag vet själv att jag inte har autofullständig och syntaxbelysning har löst mig i telefonintervjuer.) Om du ska göra en intervju personligen, öva på att göra problem på papper eller på en whiteboard.
  • Låt en icke-teknisk vän ställa frågor till intervjun och gå igenom honom eller henne genom dina svar. Om du kan förklara det för honom eller henne, är jag säker på att du kan förklara det för din tekniska intervjuare.
  • Känn dig inte som att du fuskar om du använder några av prep-verktygen som finns där ute. De erbjuder ofta stor insikt och övningsfrågor. Mina favoriter är webbplatser som TopCoder och Head First- böckerna. Vissa andra böcker som pratar mer om intervjuprocessen är Programmering Intervjuer Exposed och Cracking the Code Interview .

Tekniska kodningsintervjuer kan verka ganska skrämmande, men med rätt typer av fokuserad övning är du redo att få dem till. Kom ihåg att fokusera på ditt bröd och smör, grunderna och träna mycket. Följ tips ovan, så kommer du att vara beredd på din nästa tekniska kodintervju.

Vill du ha mer information? Jag presenterade nyligen om detta ämne på UC Berkeley Engineering / Tech Career Conference. Kolla in mina bilder från samtalen nedan för mer tankar och resurser!