Tehniskās intervijas ir pazīstamas ar savām mīklām. Neatkarīgi no tā, vai jums tiek lūgts uz tāfeles izrakstīt bināro koku, izskaidrot šķirošanas algoritmu vai ieviest FizzBuzz 10 vai mazāk rindās, jums vajadzētu sagatavoties tehniskās programmēšanas jautājumiem vidējā intervijā.
Bet tas nav vienīgais, kam vajadzētu būt gatavam.
Patiesībā daudzi izstrādātāji spēs atrisināt kopīgus programmēšanas interviju jautājumus ar nelielu atšķirību starp atbildēm. Kas jūs atšķir no nākamā kandidāta? Tieši uz to pievērsīsimies šajos piecos padomos.
1. Runājiet par savu pamatojumu un problēmu risināšanas procesu
Sliktākais, ko varat darīt, uzdodot grūtu jautājumu, ir pilnīgi bezrūpība. Diemžēl to ir ļoti viegli izdarīt nejauši. Kad jūs sastopaties ar problēmu, kurai nepieciešama ievērojama garīgā enerģija un uzmanība, iespējams, ka jūsu pirmā tieksme ir atkāpties prātā. Lai arī tas ir likumsakarīgi, tas arī nav ļoti noderīgs intervētājam.
Daļēji tehnisko jautājumu mērķis ir atklāt, kā jūs domājat par problēmu risināšanu. Kāds ir jūsu process? Kā jūs sadalāt dažādas sastāvdaļas? Kā jūs nonākat pie risinājuma? Kā jūs reaģējat, mēģinot kaut ko, kas nedarbojas? Vai jūs labāk eksperimentējat ar kodu vai kaut ko ieskicējat uz tāfeles?
Izskaidrojot notiekošo, izskaidrojiet, kas notiek jūsu galvā. Rīkojieties tā, it kā jūs ierakstītu savu balsi, lai publicētu tiešsaistē, lai iemācītu citiem, kā atrisināt šo problēmu. Pat ja jūsu intervētāji dod jums iespēju mierīgi domāt, jums var būt izdevīgi izskaidrot domu procesu bez viņu pamudināšanas to darīt. Tas ne tikai palīdz viņiem labāk izprast jūsu prasmes un kritisko domāšanu, bet arī padara jūs neaizmirstamu.
2. Kas ir labāks par problēmas risināšanu tehniskā intervijā? Divreiz atrisinot
Ļoti dažām problēmām ir tikai viens risinājums, un visām problēmām ir bezgalīgi nepareizi risinājumi. Tātad, ja jūs koncentrējaties tikai uz vienu problēmas risināšanas veidu, jums trūkst lielas iespējas pierādīt savu elastību un prasmju kopumu.
Tā vietā, lai vienkārši izvēlētos labi zināmu risinājumu vai strādātu vienā valodā, atveriet diskusiju par šo problēmu un risiniet to dažādiem scenārijiem. Piemēram, ja jums tiek lūgts ieprogrammēt FizzBuzz, jūs varētu piedāvāt to darīt divās valodās vai izmantojot divas dažādas paradigmas, vai varbūt pieņemot dažus veiktspējas ierobežojumus vienam risinājumam un estētiskus ierobežojumus citam.
Apstiprinot, ka problēmai var būt vairāki risinājumi, jūs parādāt savu pielāgošanās spēju, elastību un izpratni, un tas viss iedrošinās jūsu intervētājus, ka jūs varēsiet izvēlēties pareizo risinājumu no daudzām iespējām.
Protams, neejiet pāri bortam - lasot ir māksla, atbildot uz jautājumu ar vairākiem risinājumiem, ir pārāk vērtīgi vai priecīgi gaidīti. Ja rodas šaubas, nebaidieties pajautāt intervētājiem, vai viņi nedomā, ja jums ir nepieciešams kāds laiks, lai izvērstu savu risinājumu, izmantojot sekundāro iespēju.
3. Nebaidieties dalīties ar savu viedokli, kad tas ir piemērojams
Dažreiz, strādājot ar problēmām, jūs pieņemsit lēmumus, kas pilnībā balstās uz jūsu pašu gaumi un viedokli. Un tas ir kārtībā - darba devējus interesē jūsu viedoklis! Veids, kā jūs domājat un reaģējat uz situācijām, būtiski ietekmē uzņēmuma kultūru. Atzinuma iegūšana ir arī līderības un izstrādātāja tehniskā brieduma pazīme. Lai diskutētu par savu viedokli, jums ir jāizvērtē citas nostājas par doto tēmu.
Tomēr atcerieties, ka viedokļus var ievērot ļoti cieši. Ja nepiekrītat savam intervētājam par doto tēmu, dalieties ar šo informāciju uzmanīgi. Lai gan ir labi, ja ir viedoklis, ir svarīgi arī atzīmēt, ka dalīties tajā ne vienmēr ir nepieciešams un zināt, kā izvēlēties cīņas. Labs īkšķa noteikums: nedalieties savā viedoklī, ja vien jums to nelūdz.
4. Nekad nebeidziet atbildi ar “es nezinu”
Ja vien jūs nesaskarat ar “Kobayashi Maru” scenāriju, nekad nebeidziet intervijas jautājumu ar “Es nezinu”. Tas nav darba piedāvājuma risinājums, tāpēc tam nevajadzētu būt opcijai intervijā.
Protams, es nesaku, ka jums vajadzētu zināt visu. Tas ir neiespējami! Bet jums vajadzētu parādīt, ka jums ir stratēģija, kā iemācīties to, kas jums jāzina, lai darbu paveiktu. Mēģiniet atbildēt ar jautājumu “Es nezinu, kā to izdarīt, bet es domāju, kā rīkoties, lai to izdomātu.” Arī šai atbildei būtu jāiet tālāk, nekā tikai sakot “es gribētu to Google”. Jums labāk jāpaskaidro visticamākais virziens, kuru jūs izmeklētu.
Galvenokārt nevajag kaunēties! Mācīšanās lielākoties ir to lietu izdomāšana, kuras nezināt. Jūsu darba devējs negaida, ka jūs esat ideāls, taču viņi sagaida, ka jūs esat uzcītīgs un inteliģents un nekad neatstājaties no problēmas.
5. Vienmēr spēlējiet komandas labā
Ja vien jūs neesat ārštata izstrādātājs, jūsu darbs vienmēr tiks noteikts komandas kontekstā, un komandas panākumi vienmēr ir vissvarīgākie jūsu pašu ziņā. Tātad jūsu intervijai jāatspoguļo tas, ka jūs nodarbojaties ne tikai ar problēmu risināšanu noteiktā dienā, bet arī par to, ka esat koncentrējies uz visu, kas nepieciešams komandas panākumiem.
Tātad, kā jūs varat to paziņot intervijā?
Nekad neapspriediet problēmas tā, it kā tās atrastos vakuumā
Gandrīz jebkuram projektam būtu praktiski noteiktas resursu prasības un ierobežojumi, tāpēc parādiet savu izpratni par problēmas kontekstu. Problēma, kas ir atrisināta labi, bet kurai ir pārsniegts budžets, patiesībā nav labākais risinājums.
Parādiet savas zināšanas par esošo komandu
Dažreiz labākā atbilde uz jautājumu ir lūgt citiem jūsu komandas locekļiem sadarboties ar jums, un jūs varat atsaukties uz šiem cilvēkiem tehniskajos jautājumos: “Ja man šī problēma tiktu parādīta mūsu komandas kontekstā, es droši vien lūgtu pārskatīt arī mans risinājums. ”Tas parāda, ka jūs vēlaties paļauties uz citu ekspertīzi un ka jūsu mērķis ir rast labāko risinājumu.
Skaidri paziņojiet par komandas vadītajām vērtībām
Tas ir pietiekami svarīgs jautājums, ka jums vajadzētu iznākt tieši to pateikt. Jūs vēlaties pārliecināties, ka jūsu darba devēji pilnībā apzinās, ka jūsu mērķis ir palīdzēt uzņēmumam gūt panākumus, nevis tikai sēdēt pie galda un kodēt visu dienu.
Galu galā jūsu kā izstrādātāja darbs nav tikai jākodē. Ir jābūt komandas spēlētājam, vadītājam un tam, kurš nekad nevēlas atmest problēmu. Tehniskās intervijas iespējas ir ne tikai parādīt, ka jūs varat sasniegt mērķus vai rakstīt algoritmus, bet arī izvirzīt sevi virs konkurences un parādīt pievienoto vērtību darba devējam.













