Më të mirat nuk janë kurrë të këqija. Por janë falas.

Në këtë artikull dua të flas për Rolling Scopes School – një kurs falas për JavaScript / frontend, që kam ndjekur dhe që më ka pëlqyer shumë. E mësova për këtë kurs rastësisht, informacioni në internet për të është, sipas mendimit tim, i kufizuar, ndërsa kursi është i shkëlqyer dhe meriton vëmendje. Mendoj se ky artikull do të jetë i dobishëm për ata që përpiqen të mësojnë programimin në mënyrë të pavarur. Në çdo rast, po ishte dikush që më kishte treguar më parë për këtë kurs, sigurisht do të isha mirënjohëse.

Për ata që nuk kanë provuar të mësojnë vetë nga e para, mund të lindë pyetja – përse janë të nevojshme disa kurse, kur në internet ka shumë informacion – merr dhe mëso. Në të vërtetë, deti i informacionit nuk është gjithmonë i mirë, sepse është gjithmonë e vështirë të zgjedhësh nga ky det se çfarë të nevojitet. Kursi do të të tregojë: çfarë të mësosh, si të mësosh, me çfarë ritmi të mësosh; do të ndihmojë të dallosh burimet e mira dhe të merituara nga informacioni i dobët dhe i vjetruar; do të ofrojë një sasi të madhe detyrash praktike; do të lejojë të bësh pjesë të një komuniteti pasionant dhe të interesuar, që merret me të njëjtën gjë si ti.

Gjatë kursit, ne vazhdimisht kryenim detyra: bënim teste, zgjidhnim probleme, krijonim projektet tona. E gjithë kjo vlerësohej dhe shërbente në një tabelë të përbashkët, ku mund të krahasonim rezultatet tona me ato të studentëve të tjerë. Atmosferën e konkurrencës – është e mirë, argëtuese dhe interesante. Por pikët, ndonëse janë të rëndësishme për kalim në fazën tjetër, nuk ishin qëllimi ynë. Organizatorët e kursit inkurajuan mbështetje dhe ndihmë të ndërsjellë – në chat studentët diskutuan pyetje që lindën gjatë zgjidhjes së detyrave dhe përpiqeshin së bashku të gjenin përgjigje. Për më tepër, mentorët na ndihmuan në studim, që është një mundësi unike për një kurs falas.

Kursi funksionon praktikisht pa ndërprerje: fillon dy herë në vit dhe zgjat gjashtë muaj. Ai përbëhet nga tre etapa. Në etapën e parë ne studiuam kryesisht Git dhe markup, në të dytën – JavaScript, në të tretën – React dhe Node.js.

Në fazën tjetër kaluam bazuar në rezultatet e realizimit të detyrave të fazës paraprake. Në fund të çdo faze bëhej një intervistë. Pas fazës së parë dhe të dytë, ato ishin intervista edukative me mentorët, ndërsa pas fazës së tretë organizuam intervista për njëqind e njëzet studentët më të mirë në EPAM JS Lab në Minsk. Kursi zhvillohet nga komuniteti bielorus i zhvilluesve frontend dhe JavaScript, The Rolling Scopes, prandaj është e natyrshme që ata të kenë lidhje me zyrën e EPAM në Minsk. Megjithatë, komuniteti përpiqet të ndihmojë dhe të rekomandojë studentët e tij në kompanitë IT dhe në qytete të tjera të Bjellorusisë, Kazakistanit, dhe Rusisë.

Faza e parë zgjati pak më shumë se një muaj. Kjo është faza më masive. Në grupin tim e filluan 1860 persona – dmth. të gjithë ata që u regjistruan në kurs. Kursin e ndjekin njerëz të moshave të ndryshme, por shumica e nxënësve janë studentë të viteve të fundit dhe ata që, pasi kanë punuar disa vite në një fushë tjetër, vendosën të ndryshojnë profesionin.

Në fazën e parë kaluam dy teste mbi bazat e Git, dy teste mbi HTML/CSS, kurset Codecademy dhe HTML Academy, krijuam CV-në tonë në formën e një file markdown dhe një faqe web të zakonshme, realizuam një maket të vogël njëfaqëshe, zgjidhëm disa detyra të mjaftueshme të vështira në JavaScript.

Detyra më voluminoze e fazës së parë ishte realizimi i faqes së internetit Hexal.
E veçanta ishte eventi i lojërave Code Jam për njohuritë mbi selektorët css "CSS Quick Draw".
Detyrat më të vështira ishin ato që lidhen me JavaScript. Një shembull i njërës nga këto detyra është: „Të gjejmë numrin e zerave në fund të faktorielit të një numri të madh në sistemin e numërimit të dhënë“.

Shembulli i detyrës së fazës së parë: Hexal.

Si rezultat i realizimit të detyrave të fazës së parë, 833 studentë morën ftesa për intervista. Kalimi i studentit në fazën e dytë gjatë intervistës përcaktohej nga mentorët e tij të ardhshëm. Mentorët e Rolling Scopes School janë zhvillues aktualë nga Bjellorusia, Rusia, dhe Ukraina. Mentorët ndihmojnë dhe ofrojnë këshilla, kontrollojnë detyrat, përgjigjen në pyetje. Në grupin tonë kishte mbi 150 mentorë. Në varësi të disponibilitetit të kohës, një mentor mund të marrë nga dy deri në pesë studentë, por në intervista dërgohen dy studentë më shumë, në mënyrë që ai të mund të zgjedhë ata me të cilët do të punojë.

Shpërndarja e studentëve dhe mentorëve ishte një nga momentet më interesante dhe emocionuese të kursit. Organizatorët e përfshinë një element të vogël lojërash – të dhënat për mentorët ruheshin nga një kapelë shpërndarëse, mbi të cilën, kur klikove, mund të shikoje emrin dhe kontaktet e mentorit tënd të ardhshëm.

Kur mësova emrin e mentorit tim dhe shikova profilin e tij në LinkedIn, kuptova se doja shumë të punoja me të. Ai është një zhvillues me përvojë, një senior, që punon jashtë vendit prej disa vitesh. Një mentor i tillë, në të truthën, është një fat i madh. Por kërkesat e tij, siç më dukej, do të ishin shumë të larta. Më vonë kuptova se isha gabuar për sa i përket kërkesave tepër të larta, por në atë moment mendoja pikërisht kështu.

Pyetjet për intervistën e ardhshme ishin të njohura, kështu që mund të përgatitesha për të përpara.
OOP e mësova përmes videove. [J]u[S]t prototipizo këtë!. Autori i tij – Sergey Melyukov – shpjegon në mënyrë shumë të qartë dhe të kuptueshme.
Strukturat e të dhënave dhe nota O-madhe janë shpjeguar shkëlqyeshëm në artikull. Shpjeguese për intervista teknike..
Dyshimet më të mëdha i shkaktonte detyra në JavaScript, e cila do të ishte patjetër në intervistë. Më pëlqen të zgjidh problemet, por me Google dhe në konsolën e shfletuesit, e nëse duhet ta zgjidh me dorë dhe në letër (ose me miun në një bllok), gjithçka bëhet shumë më e vështirë.
Është e lehtë të përgatitesh për intervistën në çift në faqen skype.com/interviews/ – duke i bërë njëri-tjetrit pyetje, duke krijuar detyra. Ky është një mënyrë mjaft efektive për t'u përgatitur: kur luan role të ndryshme, kupton më mirë atë që është nga ana tjetër e ekranit.

Si mund të ishte për mendimin tim intervista? Ndoshta si një provim, ku ka një provues dhe një provuar. Në të vërtetë, kjo nuk ishte aspak një provim. Më tepër, ishte një bisedë midis dy njerëzve të apasionuar që merren me të njëjtin punë. Intervista kaloi shumë qetë, komode, miqësore, pyetjet ishin jo shumë të vështira, detyra ishte mjaft e thjeshtë, ndërsa mentori nuk kishte aspak kundërshtime në lidhje me zgjidhjen e saj në konsolë dhe madje lejoi të shikoja në Google ("në punë askush nuk e ndalon përdorimin e Google").

Nga sa kuptoj, detyra kryesore e intervistës ishte jo vetëm të kontrollonte njohuritë tona dhe aftësinë për të zgjidhur probleme, por edhe të jepte mundësi mentorit të njihte studentët e tij dhe të tregonte se si duket një intervistë në përgjithësi. Dhe fakti që nga intervista mbetën vetëm mbresa pozitive ishte rezultat i përpjekjeve të tij të vetëdijshme, dëshirës për të treguar se në intervistë në të vërtetë nuk ka asgjë frikësuese, dhe mund ta përballosh atë me kënaqësi. Një çështje tjetër është pse kjo ishte arritur mjaft lehtë nga një person me arsim teknik, dhe shumë rrallë arrijnë mësuesit. Të gjithë e kujtojnë me çfarë emocionesh shkonin në provim, edhe nëse e dinin materialin shumë mirë. Dhe që kur u diskutua për pedagogjinë zyrtare, do të ndaj një vëzhgim tjetër. Në kurs studionin gjithashtu dhe studentë të viteve të fundit të specialiteteve IT. Dhe ata pohuan se formati i mësimdhënies që ofron Shkolla Rolling Scopes është shumë më i dobishëm, më interesant dhe më efektiv se programi zakonisht i universitetit.

Unë kalova intervistën. Më pas, mentori caktoi një ditë dhe orë të javës kur i ishte e përshtatshme të fliste me mua. Për këtë ditë, unë përgatita pyetje, ai për to përgjigjej. Kishte pak pyetje për projektet që po kryeja - shumicën e përgjigjeve i gjeta në Google ose në bisedën e shkollës. Por ai fliste për punën e tij, për problemet e mundshme dhe mënyrat e zgjidhjes së tyre, ndante vëzhgimet dhe vërejtjet e tij. Në përgjithësi, këto biseda ishin jashtëzakonisht të dobishme dhe interesante. Për më tepër, mentori është gati personi i vetëm që ka interes për atë që dhe si e bën, një person që do të shikojë punën tënde, do të tregojë se çfarë nuk shkon dhe si mund ta përmirësosh atë. Prania e mentorëve është vërtet një përparësi e madhe e shkollës, roli i të cilëve është e vështirë të nënvlerësohet.

Në fazën e dytë, ne patëm një Code Jam shumë interesante dhe dinamike "JavaScript Arrays Quick Draw", këto gara në shkollë kalojnë emocionuese dhe tërheqëse.
Code Jam "CoreJS" u tregua shumë më i vështirë. 120 detyra për JavaScript, për zgjidhjen e të cilave ishin caktuar 48 orë, u bënë një provë serioze.
Kemi pasur gjithashtu disa teste për JavaScript, lidhja për një nga to më ka mbetur në shënimet e shfletuesit tim. Për zgjidhjen e testit janë caktuar 30 minuta.
Më pas, ne hartuam skicën e NeutronMail, realizuam Code Jam «DOM, DOM Events», krijuam një kërkues në YouTube.

Detyrat e tjera të fazës së dytë: Detyra: Codewars – zgjidhja e problemeve në faqen e tij të njëjtë, Code Jam «WebSocket Challenge.» – dërgimi dhe marrja e mesazheve përmes web-socket-ëve, Code Jam «Animation Player» – krijimi i një aplikacioni të vogël web.

Një detyrë mjaft të pazakontë dhe interesante e fazës së dytë ishte detyra «Presentation». Karakteristika e saj kryesore ishte se prezantimi duhej të përgatitej dhe të paraqitej në anglisht. Këtu Mund të shihni si kaloi faza në prezantime.

Dhe, padyshim, detyra më e vështirë dhe më e gjerë ishte detyra finale e fazës së dytë, gjatë së cilës na u propozua të krijonim kopjen tonë të aplikacionit web Piskel (www.piskelapp.com).
Për këtë detyrë kaluam më shumë se një muaj, dhe pjesa më e madhe e kohës ishte për të kuptuar si funksionon në origjinal. Për më shumë objektivitet, detyra finale u vlerësua nga një mentor tjetër, i rastësishëm. Dhe intervista pas fazës së dytë ishte gjithashtu e zhvilluar nga një mentor rastësor, sepse me mentorin tonë ishim tashmë mësuar, dhe ai ishte mësuar me ne, ndërsa në intervistat reale, zakonisht takohen njerëz të panjohur.

Intervista e dytë doli të ishte shumë më e komplikuar se e para. Si më parë, kishte një listë pyetjesh për intervistën, për të cilat po përgatitesha, por mentori vendosi se thjesht të pyesë për teorinë nuk do të ishte aq e drejtë, dhe për intervistën përgatiti një grup detyrash. Detyrat, sipas mendimit tim, ishin mjaft të vështira. Për shembull, ai sinqerisht nuk e kuptonte se çfarë më pengonte të shkruaja bind polyfill, ndërsa unë sinqerisht e konsideroja që di se çfarë është bind dhe çfarë është polyfill, tashmë është shumë. Nuk e zgjidhja këtë detyrë. Por kishte dhe të tjera, me të cilat arrita. Megjithatë, detyrat nuk ishin të thjeshta, dhe sapo gjeja zgjidhjen, mentori e ndryshonte pak kushtin, dhe duhej të zgjidhja detyrën përsëri, në një variant më të komplikuar.
Dua të theksoj se atmosfera e intervistës ishte shumë miqësore, detyrat interesante, mentori kaloi shumë kohë për t'i përgatitur ato, dhe u përpoq që intervista e mësimit në të ardhmen të ndihmonte në kalimin e një interviste reale për punësim.

Shembuj të detyrave të fazës së dytë:
NeutronMail
Palette
YouTubeClient
PiskelClone

Në fazën e tretë na u ofrua detyra Culture Portal. Këtë e realizuam në grup dhe për herë të parë u njoftuam me veçoritë e punës në ekip, shpërndarjen e detyrave dhe zgjidhjen e konflikteve gjatë bashkimit të degëve në Git. Me siguri, kjo ishte një nga detyrat më interesante të kursit.

Shembulli i detyrës së tretë: Culture Portal.

Pas përfundimit të fazës së tretë, studentët që aplikuan për punë në kompaninë EPAM dhe u renditën në listën e 120 më të mirëve, kaluan një intervistë telefonike për njohuritë e gjuhës angleze dhe aktualisht po kalojnë intervista teknike. Shumica e tyre do të ftohen në EPAM JS Lab dhe më pas në projekte reale. Çdo vit, më shumë se njëqind të diplomuar nga Shkolla Rolling Scopes marrin punë në EPAM. Në krahasim me ata që filluan kursin, ky është një përqindje relativisht e vogël, por nëse e shohim grupin që arriti në final, për ta shansi për të gjetur një punë është mjaft i madh.

Nga vështirësitë për të cilat duhet të jeni të gatshëm, do të përmend dy. E para - koha. Kjo kërkon shumë. Orientohuni për 30-40 orë në javë, mund edhe më shumë; nëse është më pak, është e pamundur që të arrini të realizoni të gjitha detyrat, pasi programi i kursit është shumë i ngarkuar. E dyta - gjuhë angleze e nivelit A2. Nëse është më poshtë, të mësuarit në kurs nuk do t'ju pengojë, por gjetja e një pune me një nivel të tillë gjuhe do të jetë mjaft e vështirë.

Nëse keni pyetje, mos ngurroni të pyesni; do të përpiqem të përgjigjem. Nëse dini për kurse të ngjashme falas online në gjuhën ruse - ndajeni, do të jetë interesante.

Burimi: habr.com

Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS 🔥 Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS - ProHoster