
Für IT-Mitarbeiter ist es kein Geheimnis, dass es problematisch ist, einen Programmierer zu finden, wenn Ihre Stadt kein Millionär ist. Eine Person, die über den erforderlichen Stapel an Technologien und Erfahrungen verfügt, ist jedoch noch schwieriger.
In Irkutsk ist die IT-Welt eng. Die meisten Stadtentwickler sind sich der Existenz des ISP-Systems bewusst , und viele sind bereits bei uns. Oft kommen Bewerber in die Junior-Position, aber meistens sind sie Absolventen von gestern, die noch unterrichtet und gekürzt werden müssen.
Und wir wollen fertige Jones, die C ++ programmiert haben, mit Angular vertraut sind und Linux gesehen haben. Sie müssen sie also selbst unterrichten: Stellen Sie das Unternehmen vor und geben Sie das Material an, das für die Arbeit mit uns benötigt wird. So entstand die Idee, Backend- und Frontend-Entwicklungskurse zu organisieren. Letzten Winter haben wir es implementiert und in diesem Artikel werden wir Ihnen sagen, wie es war.
Vorbereitung
Wir haben führende Entwickler zusammengebracht und mit ihnen die Aufgaben, die Dauer und das Format der Klassen besprochen. Vor allem brauchen wir ein Backend und Front-End-Programmierer, deshalb haben wir beschlossen, Seminare zu diesen Fachgebieten durchzuführen. Da die erste Erfahrung und der Energiebedarf nicht bekannt sind, wurde die Zeit auf einen Monat begrenzt (acht Lektionen in jede Richtung).
Das Material für die Back-End-Seminare wurde von drei Personen vorbereitet, zwei lasen und sieben Mitarbeiter teilten die Themen im Front-End.
Es war nicht nötig, lange nach Lehrern zu suchen, um auch zu überzeugen. Für die Teilnahme wurde ein Bonus gewährt, der jedoch nicht entscheidend war. Wir haben Mitarbeiter mittlerer und höherer Ebenen angezogen, die daran interessiert sind, sich in einer neuen Rolle zu versuchen und Kommunikations- und Wissenstransferfähigkeiten zu entwickeln. Sie verbrachten mehr als 300 Stunden mit der Vorbereitung.
Sie beschlossen, die ersten Seminare für Kinder der Cyberfakultät von IRNITU abzuhalten. Praktisches Coworking erschien gerade dort und der Karrieretag war geplant - ein Treffen von Studenten mit potenziellen Arbeitgebern, zu dem wir regelmäßig gehen. Dieses Mal sprachen sie wie üblich über sich selbst und offene Stellen und wurden zu dem Kurs eingeladen.
Diejenigen, die teilnehmen wollten, erhielten einen Fragebogen, um die Interessen, den Grad der Vorbereitung und das Wissen über Technologien zu verstehen, Kontakte für die Einladung zu Seminaren zu sammeln und herauszufinden, ob der Hörer einen Laptop hat, den er zum Unterricht mitbringen kann.
Ein Link zur elektronischen Version des Fragebogens wurde in sozialen Netzwerken veröffentlicht, und sie baten einen Mitarbeiter, der weiterhin an der IRNITU-Magistratur studiert, ihn mit Klassenkameraden zu teilen. Es war immer noch möglich, sich mit der Universität auf die Veröffentlichung von Nachrichten auf ihrer Website und in sozialen Netzwerken zu einigen, aber es gab genügend Leute, die an dem Kurs teilnehmen wollten.
Die Umfrageergebnisse bestätigten unsere Annahmen. Nicht alle Schüler wussten, was das Backend und das Frontend waren, und nicht alle arbeiteten mit dem von uns verwendeten Technologie-Stack. Etwas gehört und sogar Projekte in C ++ und unter Linux gemacht, nur sehr wenige Leute haben wirklich Angular und TypeScript verwendet.
Zu Beginn des Unterrichts hatten 64 Schüler eingestellt, das war mehr als genug.
Für die Teilnehmer der Seminare organisierten sie einen Kanal und eine Gruppe im Messenger. Sie schrieben über Änderungen im Zeitplan, posteten Videos und Vortragspräsentationen, Hausaufgaben. Sie organisierten auch Diskussionen und beantworteten Fragen. Die Seminare sind nun vorbei und die Diskussionen in der Gruppe dauern an. In Zukunft wird es dadurch möglich sein, Kinder zu Hiknites und Hackathons einzuladen.
Vorlesungsinhalt
Wir haben verstanden: Für einen Kurs von acht Lektionen ist es unmöglich zu lehren, in C ++ zu programmieren oder Webanwendungen in Angular zu erstellen. Sie versuchten jedoch, den Entwicklungsprozess in einem modernen Produktunternehmen zu zeigen und gleichzeitig unseren Technologie-Stack vorzustellen.
Hier gibt es keine Möglichkeit, Theorie zu machen, es ist Übung erforderlich. Aus diesem Grund haben wir alle Lektionen mit einer Aufgabe kombiniert - um einen Dienst zum Aufzeichnen von Ereignissen zu erstellen. Wir planten gemeinsam mit den Studenten, die Anwendung Schritt für Schritt zu entwickeln und sie gleichzeitig in unseren Stack und seine Alternativen einzuführen.
Einführungsvortrag
In der ersten Lektion haben wir alle eingeladen, die den Fragebogen ausgefüllt haben. Zuerst sagten sie, dass vor langer Zeit nur Full Stack war, und jetzt gibt es in den Entwicklungsunternehmen eine Unterteilung in die Front- und Back-Entwicklung. Am Ende schlugen sie vor, die interessanteste Richtung zu wählen. 40% der Studenten haben sich für das Backend angemeldet, 30% für das Frontend und weitere 30% haben sich für beide Kurse entschieden. Aber es war schwierig für die Kinder, in alle Klassen zu gehen, und sie waren allmählich entschlossen.

Der Backend-Entwickler bei der Einführungsvorlesung scherzt über den Lernansatz: „Die Seminare werden wie Anweisungen für Anfänger sein: Schritt 1 - Kreise zeichnen, Schritt 2 - Eule zeichnen“
Inhalt der Backend-Kurse
Ein Teil der Backend-Klassen war der Programmierung und ein Teil dem gesamten Entwicklungsprozess gewidmet. Der erste Teil betraf die Kompilierung, make Make und Conan, Multithreading, Programmiermethoden und -muster sowie die Arbeit mit Datenbanken und http-Anfragen. Der zweite Teil befasste sich mit Testen, kontinuierlicher Integration und kontinuierlicher Bereitstellung, Gitflow, Teamwork und Refactoring.

Folie aus der Präsentation der Backend-Entwickler
Inhalt des Frontend-Kurses
Zuerst haben wir die Umgebung eingerichtet: Wir haben NVM unter Verwendung von Node.js und npm mit ihnen installiert - Angular CLI und ein Projekt auf Angular erstellt. Dann nahmen sie Module auf, lernten, grundlegende Anweisungen zu verwenden und Komponenten zu erstellen. Als Nächstes haben wir herausgefunden, wie Sie zwischen den Seiten navigieren und das Routing konfigurieren können. Wir haben gelernt, was Services sind und welche Merkmale ihre Arbeit im Rahmen einzelner Komponenten, Module und der gesamten Anwendung aufweist.
Wir haben uns mit der Liste der vorinstallierten Dienste zum Senden von http-Anfragen vertraut gemacht, die mit Routing arbeiten. Erfahren Sie, wie Sie Formulare erstellen und mit Ereignissen umgehen. Zum Testen haben wir auf Node.js einen Mock-Server erstellt. Zum Nachtisch lernten wir das Konzept der reaktiven Programmierung und Tools wie RxJS kennen.

Folie aus der Präsentation von Front-End-Entwicklern für Studenten
Die Werkzeuge
Seminare beinhalten das Üben nicht nur im Klassenzimmer, sondern auch außerhalb von ihnen. Daher war ein Service erforderlich, um Hausaufgaben zu erhalten und zu überprüfen. Frontenders entschieden sich für Google Classroom, Backender entschieden sich, ihr Bewertungssystem zu schreiben.

Unser Bewertungssystem. Sie können sofort sehen, was der Backender geschrieben hat :-)
In diesem System hat der von den Schülern geschriebene Code Autotests bestanden. Die Bewertung hing von den Testergebnissen ab. Ein zusätzlicher Punkt könnte für die Überprüfung und für die pünktlich gelieferte Arbeit erhalten werden. Die Gesamtbewertung beeinflusste den Platz in der Rangliste.
Durch die Bewertung wurde ein Element der Wettbewerbsfähigkeit in die Klassen eingeführt. Daher haben wir beschlossen, es zu verlassen und das Google-Klassenzimmer zu verlassen. Unser System ist zwar der Google-Lösung unterlegen, kann aber behoben werden: Für die nächsten Kurse werden wir es verfeinern.
Tipps
Wir haben uns gut auf die Seminare vorbereitet und nichts falsch berechnet, sind aber trotzdem auf ein paar Rechen getreten. Filed diese Erfahrung in den Rat, plötzlich jemand nützlich.
Wählen Sie Ihre Zeit und planen Sie Aktivitäten richtig
Wir haben uns auf die Universität verlassen, aber vergebens. Bereits am Ende des Unterrichts wurde klar, dass unser Kurs auf die ungünstigste Zeit des Schuljahres fiel - vor der Sitzung. Die Schüler kamen nach Paaren nach Hause, bereiteten sich auf Prüfungen vor und setzten sich dann für unsere Aufgaben. Manchmal kamen Entscheidungen um 4-5 Uhr morgens.
Es ist auch wichtig, die Tageszeit und die Häufigkeit des Unterrichts zu berücksichtigen. Wir fingen um 19:00 Uhr an. Wenn das Ehepaar eines Schülers früh endete, musste er das Haus verlassen und abends zurückkehren - das ist unpraktisch. Außerdem fanden die Kurse am Montag und Mittwoch oder am Donnerstag und Dienstag statt, und wenn es einen Tag zu Hause gab, mussten die Jungs hart arbeiten, um ihn pünktlich abzuschließen. Dann haben wir uns angepasst und an solchen Tagen weniger gefragt.
Bitten Sie Kollegen in der ersten Lektion um Hilfe
Anfangs waren nicht alle Studenten pünktlich zum Dozenten, es gab Probleme mit dem Einsatz der Umgebung, der Umgebung. In solchen Situationen hoben sie die Hände und unser Mitarbeiter kam, um es herauszufinden. In den letzten Klassen wurde keine Hilfe benötigt, da bereits alles eingerichtet war.
Nehmen Sie Workshops auf Video auf
Sie lösen also mehrere Probleme gleichzeitig. Geben Sie zunächst die Gelegenheit, diejenigen zu sehen, die die Lektion verpasst haben. Zweitens sollten Sie die interne Wissensdatenbank mit nützlichen Inhalten auffüllen, insbesondere für Anfänger. Drittens können Sie anhand der Aufzeichnung bewerten, wie der Mitarbeiter Informationen übermittelt und ob sie die Aufmerksamkeit des Publikums auf sich ziehen können. Eine solche Analyse hilft, das Oratorium des Sprechers zu entwickeln. IT-Unternehmen haben auf relevanten Konferenzen immer etwas mit Kollegen zu teilen, und auf Seminaren können Sie hervorragende Redner gewinnen.

Der Dozent sagt, die Kamera schreibt
Seien Sie bereit, Ihren Ansatz bei Bedarf zu ändern
Wir wollten ein kleines Stück Theorie lesen, programmieren und Hausaufgaben machen. Die Wahrnehmung des Materials war jedoch nicht so einfach und reibungslos, und wir haben die Herangehensweise an die Seminare geändert.
In der ersten Hälfte der Vorlesung begannen sie, die vorherigen Hausaufgaben im Detail zu untersuchen und im zweiten Teil die Theorie für die nächste zu lesen. Mit anderen Worten, sie gaben den Schülern eine Angelrute und suchten zu Hause selbst nach einem Teich, einem Köder und einem Fisch - sie gingen auf Details ein und verstanden die C ++ - Syntax. In der nächsten Vorlesung diskutierten sie gemeinsam, was passiert ist. Dieser Ansatz hat sich als produktiver erwiesen.
Wechseln Sie nicht oft den Lehrer
Zwei Mitarbeiter führten Seminare im Backend und sieben im Frontend durch. Für die Studenten gab es keinen großen Unterschied, aber die Front-End-Dozenten kamen zu dem Schluss, dass Sie für einen produktiveren Kontakt das Publikum kennen müssen, wie sie Informationen wahrnehmen usw., und wenn Sie zum ersten Mal sprechen, ist dies nicht der Fall. Daher ist es möglicherweise besser, die Lehrer nicht oft zu wechseln.
Stellen Sie in jeder Lektion Fragen.
Es ist unwahrscheinlich, dass die Schüler selbst sagen, wenn etwas schief geht. Sie haben Angst dumm auszusehen und "dumme" Fragen zu stellen, es ist ihnen peinlich, den Dozenten zu unterbrechen. Das ist verständlich, weil sie mehrere Jahre lang einen anderen Lernansatz gesehen haben. Wenn es also schwierig ist, wird niemand zugeben.
Um Verspannungen abzubauen, verwendeten wir eine Technik mit einer Lockente. Der Kollege eines Dozenten half nicht nur, sondern stellte während der Vorlesung auch Fragen und schlug Lösungen vor. Die Studenten sahen, dass Dozenten lebende Menschen sind, sie können gefragt und sogar mit ihnen gescherzt werden. Dies half, die Situation zu entschärfen. Die Hauptsache hier ist, ein Gleichgewicht zwischen Unterstützung und Unterbrechung zu finden.
Fragen Sie auch bei einer solchen „Lockente“ nach den Schwierigkeiten und finden Sie heraus, wie ausreichend die Ladung ist, wann und wie Sie die Hausaufgaben am besten zerlegen können.
Machen Sie am Ende ein informelles Treffen
Nachdem wir die endgültige Bewerbung bei der letzten Vorlesung erhalten hatten, beschlossen wir, sie mit Pizza zu markieren und uns einfach in einer informellen Umgebung zu unterhalten. Hat denjenigen Geschenke gemacht, die bis zum Ende durchgehalten haben, die Top 5 genannt, neue Mitarbeiter gefunden. Wir waren stolz auf uns und die Studenten, wir waren froh, dass endlich alles zu Ende war :-).

Wir geben Preise. Im Lieferumfang enthalten: T-Shirt, Tee, Notizbuch, Stift, Aufkleber
Zusammenfassung
16 Schüler erreichten das Ende des Unterrichts, 8 in jede Richtung. Laut Universitätsprofessoren ist dies eine Menge für Kurse mit einer solchen Komplexität. Wir haben die fünf besten oder fast angeheuerten genommen, weitere fünf werden im Sommer zum Üben kommen.
Unmittelbar nach dem Unterricht starteten sie einen Fragebogen, um Feedback zu sammeln.
Haben die Seminare dabei geholfen, die Richtung zu bestimmen?
- Ja, ich werde zur Backend-Entwicklung gehen - 50%.
- Ja, ich möchte definitiv ein Front-End-Entwickler sein - 25%.
- Nein, ich weiß immer noch nicht, was mich mehr interessiert - 25%.
Was hat sich als das wertvollste herausgestellt?
- Neues Wissen: "Das kann man an der Universität nicht bekommen", "Ein neuer Blick auf das dichte C ++", Technologietraining zur Steigerung der Produktivität - CI, Git, Conan.
- Professionalität und Engagement der Dozenten, der Wunsch, Wissen zu vermitteln.
- Klassenformat: Erklärung und Übung.
- Beispiele aus der realen Arbeit.
- Links zu Artikeln und Anleitungen.
- Coole kompilierte Vortragspräsentationen.
Die Hauptsache ist, dass wir festgestellt haben, dass nach dem Abschluss der Universität viele interessante und schwierige Arbeiten auf die Kinder warten. Sie erkannten, in welche Richtung sie sich bewegen wollen und kamen einer erfolgreichen Karriere in der IT ein Stück näher.
Jetzt wissen wir, wie man das geeignete Trainingsformat auswählt, was man vereinfacht oder sogar aus dem Programm ausschließt, wie viel Zeit für die Vorbereitung benötigt wird und andere wichtige Dinge. Wir verstehen unsere Zuhörer besser, Ängste und Zweifel bleiben zurück.
Vielleicht sind wir noch weit davon entfernt, eine Unternehmensuniversität zu gründen, obwohl wir bereits Mitarbeiter im Unternehmen schulen und mit Studenten arbeiten, aber wir haben den ersten Schritt in Richtung dieser ernsten Aufgabe getan. Und sehr bald, im April, werden wir wieder unterrichten - diesmal an der Irkutsk State University, mit der wir schon lange zusammenarbeiten. Wünsche uns viel Glück!