Diferente pentru blog/sfaturi-pentru-interviuri intre reviziile #6 si #48

Nu exista diferente intre titluri.

Diferente intre continut:

Postul 'cum sa scrii un CV':blog/cum-sa-scrii-un-cv a trezit interes, continui cu cateva sfaturi pentru interviuri tehnice. La Google o parte a jobului oricarui inginer e sa intervieveze cativa candidati pe saptamana, asa ca in ultimii ani am ajuns sau dau mai mult de 100 de astfel de interviuri.
Postul 'cum sa scrii un CV':blog/cum-sa-scrii-un-cv a trezit interes si continui pe tema asta. Ca inginer la Google am trecut deja prin cam 100 de interviuri, asa că m-am gândit să continui si cu niste sfaturi despre interviuri în sine.
Studentii din state de la universitati bune au pe langa faptul ca au profesori tari si avantajul ca multe companii vin sa recruteze la ei la universitate. In sezonul de recrutari dau 5 - 10 serii de interviuri si sunt in forma. Romanii nu au luxul asta, desi anul trecut au fost si Google si Facebook la recrutari in Bucuresti. Sfatul meu e sa luati interviurile tehnice in serios si sa va pregatiti cateva saptamani intens pentru ele. Pe vremea mea daca cautam Google Interview Questions nu gaseam nimic pe net, dar voi nu aveti nici o scuza sa fiti nepregatiti :P.
*In primul rand, este foarte util sa fi incalzit.*  În US se recrutează mult în campus asa  studentii au experienta interviurilor de la mai multe companii. În Romania nu există luxul ăsta, desi anul trecut au fost Facebook si Google la recrutari in Bucuresti.
Nuantez putin ce am zis in postul cu CVul: daca ai facut o facultate de profil si ai note mari sau daca ai fost la concursuri de info sau de mate si ai facut bine la nivel national sau daca ai participat la proiecte open source sau daca ai multe proiecte personale sau daca ai facut deja internshipuri in facultate ai sanse bune sa ajungi la faza de interviuri. E mai bine sa nu ai doar una dintre cele enuntate in CV dar deja cu una ai sanse bune. Alta chestie importanta e sa fi recomandat de cineva din firma, chiar daca ai un CV care nu arata extraordinar, o recomandare interna aproape sigur iti asigura un interviu.
Luati interviurile tehnice in serios pregatiti-va cateva saptamani intens pentru ele. Dacă cautati “Google Interview Questions” se găsesc suficiente resurse pe net, intrebari deja banate dar care sunt un exemplu excelent de încălzire.
In Bay Area interviurile tehnice sunt standardizate. Cele la Facebook, Google, Microsoft, Twitter, Quora, Palantir sunt similare. Ele dureaza 45 de minute si contin intrebari de coding care trebuie rezolvate pe tabla, intrebari de algoritmica sau intrebari de system design. Pentru studenti se insista pe algoritmica si coding, pentru ca inca nu au asa multa experienta practica.
 
*In faza de interviuri* ajungi foarte probabil daca ai una sau mai multe dintre urmatoarele:
 
* facultate de profil si note mari
* concursuri de info sau de mate si ai facut bine la nivel national
* participari la proiecte open source
* multe proiecte personale
* internshipuri
 
O *recomandare interna* iti asigura un interviu aproape sigur, chiar daca CVul nu e foarte bine facut.
 
*In Bay Area interviurile tehnice sunt standardizate.* Facebook, Google, Microsoft, Twitter, Quora, Palantir, toate au interviuri similare.
 
Un interviu dureaza 45 de minute si contine intrebari de coding care trebuie rezolvate pe tabla, intrebari de algoritmica sau intrebari de system design. Pentru studenti sau proaspat absolventi se insista pe algoritmica si coding, pentru ca ei nu au multa experienta practica.
In general poti coda in ce limbaj iti place daca pe fisa postului pe care aplici nu se specifica un anumit limbaj.
*Algoritmica*
Adevarul trist e ca un curs de algoritmica in facultate nu e de ajuns ca sa te simti confortabil in nici un domeniu, chiar daca ai luat 10 la examen. Aici cei care au facut la viata lor concursuri de programare au un avantaj clar. Dar pentru un om pasionat, care nu a avut la viata lui interes sau contacte cu olimpiada, putin antrenament ajuta foarte mult.  Daca ai probleme sa zici pe loc complexitatile la operatiile unui hash table, unui binary search tree, unui heap sau cum functioneaza o cautare in latime atunci trebuie sa mai muncesti. Recomand sa parcurgi o carte de algoritmica cu multe probleme: http://larc.unt.edu/ian/books/free/poa.pdf
Oricarui inginer ii e util sa aiba o intelegere mai clara a algoritmilor, a structurilor de date si a complexitatii lor. Sfatul e bun si pentru cei ce nu sunt interesati de interviuri.
Ca inginer e important sa ai o intelegere o intelegere clara a algoritmilor, a structurilor de date si a complexitatii lor.
 
Din pacate cursurile din facultate nu sunt de ajuns ca sa te simti confortabil in nici un domeniu, chiar daca ai luat 10 la examen. Asa că ai două variante.
 
Unu: concursurile de programare. Dacă ai trecut prin olimpiade ai deja un avantaj. Multe din problemele de la olimpiade sunt pe acelasi stil (si mult mai grele :-) ).
 
Doi: antrenamentul ajuta foarte mult. Treci prin o carte de algoritmica cu multe probleme: 'Problems on algorithms':http://larc.unt.edu/ian/books/free/poa.pdf E gratis si e mult mai scurta decat Cormen. Scopul tau este să ajungi la un nivel la care poti analiza pe loc complexitatile la operatiile unui hash table, unui binary search tree, unui heap sau cum functioneaza o cautare in latime. Citeste chestiile de baza. Cauta pe cineva cu care sa discuti. Verifica daca intelegi si poti aplica notiunile invatate pe probleme noi.
*Coding*
Aici apar primele probleme in majoritatea interviurilor. Problemele de coding din interviu nu sunt foarte grele pentru ca trebuie terminate in 10-20 de minute de un programator  decent. Fiecare candidat variaza la viteza si corectitudinea codului chiar in aceiasi zi, mai ales sub presiunea interviurilor. Eu le recomand prietenilor mei sa intre pe topcoder.com/tc si sa faca 30 de concursuri in practice room, concursuri de divizia a 2-a. Problemele de acolo sunt foarte apropiate ca dificultate ca problemele de coding de la companiile din state. Cand incepi sa rezolvi toate 3 problemele din un concurs consistent in 75 de minute inseamna ca esti aproape de interviuri. Ar fi misto sa pot recomanda probleme de pe infoarena dar din pacate platforma infoarena e prea mult formata de si pentru olimpici care vor sa participe la concursuri internationale. Astfel nu adreseaza prea bine nevoia de a iti testa viteza si corectitudinea la probleme ceva mai simple.
Orice inginer trebuie sa demonstreze in interviu ca stie coda. Totusi asta e locul cel mai frecvent unde apar probleme.
 
Intrebarile de coding nu sunt dificile. Ele trebuie terminate in 10-20 de minute de un programator decent. Dar sub presiunea interviului si ingineri seniori sau olimpici internationali fac greseli.
 
Fa 20 de concursuri de divizia 2 pe 'Topcoder':http://topcoder.com/tc Problemele de acolo sunt apropiate ca dificultate de cele din interviuri. Cand incepi sa rezolvi problemele consistent esti pregatit.
Nu se dau puzzleuri cum ar fi 'cate mingi de golf ar umple un autobuz' desi apar prin ziare, deci nu va pierdeti vremea cu asa ceva.
Ar mai fi o gramada de sfaturi utile: foloseste nume de variabile bune nu i, i1, ii1, x, y, z; sa scrii codul modular; sa citesti ceva de design; testing; threading etc, dar cel mai important e sa poti codezi o solutie corecta in un timp limitat.
Din nou, daca sunteti interesati de companii din state ma puteti contacta la cosminn at gmail.com
 
S-a scris mult pe subiectul asta asa ca in loc sa repet sfaturile altora va recomand *lectura obligatorie*:
Daca sunteti interesati de companii din state ma puteti contacta la *cosminn at gmail.com*
S-a scris mult pe subiectul asta asa ca in loc sa repet sfaturile altora va recomand ca *lectura obligatorie*:
'Cracking the coding interview':http://www.careercup.com/book carte foarte buna scrisa de o fosta inginera Google.
* 'Cracking the coding interview':http://www.careercup.com/book carte foarte buna scrisa de o fosta inginera Google.
Ea are si un video care simuleaza experienta unei bucati din un interviu
* Ea are si un video care simuleaza experienta unei bucati din un interviu
==YoutubeVideo(id="2cf9xo1S134" width="420" height="315")==
Cum e sezon de recrutare, Palantir, un startup tare din zona a publicat doua articole foarte bune despre coding si algoritmica in interviuri
* Cum abordezi problemele in interviu.
'Interviul de algoritmi':http://blog.palantir.com/2011/09/26/how-to-rock-an-algorithms-interview/
'Interviul de coding':http://blog.palantir.com/2011/10/03/the-coding-interview/#more-1925
Sfaturile sunt foarte bune, dar ei au interviuri grele si toate sfaturile astea nu te ajuta prea mult daca la chestiile fundamentale de care ziceam mai sus nu esti la un nivel ok.
 
'Guerilla guilde to interviewing':http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html Joel(unul din fondatorii stackoverflow, fost Product Manager pe Excel, fondator a fogcreek si blogger cunoscut) scrie articolul de capatai al interviurilor tehnice, probabil inspirat din structura interviurilor Microsoft. Concluzia articolului este ca, daca esti angajator vrei sa te prinzi daca intervievatul e destept si productiv.
Steve Yegge e un inginer Google care a lucrat inainte la Amazon. El avea un blog destul de popular si are niste articole foarte tari pe tema noastra.
'Cum sa prinzi un job la Google':http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html explica structura interviurilor, despre ce se testeaza si despre cum sa fi pregatit.
* 'Guerilla guide to interviewing':http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html Joel(unul din fondatorii stackoverflow, fost Product Manager pe Excel, fondator a fogcreek si blogger cunoscut) scrie articolul de capatai al interviurilor tehnice, probabil inspirat din structura interviurilor Microsoft. Concluzia articolului este ca, daca esti angajator vrei sa te prinzi daca intervievatul e destept si productiv.
'Cinci intrebari esentiale pentru phone screen':http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions  cand Steve angajat Amazon explica ce cauta de la candidati in faza de phone screen.
* Steve Yegge e un inginer Google care a lucrat inainte la Amazon. El avea un blog destul de popular si are niste articole foarte tari pe tema noastra.
** 'Cum sa prinzi un job la Google':http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html explica structura interviurilor, despre ce se testeaza si despre cum sa fi pregatit.
** 'Cinci intrebari esentiale pentru phone screen':http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions  cand Steve angajat Amazon explica ce cauta de la candidati in faza de phone screen.
** 'Zece sfaturi pentru un CV mai ok':http://steve-yegge.blogspot.com/2007/09/ten-tips-for-slightly-less-awful-resume.html.
'Zece sfaturi pentru un CV mai ok':http://steve-yegge.blogspot.com/2007/09/ten-tips-for-slightly-less-awful-resume.html.
* 'CVuri decente':http://yonatanzunger.com/2006/11/17/non-suck-resumes/ e scris de Yonatan Zunger, inginerul ce e responsabil de directia tehnica a proiectului Google Plus.
'CVuri decente':http://yonatanzunger.com/2006/11/17/non-suck-resumes/ e scris de Yonatan Zunger, inginerul ce e responsabil de directia tehnica a proiectului Google Plus.
* 'Reteta pentru angajare la Google':http://1-800-magic.blogspot.com/2007/12/recipe-for-getting-employed-by-google.html un manager care a lucrat la Microsoft si la Google crede ca a gasit reteta pentru a fi angajat la cele doua companii.
'Reteta pentru angajare la google':http://1-800-magic.blogspot.com/2007/12/recipe-for-getting-employed-by-google.html un manager care a lucrat la Microsoft si la Google crede ca a gasit reteta pentru a fi angajat la cele doua companii.
* 'Hiring process':http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.html Don Dodge, angajat Google explica procesul de angajare pentru full time.
'Hiring process':http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.htmlDon Dodge, angajat Google explica procesul de angajare pentru full time.
Sfaturile astea merg in practica. Asa ca spor la munca si bafta mare!
Daca aveti intrebari va raspund in comentarii.

Diferente intre securitate:

private
protected

Diferente intre topic forum:

 
6057