Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Det er ingen hemmelighet for HR-folk innen IT at hvis byen din ikke er en millionby, så er det problematisk å finne en programmerer der, og en person som har den nødvendige teknologistabelen og erfaringen er enda vanskeligere.

IT-verdenen er liten i Irkutsk. De fleste av byens utviklere er klar over eksistensen av ISPsystem-selskapet, og mange er allerede hos oss. Søkere kommer ofte til juniorstillinger, men stort sett er dette gårsdagens universitetsutdannede som fortsatt må videreutdannes og poleres.

Og vi ønsker oss ferdige studenter som har programmert litt i C++, er kjent med Angular og har sett Linux. Dette betyr at vi må gå og lære dem selv: introdusere dem for selskapet og gi dem materialet de trenger for å jobbe med oss. Slik ble ideen født om å organisere kurs om backend- og frontend-utvikling. Sist vinter implementerte vi det, og i denne artikkelen vil vi fortelle deg hvordan det skjedde.

Trening

I begynnelsen samlet vi ledende utviklere og diskuterte med dem oppgavene, varigheten og formatet til klassene. Mest av alt trenger vi backend- og frontend-programmerere, så vi bestemte oss for å holde seminarer i disse spesialitetene. Siden dette er den første opplevelsen og hvor mye innsats det vil kreve er ukjent, begrenset vi tiden til en måned (åtte klasser i hver retning).

Materialet til seminarene på backend ble utarbeidet av tre personer, og lest av to, på frontend ble temaene fordelt på syv ansatte.

Jeg trengte ikke å lete lenge etter lærere, og jeg trengte heller ikke å overtale dem. Det var bonus for deltakelse, men den var ikke avgjørende. Vi tiltrakk oss ansatte på mellomnivå og oppover, og de er interessert i å prøve seg i en ny rolle, utvikle kommunikasjons- og kunnskapsoverføringsevner. De brukte mer enn 300 timer på å forberede seg.

Vi bestemte oss for å holde de første seminarene for gutta fra cyberavdelingen til INRTU. Et praktisk samarbeidsrom hadde nettopp dukket opp der, og karrieredagen var også planlagt - et møte med studenter med potensielle arbeidsgivere, som vi deltar jevnlig på. Denne gangen fortalte de som vanlig om seg selv og de ledige stillingene, og inviterte oss også til kurset.

De som ønsket å delta fikk utdelt et spørreskjema for å forstå interesser, opplæringsnivå og kunnskap om teknologi, samle kontakter for invitasjoner til seminarer, og også finne ut om lytteren hadde en bærbar PC som han kunne ta med til undervisningen.

En lenke til den elektroniske versjonen av spørreskjemaet ble lagt ut på sosiale nettverk, og de ba også en ansatt som fortsetter å studere for en mastergrad ved INRTU om å dele den med klassekamerater. Det var også mulig å bli enige med universitetet om å publisere nyhetene på deres nettsider og sosiale nettverk, men det var allerede nok folk som var villige til å delta på kurset.

Undersøkelsesresultatene bekreftet våre antakelser. Ikke alle elevene visste hva en backend og frontend var, og ikke alle jobbet med teknologistabelen vi bruker. Vi hørte noe og gjorde til og med prosjekter i C++ og Linux, veldig få mennesker brukte faktisk Angular og TypeScript.

Ved klassestart var det 64 elever, som var mer enn nok.

Det ble organisert en kanal og en gruppe i messenger for seminardeltakerne. De skrev om endringer i timeplanen, la ut videoer og presentasjoner av forelesninger, og hjemmeoppgaver. Der holdt de også diskusjoner og svarte på spørsmål. Nå er seminarene avsluttet, men diskusjonene i gruppen fortsetter. I fremtiden vil det gjennom den være mulig å invitere gutter til nerdekvelder og hackathons.

Innhold i forelesninger

Vi forsto: i løpet av åtte leksjoner er det umulig å undervise i programmering i C++ eller lage webapplikasjoner i Angular. Men vi ønsket å vise utviklingsprosessen i et moderne produktselskap og samtidig introdusere oss for teknologistabelen vår.

Teori er ikke nok her, praksis er nødvendig. Derfor kombinerte vi alle timene med én oppgave – å lage en tjeneste for registrering av arrangementer. Vi planla å utvikle en applikasjon med elevene trinn for trinn, samtidig som vi introduserte dem for stabelen vår og dens alternativer.

Innledende forelesning

Vi inviterte alle som fylte ut skjemaene til den første leksjonen. Først sa de at bare full stack - det var lenge siden, men nå i utviklingsselskaper er det en inndeling i front- og backutvikling. På slutten ba de oss velge den mest interessante retningen. 40 % av studentene registrerte seg for backend, 30 % for frontend, og ytterligere 30 % bestemte seg for å delta på begge kursene. Men det var vanskelig for barna å gå på alle timene, og de ble etter hvert bestemt.

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

På introduksjonsforelesningen vitser backend-utvikleren om tilnærmingen til opplæring: «Seminariene vil være som instruksjoner for aspirerende artister: trinn 1 - tegne sirkler, trinn 2 - ferdig med å tegne uglen"
 

Innhold i backend-kurs

Noen av backend-klassene var viet til programmering, og noen var viet til utviklingsprosessen generelt. Den første delen berørte kompilering, lage СMake og Conan, multithreading, programmeringsmetoder og mønstre, arbeid med databaser og http-forespørsler. I den andre delen snakket vi om testing, Continuous Integration og Continuous Delivery, Gitflow, teamwork og refactoring.

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Lysbilde fra presentasjonen av backend-utviklere
 

Innhold i frontend-kurs

Først satte vi opp miljøet: installerte NVM, bruker Node.js og npm, bruker dem Angular CLI, og lager et prosjekt i Angular. Så tok vi opp moduler, lærte å bruke grunnleggende direktiver og lage komponenter. Deretter fant vi ut hvordan vi navigerer mellom sider og konfigurerer ruting. Vi lærte hva tjenester er og hva som er funksjonene i arbeidet deres innenfor individuelle komponenter, moduler og hele applikasjonen.

Vi ble kjent med listen over forhåndsinstallerte tjenester for sending av http-forespørsler og arbeid med ruting. Vi lærte å lage skjemaer og behandle hendelser. For testing laget vi en falsk server i Node.js. Til dessert lærte vi om konseptet med reaktiv programmering og verktøy som RxJS.

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Lysbilde fra en presentasjon av frontend-utviklere for studenter
 

Verktøy

Seminarer involverer praksis ikke bare i klassen, men også utenfor dem, så det var nødvendig med en tjeneste for å motta og sjekke lekser. Front-enderne valgte Google Classroom, back-enderne bestemte seg for å skrive sitt eget rangeringssystem.
Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Vårt rangeringssystem. Det er umiddelbart tydelig hva backender skrev :)

I dette systemet ble koden skrevet av elevene autotestet. Karakteren var avhengig av testresultatene. Ytterligere poeng kan oppnås for gjennomgang og for arbeid levert i tide. Den samlede vurderingen påvirket plasseringen i rangeringen.

Rangeringen introduserte et element av konkurranse i klassene, så vi bestemte oss for å forlate det og forlate Google Classroom. Foreløpig er systemet vårt dårligere når det gjelder bekvemmelighet enn Googles løsning, men dette kan fikses: vi vil forbedre det for de neste kursene.

Советы

Vi forberedte oss godt til seminarene og gjorde nesten ingen feil, men vi tråkket likevel på noen feil. Vi formaliserte denne erfaringen til råd, i tilfelle den kommer til nytte for noen.

Velg tid og fordel aktivitetene dine riktig

Vi håpet på universitetet, men forgjeves. På slutten av timene ble det klart at kurset vårt fant sted på den mest ubeleilige tiden av studieåret – før økten. Elevene kom hjem etter timene, forberedte seg til eksamen og satte seg så ned for å gjøre oppgavene våre. Noen ganger kom løsninger i løpet av 4–5 timer.

Det er også viktig å ta hensyn til tidspunkt på dagen og aktivitetsfrekvens. Vi startet klokken 19:00, så hvis en elevs undervisning ble avsluttet tidlig, måtte han reise hjem og returnere om kvelden - dette var upraktisk. I tillegg ble det holdt undervisning på mandag og onsdag eller torsdag og tirsdag, og når det var én dag for lekser, måtte barna jobbe hardt for å fullføre i tide. Så justerte vi og på slike dager spurte vi mindre.

Ta med kolleger til å hjelpe deg under de første timene

Til å begynne med var det ikke alle studenter som kunne holde følge med foreleseren, det oppsto problemer med å distribuere miljøet og sette det opp. I slike situasjoner rakte de opp hånden, og vår medarbeider kom opp og hjalp til med å ordne opp. I løpet av de siste timene var det ikke behov for hjelp, for alt var allerede satt opp.

Ta opp seminarer på video

På denne måten vil du løse flere problemer samtidig. Først, gi de som gikk glipp av timen en sjanse til å se. For det andre, fyll på den interne kunnskapsbasen med nyttig innhold, spesielt for nybegynnere. For det tredje, ved å se på opptaket, kan du evaluere hvordan den ansatte formidler informasjon og om han kan holde oppmerksomheten til publikum. Slik analyse bidrar til å utvikle foredragsholderens taleferdigheter. IT-selskaper har alltid noe å dele med kolleger på spesialiserte konferanser, og seminarer kan produsere gode foredragsholdere.

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter

Foreleser snakker, kamera tar opp
 

Vær forberedt på å endre tilnærmingen din om nødvendig

Vi skulle lese et lite stykke teori, programmere litt og gi lekser. Men oppfatningen av materialet viste seg å ikke være så enkel og smidig, og vi endret tilnærmingen til seminarene.

I første halvdel av forelesningen begynte de å vurdere de forrige leksene i detalj, og i andre del begynte de å lese teorien til den neste. De ga med andre ord elevene en fiskestang, og hjemme lette de selv etter et reservoar, agn og fanget fisk – fordypet seg i detaljene og forsto C++-syntaksen. På neste forelesning diskuterte vi sammen hva som skjedde. Denne tilnærmingen viste seg å være mer produktiv.

Ikke bytt lærere ofte

Vi hadde to ansatte som gjennomførte seminarer på backend, og syv på frontend. Det var ikke stor forskjell for studentene, men front-end foreleserne kom til den konklusjonen at for en mer produktiv kontakt må du kjenne publikum, hvordan de oppfatter informasjon osv., men når du snakker for første gang, denne kunnskapen er ikke der. Derfor kan det være bedre å ikke bytte lærer ofte.

Still spørsmål i hver leksjon

Studentene selv vil neppe si om noe går galt. De er redde for å se dumme ut og stille «dumme» spørsmål, og er flaue over å avbryte foreleseren. Dette er forståelig, fordi de i flere år har sett en annen tilnærming til læring. Så hvis det er vanskelig, vil ingen innrømme det.

For å avlaste spenningen brukte vi "lokkedue"-teknikken. Foreleserens kollega hjalp ikke bare til, men stilte også spørsmål under forelesningen og foreslo løsninger. Studentene så at forelesere er ekte mennesker, du kan stille dem spørsmål og til og med spøke med dem. Dette bidro til å uskadeliggjøre situasjonen. Hovedsaken her er å opprettholde en balanse mellom støtte og avbrudd.

Vel, selv med en slik "lokkedue", spør fortsatt om vanskelighetene, finn ut hvor tilstrekkelig arbeidsmengden er, når og hvordan du best kan analysere leksene.

Ha et uformelt møte til slutt

Etter å ha mottatt den endelige søknaden på siste forelesning, bestemte vi oss for å feire med pizza og bare prate i en uformell setting. De ga gaver til de som holdt ut til slutten, kåret de fem beste og fant nye ansatte. Vi var stolte av oss selv og elevene, og vi var glade for at det endelig var over :-).

Du trenger en ferdig jun - lær ham selv, eller Hvordan lanserte vi et seminarkurs for studenter
Vi deler ut premier. Inne i pakken: T-skjorte, te, notisblokk, penn, klistremerker
 

Resultater av

16 elever nådde slutten av timene, 8 i hver retning. Ifølge universitetsprofessorer er dette mye for kurs av en slik kompleksitet. Vi ansatte eller nesten ansatte fem av de beste, og fem til kommer på trening til sommeren.

En undersøkelse ble satt i gang umiddelbart etter timen for å samle inn tilbakemeldinger.

Har seminarene hjulpet deg med å bestemme retningsvalget ditt?

  • Ja, jeg vil gå inn i backend-utvikling - 50%.
  • Ja, jeg vil definitivt være en front-end-utvikler – 25 %.
  • Nei, jeg vet fortsatt ikke hva som interesserer meg mer – 25 %.

Hva viste seg å være mest verdifullt?

  • Ny kunnskap: "du kan ikke få dette på universitetet", "en fersk titt på tett C++", opplæring i teknologier for å øke produktiviteten - CI, Git, Conan.
  • Forelesernes profesjonalitet og lidenskap, ønsket om å formidle kunnskap.
  • Klasseformat: forklaring og praksis.
  • Eksempler fra virkelig arbeid.
  • Lenker til artikler og instruksjoner.
  • Velskrevne forelesningspresentasjoner.

Hovedsaken er at vi kunne fortelle at etter endt utdanning fra universitetet vil gutta ha mye interessant og utfordrende arbeid. De forsto hvilken retning de ønsket å bevege seg i og kom litt nærmere en vellykket karriere innen IT.

Nå vet vi hvordan vi velger riktig treningsformat, hva som skal forenkles eller utelukkes fra programmet helt, hvor mye tid det tar å forberede seg og andre viktige ting. Vi forstår lytterne våre bedre; frykt og tvil blir etterlatt.

Kanskje er vi fortsatt langt fra å skape et bedriftsuniversitet, selv om vi allerede utdanner ansatte i selskapet og jobber med studenter, men vi har tatt det første skrittet mot denne seriøse oppgaven. Og snart, i april, skal vi undervise igjen - denne gangen ved Irkutsk State University, som vi har samarbeidet med i lang tid. Ønsk oss lykke til!

Kilde: www.habr.com

Legg til en kommentar