Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

АТ саласындағы HR қызметкерлеріне құпия емес, егер сіздің қалаңыз миллионнан астам қала болмаса, онда бағдарламашыны табу қиынға соғады, ал қажетті технология жинағы мен тәжірибесі бар адам одан да қиын.

Иркутскіде IT әлемі кішкентай. Қаланың әзірлеушілерінің көпшілігі ISPsystem компаниясының бар екенін біледі және көпшілігі бізбен бірге. Үміткерлер кіші лауазымдарға жиі келеді, бірақ көбіне бұл кешегі университет түлектері, олар әлі де оқуды және жылтыратуды қажет етеді.

Бізге C++ тілінде аздап бағдарламалаған, Angular тілін жақсы білетін және Linux-ті көрген дайын студенттер қажет. Бұл біз оларға өзіміз барып, үйретуіміз керек дегенді білдіреді: оларды компаниямен таныстырыңыз және бізбен жұмыс істеуге қажетті материалды беріңіз. Міне, осылайша серверлік және фронтенді дамыту бойынша курстарды ұйымдастыру идеясы пайда болды. Өткен қыста біз оны жүзеге асырдық және бұл мақалада біз сізге бұл қалай болғанын айтып береміз.

Дайындау

Басында біз жетекші әзірлеушілерді жинап, олармен сабақтардың міндеттерін, ұзақтығы мен форматын талқыладық. Бәрінен де бізге бэкэнд және фронтенд программистер қажет, сондықтан осы мамандықтар бойынша семинарлар өткізуді жөн көрдік. Бұл бірінші тәжірибе болғандықтан және оған қанша күш жұмсалатыны белгісіз, біз уақытты бір айға шектедік (әр бағытта сегіз сабақ).

Семинарларға арналған материалды бэк-енденде үш адам дайындап, екі адам оқыды, ал фронтте тақырыптар жеті қызметкер арасында бөлінді.

Маған ұзақ уақыт бойы мұғалімдерді іздеудің де, оларды көндірудің де қажеті болмады. Қатысу үшін бонус болды, бірақ ол шешуші болмады. Біз орта және одан жоғары деңгейдегі қызметкерлерді тарттық, олар өздерін жаңа рөлде сынап көруге, коммуникация және білім беру дағдыларын дамытуға мүдделі. Олар дайындыққа 300 сағаттан астам уақыт жұмсады.

Біз INRTU кибербөлімінің жігіттері үшін алғашқы семинарларды өткізуді шештік. Мұнда жаңа ғана ыңғайлы коворкинг алаңы пайда болды, сонымен қатар Мансап күні - студенттердің әлеуетті жұмыс берушілермен кездесуі жоспарланған, оған біз үнемі қатысамыз. Бұл жолы да әдеттегідей өздері және бос орындар туралы айтып, бізді де курсқа шақырды.

Қатысқысы келетіндерге қызығушылықтарын, дайындық деңгейін және технологияны білу, семинарларға шақыру үшін контактілерді жинау, сондай-ақ тыңдаушыда сабаққа әкелетін ноутбук бар-жоғын білу үшін сауалнама берілді.

Әлеуметтік желілерде сауалнаманың электронды нұсқасына сілтеме жарияланды, сонымен қатар олар INRTU-да магистратурада оқуын жалғастырып жатқан қызметкерден оны сыныптастарымен бөлісуді сұрады. Сондай-ақ университетпен жаңалықты өз веб-сайтында және әлеуметтік желілерде жариялауға келісуге болады, бірақ курсқа барғысы келетіндер жеткілікті болды.

Сауалнама нәтижелері біздің болжамдарымызды растады. Студенттердің барлығы backend және frontend не екенін білмейді және олардың барлығы біз қолданатын технологиялық стекпен жұмыс істемеді. Біз бірдеңе естідік, тіпті C++ және Linux-та жобалар жасадық, өте аз адамдар Angular және TypeScript-ті қолданды.

Сабақ басталғанға дейін 64 оқушы болды, бұл жеткілікті болды.

Семинарға қатысушылар үшін арна мен мессенджердегі топ ұйымдастырылды. Олар кестедегі өзгерістер туралы жазды, бейнероликтер мен лекциялардың презентацияларын, үй тапсырмаларын орналастырды. Онда да пікірталас жүргізіп, сұрақтарға жауап берді. Қазір семинарлар аяқталды, бірақ топта талқылау жалғасуда. Болашақта ол арқылы жігіттерді geeknights, хакатондарға шақыруға болады.

Дәрістердің мазмұны

Біз түсіндік: сегіз сабақ барысында C++ тілінде бағдарламалауды немесе Angular тілінде веб-қосымшаларды жасауды үйрету мүмкін емес. Бірақ біз заманауи өнім компаниясындағы даму процесін көрсеткіміз келді және сонымен бірге бізді технологиялық стекке таныстырғымыз келді.

Бұл жерде теория жеткіліксіз, тәжірибе қажет. Сондықтан біз барлық сабақтарды бір тапсырмамен біріктірдік - оқиғаларды тіркеу қызметін құру. Біз студенттермен бірге қосымшаны кезең-кезеңімен әзірлеуді жоспарладық, сонымен бірге оларды стекпен және оның балама нұсқаларымен таныстыруды жоспарладық.

Кіріспе дәріс

Бланкілерді толтырғандардың барлығын бірінші сабаққа шақырдық. Бастапқыда олар тек толық стек - бұл баяғыда болды деп айтты, бірақ қазір әзірлеуші ​​компанияларда алдыңғы және артқы дамуға бөліну бар. Соңында олар бізге ең қызықты бағытты таңдауды сұрады. Студенттердің 40%-ы бэкендке, 30%-ы фронтендке жазылды, тағы 30%-ы екі курсқа да қатысуға шешім қабылдады. Бірақ балалардың барлық сабаққа қатысуы қиынға соқты, олар бірте-бірте шешімді болды.

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Кіріспе лекцияда бэкенд әзірлеушісі тренингке деген көзқарас туралы әзілдейді: «Семинарлар суретшілерге ұмтылатын нұсқаулар сияқты болады: 1-қадам – шеңберлер салу, 2-қадам – үкі салуды аяқтау»
 

Бейне курстардың мазмұны

Кейбір серверлік сыныптар бағдарламалауға арналды, ал кейбіреулері жалпы даму процесіне арналды. Бірінші бөлім компиляция, СMake және Conan жасау, көп ағынды, бағдарламалау әдістері мен үлгілері, мәліметтер базасымен және http сұраныстарымен жұмыс істеуге тоқталды. Екінші бөлімде тестілеу, үздіксіз интеграция және үздіксіз жеткізу, Gitflow, командалық жұмыс және рефакторинг туралы әңгімелестік.

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Слайд серверді әзірлеушілер презентациясынан
 

Frontend курстарының мазмұны

Біріншіден, біз ортаны орнаттық: Node.js және npm көмегімен NVM орнатылды, оларды Angular CLI пайдалану және Angular тілінде жоба жасау. Содан кейін біз модульдерді қабылдадық, негізгі директиваларды пайдалануды және компоненттерді жасауды үйрендік. Әрі қарай, біз беттер арасында қалай шарлау және маршруттауды конфигурациялау керектігін түсіндік. Біз қызметтердің не екенін және олардың жеке құрамдас бөліктерде, модульдерде және бүкіл қолданбада жұмыс істеу ерекшеліктері қандай екенін білдік.

Біз http сұрауларын жіберу және маршруттаумен жұмыс істеу үшін алдын ала орнатылған қызметтер тізімімен таныстық. Пішіндерді жасауды және оқиғаларды өңдеуді үйрендік. Тестілеу үшін Node.js ішінде жалған сервер жасадық. Десерт үшін біз реактивті бағдарламалау тұжырымдамасы және RxJS сияқты құралдар туралы білдік.

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Студенттерге арналған алдыңғы қатарлы әзірлеушілердің презентациясынан слайд
 

Құралдар

Семинарлар сабақта ғана емес, одан тыс уақытта да тәжірибені қамтиды, сондықтан үй тапсырмасын қабылдау және тексеру үшін қызмет қажет болды. Фронт-эндтер Google Classroom-ді таңдады, ал бэйндерлер өздерінің бағалау жүйесін жазуды шешті.
Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Біздің рейтинг жүйесі. Бейнекердің не жазғаны бірден түсінікті :)

Бұл жүйеде студенттер жазған код автотестілеуден өтті. Баға тест нәтижелеріне байланысты болды. Қарау және уақытында тапсырылған жұмыс үшін қосымша ұпайлар алуға болады. Рейтингтегі орынға жалпы рейтинг әсер етті.

Рейтинг сыныптарға бәсекелестік элементін енгізді, сондықтан біз оны тастап, Google Classroom-дан бас тартуды шештік. Әзірге біздің жүйе Google шешіміне ыңғайлылық тұрғысынан төмен, бірақ оны түзетуге болады: біз оны келесі курстар үшін жетілдіреміз.

Кеңестер

Біз семинарларға жақсы дайындалдық және қателескен жоқпыз, бірақ әлі де бірнеше қателіктер жібердік. Біз бұл тәжірибені біреуге пайдалы болған жағдайда кеңес ретінде ресімдедік.

Уақытыңызды таңдап, әрекеттеріңізді дұрыс таратыңыз

Біз университетке үміттендік, бірақ бекер. Сабақтардың соңында біздің курс оқу жылының ең қолайсыз уақытында – сессия алдында өткені белгілі болды. Студенттер сабақтан кейін үйге келіп, емтиханға дайындалып, тапсырмаларымызды орындауға отырды. Кейде шешімдер 4-5 сағатта келді.

Сондай-ақ күннің уақытын және әрекеттердің жиілігін ескеру маңызды. Біз сағат 19:00-де бастадық, сондықтан студенттің сабақтары ерте аяқталса, ол үйге барып, кешке қайтуы керек еді - бұл ыңғайсыз болды. Сонымен қатар, сабақтар дүйсенбі мен сәрсенбіде немесе бейсенбі мен сейсенбіде жүргізілді, үй тапсырмасына бір күн болған кезде, балалар оны уақытында орындау үшін көп жұмыс істеуге мәжбүр болды. Содан баптап, ондай күндері аз сұрайтынбыз.

Алғашқы сабақтарыңызда сізге көмектесу үшін әріптестеріңізді әкеліңіз

Бастапқыда студенттердің барлығы лекторға ілесе алмады, қоршаған ортаны орналастыру мен оны орнатуда қиындықтар туындады. Мұндай жағдайларда олар қолдарын көтеріп, біздің қызметкер келіп, оны шешуге көмектесті. Соңғы сабақтарда көмекке мұқтаж болмады, өйткені бәрі реттеліп қойған.

Семинарларды бейнеге түсіріңіз

Осылайша сіз бірден бірнеше мәселені шешесіз. Алдымен сабақты жіберіп алғандарға көруге мүмкіндік беріңіз. Екіншіден, ішкі білім қорын пайдалы мазмұнмен толықтыру, әсіресе жаңадан бастағандар үшін. Үшіншіден, жазбаға қарап, сіз қызметкердің ақпаратты қалай жеткізетінін және аудиторияның назарын өзіне аудара алатынын бағалай аласыз. Мұндай талдау сөйлеушінің шешендік дағдыларын дамытуға көмектеседі. IT компаниялардың мамандандырылған конференцияларда әріптестерімен бөлісетін нәрсесі әрқашан болады, ал семинарлар тамаша спикерлерді шығара алады.

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық

Лектор сөйлейді, камера жазады
 

Қажет болса, көзқарасыңызды өзгертуге дайын болыңыз

Біз кішкене теорияны оқып, аздап бағдарламалауды және үй тапсырмасын беретін болдық. Бірақ материалды қабылдау соншалықты қарапайым және тегіс емес болып шықты, сондықтан біз семинарларға деген көзқарасты өзгерттік.

Дәрістің бірінші жартысында алдыңғы үй тапсырмасын жан-жақты қарастырса, екінші бөлімінде келесі тапсырманың теориясын оқи бастады. Басқаша айтқанда, олар студенттерге қармақ берді, ал үйде олар су қоймасын, жемді іздеп, балық аулады - егжей-тегжейге үңіліп, С++ синтаксисін түсінді. Келесі лекцияда не болғанын бірге талқыладық. Бұл тәсіл тиімдірек болып шықты.

Мұғалімдерді жиі ауыстырмаңыз

Бізде екі қызметкер backend бойынша семинарлар жүргізді, ал жеті қызметкер фронтендте. Студенттер үшін айтарлықтай айырмашылық болған жоқ, бірақ алдыңғы қатардағы оқытушылар нәтижелі байланыс үшін аудиторияны, олардың ақпаратты қалай қабылдайтынын және т.б. білу керек деген қорытындыға келді, бірақ сіз бірінші рет сөйлеген кезде, бұл білім жоқ. Сондықтан мұғалімдерді жиі ауыстырмағаны дұрыс шығар.

Әр сабақта сұрақтар қойыңыз

Студенттердің өздері бірдеңе дұрыс емес деп айтуы екіталай. Олар ақымақ болып көрінуге және «ақымақ» сұрақтар қоюға қорқады және лектордың сөзін бөлуге ұялады. Бұл түсінікті, өйткені олар бірнеше жыл бойы оқуға деген басқаша көзқарасты көрді. Сондықтан қиын болса, оны ешкім мойындамайды.

Шиеленісті жеңілдету үшін біз «деко» әдісін қолдандық. Лектордың әріптесі тек көмектесіп қана қоймай, дәріс барысында сұрақтар қойып, шешу жолдарын ұсынды. Студенттер лекторлардың нағыз адамдар екенін, оларға сұрақ қоюға, тіпті олармен әзілдесуге болатынын көрді. Бұл жағдайды реттеуге көмектесті. Мұнда ең бастысы - қолдау мен үзіліс арасындағы тепе-теңдікті сақтау.

Тіпті мұндай «алмаушылық» болса да, қиындықтар туралы сұраңыз, жұмыс жүктемесінің қаншалықты сәйкес келетінін, үй тапсырмасын қашан және қалай талдау керектігін біліңіз.

Соңында бейресми кездесу өткізіңіз

Соңғы дәрісте соңғы өтінішті алған соң, біз пиццамен тойлауды және бейресми жағдайда сөйлесуді шештік. Соңына дейін шыдап, үздік бестікті атап, жаңа қызметкерлерді тапқандарға сыйлықтар табыс етті. Біз өзімізді және студенттерді мақтан тұттық, ақыры аяқталды деп қуандық :-).

Сізге дайын юн керек - оны өзіңіз үйретіңіз немесе студенттерге арналған семинарлар курсын қалай бастадық
Жүлделерді ұсынамыз. Пакет ішінде: футболка, шай, блокнот, қалам, стикерлер
 

Нәтижелері

Әр бағытта 16 оқушыдан 8 оқушы аяқталды. Университет оқытушыларының айтуынша, мұндай күрделі курстар үшін бұл өте көп. Үздіктердің бесеуін жұмысқа алдық немесе жұмысқа алдық, ал жазда тағы бесеуі жаттығуға келеді.

Пікір жинау үшін сабақтан кейін бірден сауалнама басталды.

Семинарлар сізге бағытты таңдауға көмектесті ме?

  • Иә, мен бэкендті әзірлеуге кірісемін - 50%.
  • Иә, мен міндетті түрде алдыңғы қатарлы әзірлеуші ​​болғым келеді - 25%.
  • Жоқ, мені не қызықтыратынын әлі білмеймін – 25%.

Ең құндысы не болып шықты?

  • Жаңа білім: «сіз мұны университетте ала алмайсыз», «тығыз C++ тіліне жаңа көзқарас», өнімділікті арттыру технологияларына оқыту - CI, Git, Conan.
  • Дәрістердің кәсібилігі мен құштарлығы, білім беруге деген ұмтылысы.
  • Сабақтың форматы: түсіндіру және жаттығу.
  • Нақты жұмыстан мысалдар.
  • Мақалалар мен нұсқауларға сілтемелер.
  • Жақсы жазылған лекциялық презентациялар.

Ең бастысы, жоғары оқу орнын тәмамдаған соң жігіттердің қызығы мен қиындығы көп болатынын айта алдық. Олар қай бағытқа көшкісі келетінін түсініп, IT саласындағы табысты мансапқа біршама жақындады.

Енді біз оқытудың сәйкес форматын қалай таңдауға болатынын, бағдарламадан нені жеңілдетуге немесе мүлдем алып тастауға болатынын, дайындыққа қанша уақыт кететінін және басқа да маңызды нәрселерді білеміз. Біз өз тыңдаушыларымызды жақсы түсінеміз, қорқыныш пен күмән артта қалды.

Бәлкім, біз корпоративтік университет құрудан әлі алыс шығармыз, бірақ біз қазірдің өзінде компанияда қызметкерлерді оқытып, студенттермен жұмыс істеп жатырмыз, бірақ біз бұл маңызды міндетке алғашқы қадам жасадық. Жақында, сәуір айында біз қайтадан сабақ беруге барамыз - бұл жолы біз бұрыннан бірге жұмыс істеп келе жатқан Иркутск мемлекеттік университетінде. Сәттілік тілейміз!

Ақпарат көзі: www.habr.com

пікір қалдыру