Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Det är ingen hemlighet för HR-personal inom IT att om din stad inte är en miljonstad är det problematiskt att hitta en programmerare där, och en person som har den nödvändiga teknologistacken och erfarenheten är ännu svårare.

IT-världen är liten i Irkutsk. De flesta av stadens utvecklare är medvetna om existensen av ISPsystem-bolaget, och många är redan hos oss. Sökande kommer ofta till juniortjänster, men mestadels är det gårdagens universitetsakademiker som fortfarande behöver vidareutbildas och putsas.

Och vi vill ha färdiga studenter som har programmerat lite i C++, är bekanta med Angular och har sett Linux. Det betyder att vi måste gå och lära dem själva: introducera dem för företaget och ge dem det material de behöver för att arbeta med oss. Så föddes idén att anordna kurser om backend- och frontendutveckling. I vintras implementerade vi det, och i den här artikeln kommer vi att berätta hur det gick till.

Utbildning

I början samlade vi ledande utvecklare och diskuterade med dem uppgifterna, varaktigheten och formatet för klasserna. Mest av allt behöver vi backend- och frontend-programmerare, så vi bestämde oss för att hålla seminarier inom dessa specialiteter. Eftersom detta är den första upplevelsen och hur mycket ansträngning det kommer att kräva är okänt, begränsade vi tiden till en månad (åtta klasser i varje riktning).

Materialet för seminarierna på backend förbereddes av tre personer och lästes av två, på frontend var ämnena uppdelade på sju anställda.

Jag behövde inte leta efter lärare under lång tid, och jag behövde inte heller övertala dem. Det fanns en bonus för deltagande, men den var inte avgörande. Vi lockade medarbetare på mellannivå och uppåt, och de är intresserade av att prova sig fram i en ny roll, utveckla kommunikation och kunskapsöverföring. De tillbringade mer än 300 timmar med att förbereda sig.

Vi bestämde oss för att hålla de första seminarierna för killarna från cyberavdelningen på INRTU. Ett bekvämt samarbetsutrymme hade precis dykt upp där, och karriärdagen planerades också - ett möte för studenter med potentiella arbetsgivare, som vi regelbundet deltar i. Den här gången berättade de som vanligt om sig själva och de lediga jobben och bjöd även in oss till kursen.

De som ville delta fick ett frågeformulär för att förstå intressen, utbildningsnivå och teknikkunskaper, samla kontakter för inbjudningar till seminarier och även ta reda på om lyssnaren hade en bärbar dator som han kunde ta med till lektionerna.

En länk till den elektroniska versionen av frågeformuläret lades ut på sociala nätverk, och de bad också en anställd som fortsätter att studera för en magisterexamen vid INRTU att dela den med klasskamrater. Det var också möjligt att komma överens med universitetet om att publicera nyheterna på deras hemsida och sociala nätverk, men det fanns redan tillräckligt många som var villiga att gå kursen.

Undersökningsresultaten bekräftade våra antaganden. Alla elever visste inte vad en backend och frontend var, och alla av dem arbetade inte med teknikstacken som vi använder. Vi hörde något och gjorde till och med projekt i C++ och Linux, väldigt få människor använde faktiskt Angular och TypeScript.

Vid lektionsstarten var det 64 elever, vilket var mer än tillräckligt.

En kanal och en grupp i budbäraren organiserades för seminariedeltagarna. De skrev om förändringar i schemat, la upp filmer och presentationer av föreläsningar och hemuppgifter. Där höll de också diskussioner och svarade på frågor. Nu är seminarierna avslutade, men diskussionerna i gruppen fortsätter. I framtiden kommer det att vara möjligt att bjuda in killar till geeknights och hackathons.

Innehåll i föreläsningar

Vi förstod: under en kurs på åtta lektioner är det omöjligt att lära ut programmering i C++ eller att skapa webbapplikationer i Angular. Men vi ville visa utvecklingsprocessen i ett modernt produktbolag och samtidigt introducera oss till vår teknikstack.

Teori räcker inte här, praktik behövs. Därför kombinerade vi alla lektionerna med en uppgift – att skapa en tjänst för att registrera evenemang. Vi planerade att utveckla en applikation med eleverna steg för steg, samtidigt som vi introducerade dem till vår stack och dess alternativ.

Introduktionsföreläsning

Vi bjöd in alla som fyllt i formulären till den första lektionen. Först sa de att bara full stack - det var länge sedan, men nu i utvecklingsföretag finns det en uppdelning i front- och backutveckling. I slutet bad de oss välja den mest intressanta riktningen. 40 % av eleverna registrerade sig för backend, 30 % för frontend och ytterligare 30 % bestämde sig för att gå båda kurserna. Men det var svårt för barnen att gå i alla klasser, och de blev gradvis beslutsamma.

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

På introduktionsföreläsningen skämtar backend-utvecklaren om tillvägagångssättet för utbildning: "Seminarierna kommer att vara som instruktioner för blivande artister: steg 1 - rita cirklar, steg 2 - rita klart ugglan"
 

Innehåll i backend-kurser

Några av backend-klasserna ägnades åt programmering, och några ägnades åt utvecklingsprocessen i allmänhet. Den första delen berörde kompilering, göra СMake och Conan, multithreading, programmeringsmetoder och mönster, arbete med databaser och http-förfrågningar. I den andra delen pratade vi om testning, Continuous Integration och Continuous Delivery, Gitflow, teamwork och refactoring.

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Bild från presentationen av backend-utvecklare
 

Innehåll i frontend-kurser

Först satte vi upp miljön: installerade NVM, använde Node.js och npm, använde dem Angular CLI och skapade ett projekt i Angular. Sedan tog vi upp moduler, lärde oss hur man använder grundläggande direktiv och skapar komponenter. Därefter kom vi på hur man navigerar mellan sidor och konfigurerar routing. Vi lärde oss vad tjänster är och vad som är funktionerna i deras arbete inom enskilda komponenter, moduler och hela applikationen.

Vi bekantade oss med listan över förinstallerade tjänster för att skicka http-förfrågningar och arbeta med routing. Vi lärde oss att skapa formulär och bearbeta händelser. För testning skapade vi en skenserver i Node.js. Till efterrätt lärde vi oss om konceptet reaktiv programmering och verktyg som RxJS.

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Bild från en presentation av frontend-utvecklare för studenter
 

Verktyg

Seminarier involverar övning inte bara i klassen, utan även utanför dem, så det behövdes en service för att ta emot och kontrollera läxor. Front-endarna valde Google Classroom, back-endarna bestämde sig för att skriva sitt eget betygssystem.
Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Vårt betygssystem. Det är direkt uppenbart vad backendern skrev :)

I detta system testades koden som skrivits av eleverna automatiskt. Betyget berodde på provresultaten. Ytterligare poäng kunde erhållas för granskning och för arbete som lämnats in i tid. Det totala betyget påverkade placeringen i rankingen.

Betyget introducerade ett inslag av konkurrens i klasserna, så vi bestämde oss för att lämna det och överge Google Classroom. För närvarande är vårt system sämre vad gäller bekvämlighet än Googles lösning, men detta kan fixas: vi kommer att förbättra det för nästa kurser.

Советы

Vi förberedde oss väl inför seminarierna och gjorde nästan inga misstag, men vi trampade ändå på några misstag. Vi formaliserade den här erfarenheten till råd, om det skulle vara användbart för någon.

Välj din tid och fördela dina aktiviteter rätt

Vi hoppades på universitet, men förgäves. I slutet av lektionerna stod det klart att vår kurs ägde rum på den mest obekväma tidpunkten på läsåret – innan passet. Eleverna kom hem efter lektionerna, förberedde sig för tentor och satte sig sedan ner för att göra våra uppgifter. Ibland kom lösningar inom 4–5 timmar.

Det är också viktigt att ta hänsyn till tid på dygnet och aktivitetsfrekvens. Vi började klockan 19:00, så om en elevs lektioner slutade tidigt, var han tvungen att gå hem och återvända på kvällen - detta var obekvämt. Dessutom hölls lektioner på måndag och onsdag eller torsdag och tisdag, och när det var en dag för läxor fick barnen arbeta hårt för att göra det i tid. Sedan anpassade vi oss och sådana dagar frågade vi mindre.

Ta med kollegor som hjälper dig under din första lektion

Till en början kunde inte alla studenter hänga med föreläsaren, det uppstod problem med att distribuera miljön och ställa in den. I sådana situationer räckte de upp handen och vår medarbetare kom fram och hjälpte till att reda ut det. Under de sista lektionerna behövdes ingen hjälp, för allt var redan inrett.

Spela in seminarier på video

På så sätt kommer du att lösa flera problem samtidigt. Ge först de som missade klassen en chans att titta. För det andra, fyll på den interna kunskapsbasen med användbart innehåll, särskilt för nybörjare. För det tredje, genom att titta på inspelningen, kan du utvärdera hur medarbetaren förmedlar information och om han kan hålla publikens uppmärksamhet. Sådan analys hjälper till att utveckla talarens talfärdigheter. IT-företag har alltid något att dela med kollegor på specialiserade konferenser och seminarier kan ge utmärkta talare.

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter

Föreläsare talar, kamera spelar in
 

Var beredd att ändra ditt förhållningssätt om det behövs

Vi skulle läsa ett litet stycke teori, programmera lite och ge läxor. Men uppfattningen av materialet visade sig inte vara så enkel och smidig, och vi ändrade inställningen till seminarierna.

Under första halvan av föreläsningen började de överväga den tidigare läxan i detalj och i den andra delen började de läsa teorin för nästa. De gav med andra ord eleverna ett fiskespö, och hemma letade de själva efter reservoar, bete och fångade fisk – grävde ner sig i detaljerna och förstod C++-syntaxen. Vid nästa föreläsning diskuterade vi tillsammans vad som hände. Detta tillvägagångssätt visade sig vara mer produktivt.

Byt inte lärare ofta

Vi hade två anställda som genomförde seminarier på backend och sju på frontend. Det var inte så stor skillnad för studenterna, men front-end föreläsarna kom fram till att för en mer produktiv kontakt behöver man känna publiken, hur de uppfattar information etc., men när man pratar för första gången, denna kunskap finns inte där. Därför kan det vara bättre att inte byta lärare ofta.

Ställ frågor i varje lektion

Eleverna själva är osannolikt att säga om något går fel. De är rädda för att se dumma ut och ställa "dumma" frågor och skäms över att avbryta föreläsaren. Det är förståeligt, eftersom de i flera år har sett ett annat förhållningssätt till lärande. Så om det är svårt kommer ingen att erkänna det.

För att lindra spänningar använde vi "locke"-tekniken. Föreläsarens kollega hjälpte inte bara till, utan ställde också frågor under föreläsningen och föreslog lösningar. Studenter såg att föreläsare är riktiga människor, du kan ställa frågor till dem och till och med skämta med dem. Detta hjälpte till att avskaffa situationen. Huvudsaken här är att upprätthålla en balans mellan stöd och avbrott.

Tja, även med en sådan "lockare", fråga fortfarande om svårigheterna, ta reda på hur tillräcklig arbetsbelastningen är, när och hur man bäst analyserar läxorna.

Ha ett informellt möte i slutet

Efter att ha fått den sista ansökan vid den senaste föreläsningen bestämde vi oss för att fira med pizza och bara chatta i en informell miljö. De gav gåvor till dem som räckte till slutet, utsåg de fem bästa och hittade nya medarbetare. Vi var stolta över oss själva och eleverna, och vi var glada att det äntligen var över :-).

Du behöver en färdig jun - lär honom själv, eller hur vi lanserade en kurs med seminarier för studenter
Vi delar ut priser. Inuti paketet: T-shirt, te, anteckningsblock, penna, klistermärken
 

Resultat av

16 elever nådde slutet av klasserna, 8 åt vardera hållet. Enligt universitetsprofessorer är detta mycket för kurser av sådan komplexitet. Vi anställde eller nästan anställde fem av de bästa, och fem till kommer att träna till sommaren.

En undersökning startade direkt efter klassen för att samla in feedback.

Hjälpte seminarierna dig att besluta om ditt val av riktning?

  • Ja, jag kommer att gå in på backend-utveckling - 50%.
  • Ja, jag vill definitivt bli en frontend-utvecklare - 25%.
  • Nej, jag vet fortfarande inte vad som intresserar mig mer – 25 %.

Vad visade sig vara mest värdefullt?

  • Ny kunskap: "du kan inte få det här på universitetet", "en ny titt på tät C++", utbildning i teknologier för att öka produktiviteten - CI, Git, Conan.
  • Föreläsarnas professionalism och passion, viljan att föra kunskap vidare.
  • Klassformat: förklaring och övning.
  • Exempel från verkligt arbete.
  • Länkar till artiklar och instruktioner.
  • Välskrivna föreläsningar.

Huvudsaken är att vi kunde berätta att efter examen från universitetet kommer killarna att ha mycket intressant och utmanande arbete. De förstod vilken riktning de ville gå och kom lite närmare en framgångsrik karriär inom IT.

Nu vet vi hur man väljer lämpligt träningsformat, vad man ska förenkla eller helt utesluta från programmet, hur mycket tid det tar att förbereda sig och andra viktiga saker. Vi förstår våra lyssnare bättre, rädslor och tvivel är kvar.

Kanske är vi fortfarande långt ifrån att skapa ett företagsuniversitet, även om vi redan utbildar anställda inom företaget och arbetar med studenter, men vi har tagit det första steget mot denna allvarliga uppgift. Och mycket snart, i april, kommer vi att undervisa igen - den här gången vid Irkutsk State University, som vi har samarbetat med länge. Önska oss lycka till!

Källa: will.com

Lägg en kommentar