Jump to content
php.lv forumi

Facebook rekrutēšanas process


codez

Recommended Posts

Kaut kādu laiku atpakaļ šeit bija runa par FB un es izteicos, ka varētu mierīgi tikt Facebookā par programmētāju. Nolēmu, ka jāpamēģina.

 

Šodien man bija pēdējās 4 intervijas, tāpēc pastāstīšu par visu procesu, kā tas notika.

 

Viss sākās ar rekruiteri un nelielu interviju par to, ko es daru un par manu motivāciju. Šis rekruiteris arī visā pārējā rekruitēšanas procesā bija galvenais, kas ar mani kārtoja visus organizātoriskos jautājumus.

Tālāk sekoja links uz speciālu sistēmu, kurā bija uzdevums.

Atverot linku sāk skaitīties laiks un ir 45 minūtes laika, lai iesūtītu risinājumu. Risinājums tiek testēts uz 3 testu pakām no kurām vismaz 2 ir jābūt pareizām.

Ar šo uzdevumu tiku galā diezgan ātri, ātrāk par 30 minūtēm, ņemot vērā arī to, ka uzdevuma apraksts bija uz 2 lapām angļu valodā.

Ieguvu 3/3 punktiem.

Uzdevums bija aptuveni 3* grūtībā no olimpa.

Šo un visus tālākos uzdevumu risināju C++, taču to var darīt arī PHP.

 

Tālāk sekoja 2 telefonintervijas ar inženieriem no FB HQ. Katrai intervijai bija atvēlētas 45 minūtes. Uzdevumi bija jāraksta collabedit.com

Pirmā intervija gāja lieliski, 45 minūšu vietā, visus trīs uzdevumus uzrakstīju 20 minūtēs. Bija sekojoši uzdevumi:

1) kondensēt masīvu - izņemt 0 un visu sabīdīt O(N) laikā un neizmantojot papildus atmiņu kā to, kas ir masīvā. Respektīvi, no masīva 3,0,0,4,5,0,0,6,0,4 jāiegūst masīvs 3,4,5,6,4.

2) Atrast garāko pieaugošo virkni. Teiksim dota virkne 1,3,4,8,2,5,6, tad garākā pieaugošā ir 1,3,4,5,6

3) Sagrupēt vārdus pēc anagrammām. Respektīvi doti vārdi [alus, ezis, sula, zise] un jāsagrupē [[alus, sula], [ezis, zise]]. Respektīvi anagramma ir tāda, kur no viena vārda var salikt otru. Un pie tam tas bija jāizdara maksimāli efektīvi, kas būtībā ir O(N*S) laikā, kur N-vārdu skaits un S-vidējais vārda garums.

 

Peč šīs intervija fīdbeks bija

 

The interviewer was impressed with your coding and problem solving abilities – he felt you are above the bar in this respect. However he did get a weak signal around your motivation and fit

 

 

 

Otrā intervija gāja nedaudz sliktāk un. Pirmo jautājumu atbildēju ātri, taču otrajais bija salīdzināt vai divi BST (binārie meklēšanas koki) ir vienādi. Sākumā izvēlējos iteratīvu metodi tam un sajaucos kodā, pēc tam uzrakstīju rekursīvu. Trešais uzdevums bija uzrakstīt evalošanas funkciju matemātiskas izteiksmei. Šo uzdevumu nepaspēju, jo otrajā biju iztērējis daudz laikā un šim bija tikai 5 min palikušas.

 

Atsauksme nebija tik laba kā pirmajā un sākumā man pateica, ka viss, tālāk netieku.

 

Taču pagāja laiks un vienu dienu rekruiteris zvana un saka, ka viņi pārdomāja un es tieku tālāk - uz klātienes interviju. Klātienes intervija bija paredzēta FB headkvarterī Palo Alto. Visu ceļu un uzturēšanos FB teicās apmaksāt.

Bet vēlāk, kā rekruiteris izteicās, ar darba vīzu limita izbeigšanos un citām lietām (iespējams kaut kas ar IPO saistīts), viņi gribēja to visu ātrāk noorganizēt, tāpēc klātienes interviju pārcēla uz skype video intervijām, kuras notika šovakar (vakarā, jo Palo Alto ir rīts/diena (-10h)).

 

Intervija plāns bija tāds pats kā klātienes intervijai - 4 pēc kārtas sekojošas 45 minūšu intervijas. Katru interviju vadīja cits cilvēks:

1) "Cultrural fit" - šeit bija vien ļoti viegls uzdevums - jāuzraksta funkcija, kas nosaka, vai vārds/teikums ir palindroms, neņemot vēra atstarpes un pieturzīmes. Bet lielākā intervijas daļa bija jautājumi par iepriekšējo darba pieredzi, par konfliktu risināšanu, par motivāciju, par grūtākajām lietām, ko esmu darījis kā developeris. Šo intervija vadīja cilvēks no menidžeru līmeņa.

2) Kodēšanas intervija. 2 uzdevumi. Šoreiz bija saistīti ar datu struktūrām. Šijā viss bija ok.

3) Arhitektūra un skeilošana. Uzdevums bija izveidot arhitektūru funkcijai - meklēt pēc atslēgas vārda draugu status updeitus, bet ņemot vērā Facebook apmērus - 800`000`000 lietotājus. Tākā līdz intervijai biju kārtīgi studējis Facebook iekšējo struktūru no dažādu darbinieku blogiem un diezgan labi iebraucis facebook arhitektūras izmantotajos principos, tad principā šis nebija pārāk grūti un intervētājs izkatījās apmierināts ar manu atbildi.

4) Atkal kodēšanas intervija. 1. jautājums bija uzrakstīt funkciju, kas inverso linked list-u, ko es izdarīju 5 minūtēs. Taču otrais bija uzrakstīt regex evalošanas funkciju, kuru tā arī atlikušajā 40 minūtēs neuzrakstīju līdz galam, jo intervētājs visu laiku atrada spraugas, kur piesieties.

 

 

Pats vērtēju, ka 4. pēdējā intervija var mani iegāzt un tāpēc domāju, ka man ir ne vairāk kā 20-30%, ka man izteiks piedāvājumu, bet to es uzzināšu pēc kādām 2 nedēļām.

 

P.S.

Ceru, ka bija interesanti lasīt šo pieredzi.

 

P.P.S.

Ja ir iekšās, iesaku iziet šim rekrutēšanas procesam cauri. Reāli jautrs process.

Edited by codez
Link to comment
Share on other sites

  • Replies 34
  • Created
  • Last Reply

Top Posters In This Topic

kas viņiem tā par skepsi par ieinteresētību un iederēšanos? biji skeptisks par FB iekš FB?

Grūti pat pateikt. Laikam kaut ko ne tā pateicu par to, kāpēc gribu strādāt FB, varbūt pārāk vēsi uztvēru risināšanu, jo pirmajā vispār neiespringu. Vēlāk gan bišķi vairāk iespringu, bet tas nav labi - uztraukums traucē koncentrēties, tāpēc ārī neviena no tālākajām kodēšanas intervijām ne tuvu nebija tik laba kā pirmā.

Vēl viens iemesls varētu būt tāds, ka pats praktiski FB neizmantoju.

Edited by codez
Link to comment
Share on other sites

Labi, ka Latvijā tā neatlasa darbiniekus. Tad daudzi būtu bez darba, tajā skaitā arī es :D

 

Pa lielam jau pareizs filtrs stāv, jo teorētiski savādāk darbinieku efektīvi nav iespējams pārbaudīt tik īsā laika periodā. Atliek testēt uz algoritmiem un domāšanu, būs vismaz garantija, ka pārbaudes laikā strādās adekvāts darbinieks.

 

Ar šausmām atceros Latvijas intervijas, kur prasa cik bibliotēkas esi samācījies vai kā uzvedīsies javascirpt kāds "speciāls" kods.

Edited by nemec
Link to comment
Share on other sites

Motivācijai darbā ir ļoti liela nozīme. Man piem vsp FB kā projekts nesaista, bezjēdzīga laika nosišana jebšu bezjēdzīga izklaide. Līdz ar to idejas, ierosinājumi visdrīzāk nenāktu no manis, savā brīvajā laikā par FB nedomātu, vienīgi kā tekošo darbu izpilde ķeksīša, algas dēļ. Cita lieta, ja tevi pats proj aizrauj, pats nemani, cik daudz savu laiku ieguldi un piedomā arī ārpus ofisa.

 

Un ja tev nav īsti pārliecības, ka gribi strādāt FB un nekur citur, tad proms, ka to jūt, noslēpt neko nevar, lai kādu teikumu arī būtu pateicis.

 

Tāpat kā es nestrādātu darbā, kas man nepatīk, lai arī maksātu vairāk; tāpat arī darba devējs, paņems labāk cilv ar lielu gribasspēku, bet varbūt vājākām zināšanām (es proms nerunāju par galējībām).

Link to comment
Share on other sites

Gan jau ka 4. intervija bija lai paskatītos praksē, kā ir ar 1. intervijā uzdoto jautājumu. Tā ka tas tiešām varētu būt klupšanas akmens. Vai arī otrādi :) Gan jau tiksi uz to FB, pieredzes gūšanai un iespaida atstāšanai uz pīļu dīķi būs baigi ok! :)

 

Neteiktu, ka uzdevumi ir viegli, taču tie nav arī grūti, ja ir apgūtas datorzinātnes un ja laiks tiek veltīts programmēšanas apguvei, nevis niekiem. Principā kā eksāmens, jā, te nu tiešām izskatās, ka izglītības papīram netiek pievērsta liela uzmanība un es arī nedomāju, ka tādā kokteilī, kā ASV, tas būtu iespējams.

 

Kam ir interese: http://www.catonmat.net/blog/my-job-interview-at-google/

Link to comment
Share on other sites

Dabūju atsauksmes.

1. kulturālo un 2. kodēšanas interviju izturēju

3. skeilošanas un 4. kodēšanas interviju neizturēju.

Tā kā vajadzēja izturēt vismaz 3 no 4 intervijām, lai tiktu, tad paliku aiz svītras.

Persnīgā sajūta arī bija tāda, ka 1. un 2. vajadzēja noteikti izturēt, jo jautājumus atbildēju pārliecinoši un uzdevumus atrisināju ātri un veiksmīgi

Par 3. (skeilošanu) šaubījos, jo, lai gan atbildes sniedzu, grūti bija saprast, vai tas ir tas, ko intervētājs grib dzirdēt, jo intervētājs nevilka no manis ārā neko, tik klausījās. Iespējams vajadzēja vairāk iniciatīvas un parliecinātības, jo nedomāju, ka 30 minūtēs ir iespējams izveidot randomā uzdotai problēmai arhitektūru Facebook apmēru sistēmai, drīzāk šeit ir svarīgs parādīt kā tu domā, iniciatīva un varbūt vairāk pamatot savu izvēli ar skaitļiem.

4. interviju viennozīmīgi nofeiloju un biju pārliecināts, ka neizturēju. Citā dienā, citos apstākļos noteikti uzrakstītu - arī to pašu regex funkciju.

Interesanti, ka fakts, ka man nav akadēmiskas IT izglītības, nespēlēja nekādu lomu pat tādā lielā korporācijā kā Facebook.

 

Kā izteicās rekruiteris par atlases stingrību, Facebook nākošā gada laikā taisā noalgot ap 1000 inženieru, tāpēc pašlaik viņi meklē ap 100 inženierus/menidžerus, kas šos 1000 vadīs, tāpēc arī pašlaik ir tik ļoti smaga atlase, citām kompānijām esot daudz vieglākas.

Tā kā rekruiteris strādā arī ar citām kompānijām, tad uzreiz piedāvāja citus variantus, vai arī mēģināt vēlreiz pēc 1/2-1 gada, kad atlases kritēriju būs nedauz vieglāki.

 

Varu pastāstīt, ka gatavošanās procesā atlasīju virs 50 uzdevumus, kādi ir bijuši citās FB intervijās. Daļu no tiem risināju. Interviju laikā aptuveni 50% uzdevumi bija starp atlasītajiem/risinātajiem vai bija risināti ļoti līdzīgi. Gatavojoties vēl cītīgāk šo procentu varētu tuvināt arī 100%. Vēl izlasīju kādus 20-30 rakstus no Facebooker inženieru blogiem par facebook arhitektūru, noskatījos pāris videolekcija/prezentācijas par facebook arhitektūru, rīkiem, iekšējo darba kultūru. Noskatījos pāris Zuckeberga intervijas, lai izjustu kompānijas definēto vīziju, principā uz to balstīju arī atbildes kulturālajā intervijā.

 

Domāju, ka tie, kuriem šie uzdevumi ir risināmi, var kāda 1/2 gada laikā mierīgi uztrenēties tā, lai tiktu FB, veltot dienā kādu stundu laika uzdevumu risināšanai un kādu stundu laika lasot par skeilošanu un lielu projektu arhitektūru kopumā.

 

Par algu protams nekas netika runāts, bet cik esmu izpētījis no dažādiem avotiem, tad labi inženieri Facebookā pašlaik sāk ar aptuveni $120`000 - $150`000 gadā un aptuveni potenciāli $200`000 vērtām akciju opcijām gadā, kuras var realizēt pēc 3-4 Facebookā nostrādātiem gadiem.

Edited by codez
Link to comment
Share on other sites

Pievienojos apsveicējiem un paldies par info. Bija interesanti palasīt,lai saprastu,cik daudz tomēr vēl jāmācās,lai būtu iekšas tur startēt. Vismaz godam pārstāvēji valsti,un veiksmi nākamgad.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...