Dobré veci neprídu lacno. Ale môže to byť zadarmo

V tomto článku chcem hovoriť o škole Rolling Scopes, bezplatnom kurze JavaScript/frontend, ktorý som absolvoval a naozaj sa mi páčil. O tomto kurze som sa dozvedel náhodou, na internete je o ňom podľa mňa málo informácií, ale kurz je výborný a zaslúži si pozornosť. Myslím si, že tento článok bude užitočný pre tých, ktorí sa snažia naučiť programovanie sami. V každom prípade, keby mi o tomto kurze niekto povedal skôr, určite by som mu bola vďačná.

Tí, ktorí sa sami neskúšali učiť od nuly, môžu mať otázku – načo sú potrebné nejaké kurzy, veď informácií je na internete veľa – vezmite si to a učte sa. V skutočnosti more informácií nie je vždy dobré, pretože vybrať si z tohto mora presne to, čo potrebujete, nie je vôbec jednoduché. Kurz vám povie: čo sa učiť, ako sa učiť, akým tempom sa učiť; pomôže rozlíšiť dobré a pozoruhodné zdroje informácií od nekvalitných a zastaraných; ponúkne veľké množstvo praktických úloh; vám umožní stať sa súčasťou komunity zanietených a zainteresovaných ľudí, ktorí robia to isté ako vy.

Počas celého kurzu sme neustále plnili úlohy: robili testy, riešili problémy, vytvárali vlastné projekty. Toto všetko bolo posúdené a prenesené do spoločnej tabuľky, kde ste si mohli porovnať svoj výsledok s výsledkami ostatných žiakov. Atmosféra súťaže je dobrá, zábavná a zaujímavá. Ale body, hoci sú dôležité pre postup do ďalšej fázy, neboli samoúčelné. Organizátori kurzu uvítali podporu a vzájomnú pomoc – na chate študenti diskutovali o otázkach, ktoré vznikli pri riešení zadaní a snažili sa na ne spoločne hľadať odpovede. Okrem toho nám pri štúdiu pomáhali mentori, čo je jedinečná príležitosť na bezplatný kurz.

Kurz funguje takmer nepretržite: začína sa dvakrát ročne a trvá šesť mesiacov. Pozostáva z troch etáp. V prvej fáze sme študovali hlavne Git a layout, v druhej - JavaScript, v tretej - React a Node.js.

Do ďalšej etapy postúpili na základe výsledkov plnenia úloh predchádzajúcej etapy. Na konci každej etapy sa uskutočnil rozhovor. Po prvej a druhej etape to boli vzdelávacie rozhovory s mentormi, po tretej etape boli zorganizované rozhovory pre stodvadsať najlepších študentov v laboratóriu Minsk EPAM JS Lab. Kurz vedie bieloruská komunita front-endových a JavaScriptových vývojárov The Rolling Scopes, takže je jasné, že majú kontakty s kanceláriou EPAM Minsk. Komunita sa však snaží nadviazať kontakty a odporúčať svojich študentov IT spoločnostiam a iným mestám v Bielorusku, Kazachstane a Rusku.

Prvá etapa trvala niečo vyše mesiaca. Toto je najobľúbenejšia etapa. V mojom nábore to rozbehlo 1860 ľudí - t.j. všetkým, ktorí sa prihlásili na kurz. Kurz absolvujú ľudia všetkých vekových kategórií, no väčšinu študentov tvoria študenti vyšších ročníkov a tí, ktorí sa po niekoľkoročnom pôsobení v inej oblasti rozhodli zmeniť profesiu.

V prvej fáze sme absolvovali dva testy zo základov Gitu, dva testy z kurzov HTML/CSS, Codecademy a HTML Academy, vytvorili sme si životopis vo forme markdown súboru a vo forme bežnej webovej stránky, vytvorili sme malé jednostránkové rozloženie a pomocou JavaScriptu vyriešili niekoľko pomerne zložitých problémov.

Najrozsiahlejšou úlohou prvej etapy bol layout webu Hexal.
Najzaujímavejšia je hra Code Jam o znalosti CSS selektorov „CSS Quick Draw“.
Najťažšie sú úlohy JavaScriptu. Príklad jednej z týchto úloh: „Nájdite počet núl na konci faktoriálu veľkého čísla v zadanej číselnej sústave“.

Príklad úlohy prvej fázy: hex.

Na základe výsledkov plnenia úloh I. stupňa dostalo pozvanie na pohovor 833 žiakov. Študentov prechod do druhej fázy počas rozhovoru určil jeho budúci mentor. Mentori školy Rolling Scopes sú aktívni vývojári z Bieloruska, Ruska a Ukrajiny. Mentori pomáhajú a radia, kontrolujú zadania, odpovedajú na otázky. Mentorov v našom súbore bolo viac ako 150. Mentor môže podľa dostupnosti voľného času zobrať od dvoch do piatich študentov, no na pohovor sú k nemu vyslaní ďalší dvaja študenti, aby si počas rozhovoru mohol vybrať tých, s ktorými bude pracovať.

Umiestnenie študentov a mentorov bolo jedným z najzaujímavejších a najvzrušujúcejších momentov kurzu. Organizátori do nej zaviedli malý herný prvok - údaje o mentoroch sa ukladali do triediaceho klobúčika, po kliknutí na ktorý ste videli meno a kontakty svojho budúceho mentora.

Keď som zistil meno svojho mentora a pozrel si jeho profil na LinkedIn, uvedomil som si, že sa k nemu naozaj chcem dostať. Je skúseným vývojárom, seniorom a už niekoľko rokov pôsobí v zahraničí. Mať takého mentora je naozaj veľký úspech. Ale zdalo sa mi, že jeho nároky budú veľmi vysoké. Neskôr sa ukázalo, že som sa mýlil s prehnane vysokými nárokmi, ale vtedy som si to myslel.

Otázky na pripravovaný rozhovor boli známe, takže sa naň dalo vopred pripraviť.
OOP vyučované pomocou videa [J]u[S]t prototyp!. Jeho autor, Sergej Meljukov, to rozpráva mimoriadne prístupným a zrozumiteľným spôsobom.
Dátové štruktúry a veľký O zápis sú v článku dobre pokryté. Cheat Sheet pre technický rozhovor.
Najväčšie pochybnosti vyvolala úloha JavaScript, ktorá by určite bola súčasťou rozhovoru. Vo všeobecnosti milujem riešenie problémov, ale s Google a v konzole prehliadača, a ak to potrebujete vyriešiť perom a papierom (alebo myšou v poznámkovom bloku), všetko sa stáva oveľa zložitejším.
Je vhodné, aby ste sa obaja pripravili na pohovor na webovej stránke skype.com/interviews/ – klásť si navzájom otázky, vymýšľať problémy. Ide o pomerne efektívny spôsob prípravy: keď vystupujete v rôznych rolách, lepšie pochopíte, kto je na druhej strane obrazovky.

Ako som si predstavoval, že rozhovor bude? S najväčšou pravdepodobnosťou na skúšku, kde je skúšajúci a skúšajúci. V skutočnosti to rozhodne nebola skúška. Skôr rozhovor dvoch zanietených ľudí, ktorí robia to isté. Pohovor bol mimoriadne pokojný, pohodlný, priateľský, otázky neboli veľmi ťažké, úloha bola celkom jednoduchá a mentor vôbec nenamietal proti vyriešeniu v konzole a dokonca mi dovolil nahliadnuť do Google („nikto nebude zakázať používanie Google v práci“).

Pokiaľ viem, hlavným cieľom rozhovoru nebolo otestovať naše vedomosti a schopnosti riešiť problémy, ale dať mentorovi príležitosť spoznať svojich študentov a ukázať im, ako pohovor vo všeobecnosti vyzerá. A to, že z rozhovoru zostali len dobré dojmy, bolo výsledkom jeho vedomého úsilia, túžby ukázať, že v rozhovore vlastne nebolo nič strašidelné a dalo sa ním prejsť s radosťou. Ďalšou otázkou je, prečo to bolo pre človeka s technickým vzdelaním celkom jednoduché, ale pre učiteľov veľmi zriedka. Každý si pamätá, ako bol na skúšku nadšený, aj keď látku poznal dokonale. A keďže hovoríme o oficiálnej pedagogike, podelím sa ešte o jeden postreh. Kurzu sa okrem iného zúčastnili aj starší študenti IT. A tak tvrdili, že vzdelávací formát, ktorý ponúka škola Rolling Scopes School, je oveľa užitočnejší, zaujímavejší a efektívnejší ako bežný univerzitný program.

Absolvoval som pohovor. Následne mentor určil deň v týždni a čas, kedy mu bolo vhodné so mnou hovoriť. Pripravil som si otázky na tento deň a on na ne odpovedal. O projektoch, ktoré som realizoval, som nemal veľa otázok – väčšinu odpovedí som našiel na Google alebo na školskom chate. Ale hovoril o svojej práci, o možných problémoch a spôsoboch ich riešenia a podelil sa o svoje postrehy a pripomienky. Celkovo boli tieto rozhovory mimoriadne užitočné a zaujímavé. Navyše mentor je prakticky jediný človek, ktorý sa zaujíma o to, čo a ako robíte, človek, ktorý sa pozrie na vašu prácu, povie vám, čo je na nej zlé a ako sa dá zlepšiť. Prítomnosť mentorov je skutočne obrovskou výhodou školy, ktorej úlohu možno len ťažko preceňovať.

V druhej fáze sme mali veľmi zaujímavý a dynamický Code Jam „JavaScript Arrays Quick Draw“; takéto súťaže v škole sú vzrušujúce a vzrušujúce.
Code Jam „CoreJS“ sa ukázal byť oveľa zložitejší. 120 problémov s JavaScriptom, ktorých vyriešenie trvalo 48 hodín, sa stalo vážnym testom.
Mali sme tiež niekoľko testov JavaScriptu, odkaz na jeden z nich Uložil som ho do záložiek prehliadača. Na vyplnenie testu máte 30 minút.
Ďalej sme zostavili rozloženie NeutronMail, dokončili Code Jam „DOM, DOM Events“ a vytvorili vyhľadávací nástroj YouTube.

Ďalšie úlohy druhej etapy: Úloha: Codewars – riešenie problémov na rovnomennej stránke Code Jam „WebSocket Challenge“. – odosielanie a prijímanie správ pomocou webových soketov, Code Jam „Animation Player“ – vytvorenie malej webovej aplikácie.

Pomerne nezvyčajnou a zaujímavou úlohou druhej etapy bola úloha „Prezentácia“. Jeho hlavnou črtou je, že prezentácia musela byť pripravená a prezentovaná v angličtine. Tu Môžete si pozrieť, ako prebiehala prezenčná fáza prezentácií.

A nepochybne najkomplexnejšia a najobsiahlejšia bola záverečná úloha druhej etapy, počas ktorej sme boli požiadaní o vytvorenie vlastnej kópie webovej aplikácie Piskel (www.piskelapp.com).
Táto úloha trvala viac ako mesiac, pričom väčšinu času som strávil pochopením toho, ako to fungovalo v origináli. Pre väčšiu objektivitu bola výsledná úloha skontrolovaná iným, náhodne vybraným mentorom. A rozhovor po druhej etape viedol aj náhodný mentor, pretože my sme už boli zvyknutí na našich a on na nás a na skutočných rozhovoroch sa spravidla stretávame s ľuďmi, ktorí sa navzájom nepoznajú.

Druhý rozhovor sa ukázal byť oveľa náročnejší ako prvý. Tak ako predtým, na pohovore bol zoznam otázok, na ktoré som sa pripravila, no mentor usúdil, že jednoduché položenie teórie by nebolo úplne správne a pripravil si na pohovor súbor úloh. Úlohy boli podľa mňa dosť ťažké. Napríklad úprimne nechápal, čo mi bráni napísať bind polyfill a tiež som úprimne veril, že toho, že viem, čo je bind a čo je polyfill, je už veľa. Tento problém som neriešil. Ale boli tu aj iní, s ktorými som sa zaoberal. Problémy ale neboli jednoduché a akonáhle som našiel riešenie, mentor trochu zmenil stav a musel som problém riešiť znova, v zložitejšej verzii.
Zároveň podotýkam, že atmosféra pohovoru bola veľmi priateľská, úlohy boli zaujímavé, mentor venoval veľa času ich príprave a snažil sa zabezpečiť, aby tréningový pohovor v budúcnosti pomohol absolvovať skutočný pohovor pri uchádzaní sa o prácu.

Príklady úloh druhej etapy:
NeutronMail
Palette
YouTubeClient
PiskelClone

V tretej fáze nám bola ponúknutá úloha Portál kultúry. Vykonávali sme to v skupine a prvýkrát sme sa zoznámili s vlastnosťami tímovej práce, rozdelenia zodpovednosti a riešenia konfliktov pri zlučovaní pobočiek v Gite. Toto bola pravdepodobne jedna z najzaujímavejších úloh kurzu.

Príklad úlohy tretej fázy: Kultúrny portál.

Po ukončení tretej etapy študenti, ktorí sa uchádzali o prácu v EPAM a boli zaradení do zoznamu 120 najlepších, absolvovali telefonický pohovor, aby si otestovali svoje znalosti anglického jazyka, a momentálne absolvujú technické pohovory. Väčšina z nich bude pozvaná do EPAM JS Lab a potom do reálnych projektov. Každý rok je v EPAM zamestnaných viac ako sto absolventov Rolling Scopes School. V porovnaní s tými, ktorí kurz začali, je to pomerne malé percento, ale ak sa pozriete na tých, ktorí sa dostali do finále, ich šanca zamestnať sa je pomerne veľká.

Z ťažkostí, na ktoré sa musíte pripraviť, vymenujem dve. Prvým je čas. Potrebujete toho dosť veľa. Zamerajte sa na 30-40 hodín týždenne, viac je možné; ak menej, je nepravdepodobné, že budete mať čas dokončiť všetky úlohy, pretože program kurzu je veľmi intenzívny. Druhá je angličtina na úrovni A2. Ak je nižšia, nezaškodí si kurz naštudovať, no nájsť si prácu s takouto úrovňou jazyka bude dosť ťažké.

Ak máte otázky, pýtajte sa, pokúsim sa odpovedať. Ak poznáte ďalšie podobné bezplatné online kurzy v ruskom jazyku, zdieľajte, bude to zaujímavé.

Zdroj: hab.com

Pridať komentár