You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

It is no secret for HRs in IT that if your city is not a millionaire, then it is problematic to find a programmer in it, and a person who has the necessary technology stack and experience is even more difficult.

In Irkutsk, the IT world is small. Most city developers are aware of the existence of ISPsystem, and many of them are already with us. Applicants often come to the position of a junior, but mostly they are yesterday's university graduates, who still need to be trained and trimmed.

And we want ready-made students who have done some C++ programming, are familiar with Angular and have seen Linux. So, we need to go and teach them ourselves: introduce them to the company and give them the material they need to work with us. So the idea was born to organize courses on back-end and front-end development. Last winter, we implemented it, and in this article we will tell you how it was.

Prepare

At the beginning, we gathered leading developers, discussed with them the tasks, duration and format of the classes. Most of all, we need back-end and front-end programmers, so we decided to hold seminars in these specialties. Since the experience is the first and how much effort it will take is unknown, the time was limited to one month (eight classes in each direction).

The material for the back-end seminars was prepared by three people, and two read, on the front-end the topics were divided among themselves by seven employees.

It didn’t take long to look for teachers, to persuade, too. A bonus was provided for participation, but it was not decisive. We have attracted middle and higher level employees, and they are interested in trying themselves in a new role, developing communication skills and knowledge transfer. They spent over 300 hours preparing.

It was decided to hold the first seminars for the guys from the cyber faculty of IRNITU. A convenient co-working space had just appeared there, and Career Day was also planned - a meeting of students with potential employers, where we regularly go. This time, as usual, they talked about themselves and vacancies, and also invited them to the course.

Those wishing to participate were given a questionnaire to understand their interests, level of training and knowledge of technology, collect contacts for invitations to seminars, and find out if the listener has a laptop that he can bring to classes.

A link to the electronic version of the questionnaire was posted on social networks, and an employee who continues to study at the IRNITU master's program was also asked to share it with classmates. It was also possible to agree with the university to publish the news on their website and in social networks, but there were already enough people who wanted to attend the course.

The survey results confirmed our assumptions. Not all students knew what backend and frontend were, and not all of them worked with the technology stack that we use. They heard something and even made projects in C ++ and under Linux, very few people really used Angular and TypeScript.

By the beginning of classes, 64 students had accumulated, this was more than enough.

A channel and a group in the messenger were organized for the participants of the seminars. They wrote about changes in the schedule, posted videos and presentations of lectures, homework. There were also discussions and questions answered. Now the seminars are over, and the discussions in the group continue. In the future, it will be possible to invite guys to geekknights and hackathons through it.

Lecture content

We understood that it was impossible to teach programming in C ++ or create web applications in Angular in a course of eight lessons. But we tried to show the development process in a modern product company and at the same time introduce our technology stack.

Theory is not enough, practice is needed. Therefore, we combined all the classes with one task - to create a service for registering events. We planned to develop the application together with the students step by step, while introducing them to our stack and its alternatives.

Introductory lecture

We invited everyone who filled out the questionnaires to the first lesson. At first, they said that only full-stack was a long time ago, and now development companies have a division into front and back development. At the end, they offered to choose the most interesting direction. 40% of students signed up for the backend, 30% for the frontend, and another 30% decided to attend both courses. But it was difficult for the guys to go to all the classes, and they were gradually determined.

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

The backend developer at the introductory lecture jokes about the approach to learning: “The workshops will be like instructions for budding artists: step 1 - draw circles, step 2 - finish drawing the owl "
 

Backend course content

Part of the backend lessons was devoted to programming, part to the development process as a whole. The first part covered compilation, make СMake and Conan, multithreading, programming methods and patterns, working with databases and http requests. In the second part, we talked about testing, Continuous Integration and Continuous Delivery, Gitflow, teamwork and refactoring.

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

Slide from the presentation of the back-end developers
 

Frontend course content

First, we set up the environment: we installed NVM, using it Node.js and npm, using them Angular CLI and creating a project on Angular. Then we took up modules, learned how to use basic directives and create components. Next, we figured out how to navigate between pages and configure routing. We learned what services are and what are the features of their work within individual components, modules and the whole application.

We got acquainted with the list of pre-installed services for sending http requests, working with routing. Learned how to create forms, handle events. For testing, we created a mock server on Node.js. For dessert, we learned about the concept of reactive programming and tools such as RxJS.

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

Slide from the presentation of front-end developers for students
 

Tools

Seminars imply practice not only in the classroom, but also outside of them, so a service was needed to receive and check homework. Frontenders chose Google Classroom, backenders decided to write their own rating system.
You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

Our rating system. You can immediately see what the backender wrote 🙂

In this system, the code written by students passed autotests. The assessment depended on the test results. An additional point could be obtained for the review and for the work handed in on time. The overall score influenced the place in the ranking.

Rating brought an element of competition to the classes, so we decided to keep it and abandon Google Classroom. So far, our system is inferior to the Google solution in terms of convenience, but this can be fixed: we will finalize it for the next courses.

Tips

We prepared well for the seminars and almost did not miscalculate in anything, but we still stepped on a few rakes. We have written this experience in tips, suddenly someone will come in handy.

Choose the time and distribute classes correctly

We hoped for the university, but in vain. Already at the end of the classes, it turned out that our course fell on the most inconvenient time of the academic year - before the session. Students came home after class, prepared for exams, and then sat down for our assignments. Sometimes decisions came at 4-5 o'clock.

It is also important to consider the time of day and the frequency of classes. We started at 19:00, so if a student's classes ended early, he had to go home, and return in the evening - this is inconvenient. In addition, classes were held on Monday and Wednesday or Thursday and Tuesday, and when there was one day for homework, the guys had to work hard to complete it on time. Then we adjusted and on such days we asked less.

Take colleagues to help you for the first lessons

At first, not all students kept up with the lecturer, there were problems with the deployment of the environment, setting up. In such situations, they raised their hand, and our employee came up to help sort things out. There was no need for help in the last classes, because everything was already set up.

Record seminars on video

So you solve several problems at once. First, give the opportunity to watch those who missed the class. Secondly, replenish the internal knowledge base with useful content, especially for beginners. Thirdly, looking at the recording, you can evaluate how the employee conveys information and whether he can keep the attention of the audience. Such an analysis helps to develop the oratorical skills of the speaker. IT companies always have something to share with their colleagues at specialized conferences, and seminars can make excellent speakers.

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students

The lecturer speaks, the camera writes
 

Be prepared to change your approach if needed.

We were going to read a small piece of theory, do some programming and give homework. But the perception of the material turned out to be not so simple and smooth, and we changed the approach to the seminars.

In the first half of the lecture, they began to consider in detail the previous homework, and in the second part to read the theory for the next one. In other words, they gave students a fishing rod, and at home they were already looking for a pond, bait and fishing - they delved into the details and dealt with the syntax of C ++. At the next lecture, they discussed together what happened. This approach turned out to be more productive.

Don't change teachers often

We had two employees for the backend seminars, and seven for the frontend. For students, there was not much difference, but front-end lecturers came to the conclusion that for more productive contact, you need to know the audience, how it perceives information, etc., and when you speak for the first time, this knowledge is not there. Therefore, it may be better not to change teachers frequently.

Ask questions in every lesson

The students themselves are unlikely to tell if something goes wrong. They are afraid to look stupid and ask "stupid" questions, they are embarrassed to interrupt the lecturer. This is understandable, because for several years they have seen a different approach to learning. So if it's difficult, no one will admit it.

To take the pressure off, we used the decoy trick. The lecturer's colleague not only helped, but also asked questions during the lecture, suggested solutions. The students saw that the lecturers were real people, they could be asked questions and even joked with them. It helped to defuse the situation. The main thing here is to strike a balance between support and interruption.

Well, even with such a “dummy duck”, still ask about the difficulties, find out how adequate the load is, when and how best to analyze homework.

Arrange an informal meeting at the end

Having received the final application at the last lecture, we decided to celebrate it with pizza and just chat in an informal setting. We gave gifts to those who survived to the end, named the top five, found new employees. We were proud of ourselves and the students, well, glad that everything was finally over :-).

You need a ready-made jun - teach it yourself, or How we launched a course of seminars for students
We give prizes. Inside the package: T-shirt, tea, notepad, pen, stickers
 

Results

16 students reached the end of the classes, 8 in each direction. According to university teachers, this is a lot for courses of such complexity. We have hired or almost hired five of the best, five more will come to practice in the summer.

Immediately after class, a questionnaire was launched to collect feedback.

Did the seminars help you choose your direction?

  • Yes, I will go into back-end development - 50%.
  • Yes, I definitely want to be a front-end developer - 25%.
  • No, I still don't know what I'm more interested in - 25%.

What turned out to be the most valuable?

  • New knowledge: “you can’t get this at the university”, “a fresh look at the dense C ++”, learning technologies to increase productivity - CI, Git, Conan.
  • Professionalism and dedication of lecturers, the desire to transfer knowledge.
  • Class format: explanation and practice.
  • Examples from real work.
  • Links to articles and instructions.
  • Well-crafted lecture presentations.

The main thing is that we managed to tell that after graduation from the university, the guys will have a lot of interesting and difficult work. They understood in which direction they want to move and became a little closer to a successful career in IT.

Now we know how to choose the appropriate training format, what to simplify or exclude from the program, how much time it takes to prepare and other important things. We better understand our listeners, fears and doubts are left behind.

Perhaps we are still far from creating a corporate university, although we are already training employees within the company and working with students, but we have taken the first step towards this serious task. And very soon, in April, we will go to teach again - this time at Irkutsk State University, with which we have been cooperating for a long time. Wish us luck!

Source: habr.com

Add a comment