Skip to main content

5 spôsobov, ako uspieť v technickom rozhovore - múza

Anonim

Technické rozhovory sú známe pre svoje hádanky. Či už ste požiadaní o napísanie binárneho stromu na tabuľu, vysvetlenie triediaceho algoritmu alebo implementáciu FizzBuzz v 10 riadkoch alebo menej, mali by ste sa pripraviť na technické otázky programovania v priemernom rozhovore.

Ale to nie je jediná vec, na ktorú by ste mali byť pripravení.

Realita je taká, že veľa vývojárov bude schopných vyriešiť bežné otázky týkajúce sa rozhovorov s programom s malým rozdielom medzi odpoveďami. Čo vás odlišuje od ďalšieho kandidáta? To je presne to, na čo sa zameriame v týchto piatich tipoch.

1. Vyjadrite svoj proces zdôvodnenia a riešenia problémov

Najhoršie, čo môžete urobiť pri položení ťažkej otázky, je ísť úplne bez reči. Bohužiaľ je to veľmi ľahké urobiť pri nehode. Keď narazíte na problém, ktorý vyžaduje značnú duševnú energiu a zameranie, je pravdepodobné, že vašim prvým sklonom je ustúpiť do vašej mysle. Aj keď je to prirodzené, pre anketára to tiež nie je veľmi užitočné.

Zmyslom technických otázok je čiastočne odhaliť, ako si myslíte o riešení problémov. Aký je váš proces? Ako rozdelíte jednotlivé komponenty? Ako dosiahnete riešenie? Ako reagujete, keď vyskúšate niečo, čo nefunguje? Ste lepšie experimentovať v kóde alebo načrtnúť niečo na tabuli?

Vysvetlite, čo sa deje vo vašej hlave pri riešení problému. Konajte, ako by ste nahrávali svoj hlas, aby ste mohli publikovať online, aby ste ostatných naučili, ako tento problém vyriešiť. Aj keď vám vaši anketári dávajú priestor na tiché zamyslenie, môžete mať úžitok z vysvetlenia vášho myšlienkového procesu bez toho, aby vás k tomu vyzvali. Toto im nielenže pomôže dôkladnejšie porozumieť vašim schopnostiam a kritickému mysleniu, ale tiež vám to zapamätá.

2. Čo je lepšie ako vyriešiť problém v technickom rozhovore? Riešenie je dvakrát

Veľmi málo problémov má iba jedno riešenie a všetky problémy majú nekonečné nesprávne riešenia. Ak sa teda sústredíte iba na jeden spôsob riešenia problému, chýba vám veľká príležitosť preukázať vašu flexibilitu a súpravu zručností.

Namiesto toho, aby ste jednoducho pracovali so známym riešením alebo pracovali v jednom jazyku, otvorte diskusiu o tomto konkrétnom probléme a vyriešite ho pre rôzne scenáre. Napríklad, ak vás požiada, aby ste programovali program FizzBuzz, mohli by ste to ponúknuť v dvoch jazykoch alebo použitím dvoch rôznych paradigiem, alebo možno použitím niektorých obmedzení výkonu pre jedno riešenie a estetických obmedzení pre iné.

Potvrdením, že problém môže mať viacero riešení, preukazujete svoju adaptabilitu, flexibilitu a povedomie, ktoré všetky vnášajú dôveru vašich anketárov, že si budete môcť vybrať spomedzi mnohých možností správne riešenie.

Samozrejme, nechoďte cez palubu - je tu čítať umenie, keď je odpoveď na otázku s viacerými riešeniami zbytočná alebo šťastná. Ak máte pochybnosti, nebojte sa opýtať sa vašich anketárov, či vám to vadí, ak by ste si našli nejaký čas na rozšírenie svojho riešenia pomocou sekundárnej možnosti.

3. Ak sa to dá uplatniť, nebojte sa zdieľať svoje názory

Pri riešení problémov niekedy robíte rozhodnutia, ktoré sú úplne založené na vašom vlastnom vkusu a názore. A to je v poriadku - zamestnávatelia sa zaujímajú o váš názor! Spôsob, akým premýšľate a reagujete na situácie, má veľký vplyv na kultúru spoločnosti. Mať názor je tiež znakom vedúceho postavenia a technickej vyspelosti vývojára. Ak chcete diskutovať o svojich názoroch, je potrebné, aby ste vyhodnotili ďalšie postoje k danej téme.

Nezabudnite však, že stanoviská sa môžu konať veľmi úzko. Ak nesúhlasíte s vaším anketárom na danú tému, pri zdieľaní týchto informácií postupujte opatrne. Aj keď je dobré mať názor, je tiež dôležité si uvedomiť, že zdieľanie nie je vždy potrebné a vie, ako si vybrať svoje bitky. Dobré pravidlo: nezdieľajte svoj názor, pokiaľ sa na vás nepožiada.

4. Nikdy neukončujte odpoveď s textom „Neviem“

Pokiaľ sa nestretávate so scenárom „Kobayashi Maru“, nikdy neskončite otázku na otázku „Neviem.“ To nie je možnosť v práci, takže by to nemala byť možnosť v rozhovore.

Samozrejme, nehovorím, že by ste mali vedieť všetko. To je nemožné! Mali by ste však preukázať, že máte stratégiu na učenie toho, čo potrebujete vedieť, aby ste túto prácu vykonali. Skúste odpovedať „Neviem, ako to urobiť, ale tu je návod, ako by som si to vymyslel.“ Táto odpoveď by mala ísť ďalej, než len povedať „Ja by som to Google“. Je lepšie vysvetliť najpravdepodobnejší smer, ktorým by ste sa mali venovať.

Predovšetkým sa nemusíte hanbiť! Učenie je do značnej miery proces zisťovania vecí, ktoré neviete. Váš zamestnávateľ neočakáva, že budete dokonalí, ale očakávajú, že budete usilovní a inteligentní a nikdy neopustíte problém.

5. Vždy hrajte za tím

Pokiaľ nie ste vývojár na voľnej nohe, vaša práca bude vždy nastavená v kontexte tímu a úspech tímu je vždy rozhodujúci pre váš vlastný. Takže váš rozhovor by mal odrážať, že sa nezaujímate iba o vyriešenie vašich problémov v daný deň, ale skôr o to, že ste zameraní na to, čo je potrebné pre úspech tímu.

Ako to môžete oznámiť v rozhovore?

Nikdy nehovorte o problémoch, ako by boli vo vákuu

Takmer každý projekt by mal prakticky požiadavky na zdroje a limity, takže preukážte svoje povedomie o kontexte problému. Problém, ktorý je dobre vyriešený, ale prekonal rozpočet, nie je v skutočnosti najväčším riešením.

Preukážte svoje vedomosti o odbornosti existujúceho tímu

Najlepšou odpoveďou na otázku je niekedy, že požiadate ostatných, aby spolupracovali s vami, a vy môžete týchto ľudí odkázať na technické otázky: „Keby som bol tento problém predstavený v kontexte nášho tímu, pravdepodobne by som požiadal o preskúmanie. Moje riešenie tiež. “To ukazuje, že ste ochotní spoľahnúť sa na odborné znalosti ostatných a že vaším cieľom je dospieť k najlepšiemu riešeniu.

Explicitne komunikujte hodnoty riadené tímom

Toto je dostatočne dôležitá otázka, ktorú by ste mali vyjsť a povedať. Chcete sa ubezpečiť, že vaši zamestnávatelia sú si plne vedomí toho, že vaším cieľom je pomôcť spoločnosti uspieť, nielen sedieť pri stole a kódovať celý deň.

Úlohou vývojára nie je len kódovanie. Musí to byť tímový hráč, vodca a niekto, kto sa nikdy nechce vzdať problému. Príležitosti v rámci technického pohovoru nie sú len na preukázanie toho, že môžete splniť ciele alebo písať algoritmy, ale tiež na to, aby ste sa dostali nad konkurenciu a preukázali hodnotu, ktorú pridáte zamestnávateľovi.