Pentru cei care nu sunt familiarizați cu Topcoder, acesta este un site în care oamenii se angajează în "programarea sportivă". Asta este, rezolva sarcinile algoritmice pentru un timp, în funcție de timp și corectitudinea soluției, colectează un anumit număr de puncte. Cine a marcat cele mai multe puncte, atât de bine și bine făcut. Desigur, imaginea este mult simplificată, dar esența este ceva de genul asta.
Există multe alte site-uri și activități similare și similare - ACM, Google Code Jam și așa mai departe. Pentru comoditatea prezentării, le voi face o mărime potrivită tuturor. Deci, întrebarea este - dacă intenționați să mergeți la Google sau o altă companie în viitorul apropiat, să spunem, într-un an, aveți nevoie să petreceți timp pe Topcoder?
Ideea este aici despre cei care se pregătesc pentru interviu și nu participă la concursuri de programare cel puțin puțin în mod regulat. Este clar că dacă aveți deja o evaluare roșie sau galbenă pe Topcoder, atunci acest lucru nu este valabil pentru dvs. De asemenea, rețineți că nu m-am implicat niciodată în programarea sportivă, deci opinia mea este că se bazează mai mult pe experiența interviului decât pe experiența de formare pe aceste site-uri.
Totuși, eu nu am ținut seama de sfat și nu am intrat în topcoder. Iată de ce:
1) Sarcini și algoritmi pentru interviuri sunt de obicei destul de tipice. Este foarte rar când trebuie să inventezi o "bicicletă" algoritmică dificilă - ceea ce dezvoltă programarea sportivă. Dacă aveți deja soluții noi la sarcinile complexe algorimice din competiții - este foarte cool. Dacă nu - atunci IMHO nu ar trebui să vă petreceți prea mult timp pentru ao cumpăra.
2) Algoritmii pe care trebuie să îi cunoașteți pentru un interviu sunt un subset foarte mic de ceea ce trebuie să știe un programator de sport. Ei bine, pentru un interviu, într-adevăr nu trebuie să cunoașteți în detaliu 3 algoritmi pentru găsirea substringurilor cu modificări dificile diferite, inclusiv Knut-Maurice-Pratt.
3) Este important să scrieți un cod bun într-un interviu. Asta este, eu personal apreciez mai bine candidatul, care va scrie codul în 15 minute, dar codul este elegant, variabilele vor fi numite în mod clar și codul de el va testa cu voce tare, decât să scrie codul în 10 minute, dar numele variabilei „I1“, „I2 "Și va trebui să mă uit la acest cod timp de încă 5 minute pentru a înțelege ce se întâmplă acolo. De obicei, programarea sportivă pentru abilitatea unui cod bun nu este foarte concentrată și acest lucru este foarte important.
4) Soluția problemelor algoritmice este una, deși destul de mare, parte a interviului. Dar, de fapt, trebuie să te pregătești nu numai pentru ea. Mai există încă întrebări cu privire la design, întrebări privind cunoștințele de bază, întrebări privind abilitățile moi ... Și trebuie, de asemenea, să fie pregătiți.
Deci - este necesar să pierdem timpul pe topcoder în principiu? Da, este posibilă dezvoltarea personală și profesională. Trebuie să mă pregătesc pentru interviuri topcoder într-un timp limitat? Mi se pare că acest lucru este departe de cel mai eficient mod de pregătire, deci sfatul meu nu este.
Ei bine, ca un bonus - ajuta topcoder să obțină un rating de locuri de muncă pe Google?
1) Probabil că da, dacă intri în top (10-20-30) în lume sau câștigați pe unele ceremonii eminente.
2) Dacă nu sunteți de top, dar aveți un rating decent, acest lucru nu contează. Nu-mi amintesc niciodată că comisia a decis să angajeze un candidat care nu a trecut interviul, doar pentru că are un fel de rating undeva. Dar însăși faptul că un rating bun înseamnă că în spatele acestuia există cunoștințe și abilități reale - dar acest lucru crește foarte mult șansele.
- Google Internship: Istoria lui Diana
- Guglonews mici
- Sfaturi de interviu de la Google
- Ce este oncall