Skip to main content

Preguntes i consells sobre entrevista tècnica: la musa

Anonim

Amb el segon gran auge tecnològic de Silicon Valley, els enginyers han tingut una demanda increïblement elevada per part de startups i gegants tecnològics. Per a aquells que tenen estudis d’enginyeria o estan estudiant informàtica, el món és la seva ostra ara mateix.

Dit això, les empreses no només donen feina. Els programadors encara han de passar per processos d’entrevistes especialitzats, inclosa la temuda entrevista tècnica.

Preparar-se per a això pot ser confusions d'ordres. Heu d’estudiar projectes tècnics específics o refrescar-vos generalment en molts temes? Heu de practicar en un ordinador o amb un amic?

Com a tercer enginyer de Pocket Gems, que té uns 165 empleats tècnics, he realitzat centenars d’entrevistes telefòniques i in situ. Durant aquest temps, he après moltes coses sobre com preparar-se adequadament per a un. A continuació, es mostren els consells necessaris per clavar la vostra propera entrevista tècnica.

Centrat en els fonaments

Els entrevistadors principalment us faran preguntes sobre els vostres fonaments: estructures de dades, anàlisi de complexitat algorísmica, disseny de classes i similars. Es tracta de preguntes directament sobre fonaments (per exemple, utilitzeu X per fer Y) i qüestions per a les quals fareu servir els vostres fonaments (més informació sobre aquest tema).

Penseu en els fonaments com a eines de la vostra caixa d’eines. Es mantindran igual no importa el que sorgeixi la tecnologia innovadora. Amb uns fonaments bàsics, estareu més preparats per afrontar problemes oberts, els problemes que nosaltres i moltes altres startups resolem dia a dia. En centrar-se en els fonaments bàsics, els entrevistadors poden dedicar menys temps a configurar les preguntes de l’entrevista i més temps veient com penses.

Per exemple, podeu demanar-vos alguna cosa així com: se us dóna un arbre binari i dos nodes a l’arbre. Trobeu l’avantpassat comú més baix dels dos nodes donats en temps O (n).

Mitjançant aquesta pregunta, l’entrevistador mira de veure com de bé pot comunicar el seu procés i solució de pensament. Com penseu amb el problema, organitzeu els vostres pensaments i com comuniqueu la vostra resposta és tan important com la vostra conclusió. Treballem en entorns complexos i en constant transformació i necessitem persones que puguin solucionar problemes difícils i comunicar-los eficaçment als seus companys tècnics i no tècnics.

Per a aquest àmbit de l'entrevista, us haureu de comentar coses com ara cadenes, matrius, sintaxi bàsica, tipus de dades, llistes enllaçades, arbres, gràfics, piles, cues i taules de hash. Ah, i assegureu-vos que podreu respondre FizzBuzz sense mirar-ho.

Estigueu preparats per solucionar coses diferents maneres

Cadascun dels vostres fonaments té pros i contres i ofereix una solució única per a un tipus particular de problema. Després que els entrevistadors us facin una pregunta només sobre els vostres fonaments, és probable que vegin com els podeu utilitzar a la pràctica. Això s’aconsegueix fent preguntes obertes que es poden resoldre de diverses maneres.

Una pregunta de mostra aquí seria: Se li dóna una equació aritmètica com a cadena. Aquesta equació tindrà dígits simples 0-9, suma, resta, multiplicació i parèntesis. Escriu una funció que pren aquesta equació i calcula la resposta correcta. Les entrades d'exemple inclouen "1 + 1" i "2 * (1 + 9) - ((2 + 5) -9").

Com abans, l’entrevistador vol veure com desglossem les preguntes obertes i el seu procés de reflexió per triar la vostra solució. El més important, volen que puguis comunicar eficaçment problemes complexos.

Independentment de quina sigui la pregunta o quina solució escolliu, assegureu-vos de pensar en veu alta! Si teniu diferents maneres de resoldre el problema, parleu a través de les opcions abans de decidir quin utilitzar. Ajuda l’entrevistador a veure i comprendre el vostre procés de pensament. A més, l’entrevistador pot recomanar una solució respecte a les altres perquè sap que les altres poden tenir algunes interrupcions o poden estar fora de l’àmbit de l’entrevista.

No tingueu por de fer-se preguntes si alguna cosa no està clara o no hi ha molts detalls. Aquests mostren que també estàs pensant, i donen a l’entrevistador una idea de com treballaries amb els altres. Assegureu-vos que demaneu aclariments per comprendre la pregunta i que no augmenteu l'abast del problema (per exemple, quins són alguns inputs d'exemple? Haig de preocupar-me de dividir per 0? Haig de preocupar-me per estiu d'estiu?)

Finalment, assegureu-vos que realitzeu verbalment alguns casos de prova abans de dir que heu acabat. Això us permet comprovar el codi i mostrar a l’entrevistador que esteu comprovant el vostre codi. Per molt fàcil que siguin les entrevistes de feina, malauradament no podem llegir la vostra ment.

Així, a mesura que us prepareu, practiqueu la resolució de preguntes amb diferents eines de la caixa d’eines de manera que desenvolupeu una intuïció al respecte. Sabeu quan heu d'utilitzar cadascuna de les vostres eines perquè no s'aconsegueixin excluir durant l'entrevista. I assegureu-vos que practiqueu la descripció completa del vostre procés de pensament; aquesta pot ser la part més difícil per als codificadors que acostumen a treballar de forma aïllada.

Practicar, practicar, practicar

Com més practiqueu, més preparat estaràs per a l’entrevista de codificació tècnica. Això és cert per a la majoria de les coses, però especialment rellevant per a les entrevistes tècniques; realment requereixen que us escalfeu el cervell.

A continuació, es mostren alguns consells per ajudar-vos a treure el màxim profit del vostre temps de pràctica:

  • Assegureu-vos de simular l’entorn de l’entrevista. Doneu-vos un límit de temps per als problemes. Si voleu fer una entrevista telefònica, practiqueu tant a Stypi com a Google Docs. (Ho sé per mi mateix, no tenir autocomplectes i resaltar la sintaxi m'ha augmentat en les entrevistes per telèfon.) Si aneu a fer una entrevista personalment, practiqueu problemes al paper o a la pissarra.
  • Sol·liciteu a un amic que no sigui tècnic que us faci les preguntes de l'entrevista i feu-li les respostes. Si ho podeu explicar a ell o a ella, estic segur que ho podeu explicar al vostre entrevistador tècnic.
  • No teniu ganes d’enganyar si feu servir algunes de les eines de preparació que hi ha. Sovint ofereixen una bona comprensió i practiquen preguntes. Els meus preferits són llocs web com TopCoder i els llibres Head First . Alguns altres llibres que parlen més sobre el procés de l'entrevista són Programació d'entrevistes exposades i Cracking the Code Entrevista .

Les entrevistes de codificació tècnica poden semblar força desconcertants, però amb els tipus adequats de pràctiques enfocades, ja estareu llestos per evitar-los. Recordeu centrar-vos en el vostre pa i mantega, fonaments i practicar molt. Seguiu els consells anteriors i estareu preparats per a la vostra propera entrevista tècnica de codificació.

Voleu més informació? Fa poc he presentat aquest tema a la Conferència de Carrera d'Enginyeria / Tecnologia de la UC Berkeley. Consulteu les meves diapositives de la xerrada següent per obtenir més reflexions i recursos.