📜 ⬆️ ⬇️

Specialty Software Engineering at Academic University. Student feedback

The topic of higher education is very popular in Habré. There are many articles about how badly we have, and how well abroad. Today I would like to tell you how I was looking for a higher education in Russia. And found.

In 2006, I entered SPSU ITMO at the Department of Information Systems. Not CT, of course, but to me, my choice then seemed quite reasonable.
For 4 years in ITMO, I have encountered almost all the problems of national education, for which he is so fond of scolding him. This is both incompetent teachers and frankly stupid students who are held for money, slovenliness and pofigism.

But then came the year of passing the bachelor's degree. All this "study" of me specifically podzadolbala and further my future, I saw this:
Enroll in the magistracy and get a job, and then sometimes go to the institute to put down the marks in the record book. Many of my classmates did. But, thank Habra, I saw a post about Academic University and decided to take a chance.

The first thing that struck me in the AU is the atmosphere. Here, teachers treat students not only as students, but also as people who may have their own affairs, problems and opinions. The students themselves take a very active part in the training - from banal participation in lectures - to changing the program right along the course (for example, we asked once to shorten the course program a bit to reduce the load). The management is almost always ready to meet students - whether it is the extension of the session or the transfer of a pair, because the students are not comfortable.
')
Awesome teachers. All professionals in their field and just great people. It is quite young. 40 years is the maximum. We directly taught: the head of the developers department at Yandex, the coordinator of the CS club, the developer of VirtualBox. There are winners and participants in international programming and mathematics competitions.

In AU, there are no “extra” items. No philosophy, cultural studies and history. Only programming (and everything connected with it), mathematics and English. There are a lot of subjects, but there are those about which I would like to write separately.

Algorithms and data structures

Sorting, algorithms on graphs, search for substrings, estimates - without this it is difficult to imagine a good programmer. It is surprising that almost no one had such a course before.

C ++

We have a tradition in AU. Every year the fifth year tries to pass the C ++ exam ahead of time. For the second year in a row, the score was 11–0 in favor of the teacher.
When I myself went to such an exam, I thought that I knew more or less the advantages and would not tell me anything new at lectures. In general, it is good that I did not pass. I learned a lot of new and interesting.

Database

At the beginning of the semester, we chose a certain subject area. During the remaining time, a database was made for it: tables were added, queries were written. In the end, even screwed sites to these databases.
I really liked the organization of the course. Here you and the exchange of subject areas during the semester, and assignments to assess the performance of various solutions.

Special course on high load services

Git, Java, sleepless nights, teamwork, responsibility - we were introduced to all of this on this wonderful, but not mandatory course. I am sure that those who passed it have learned a lot.

Virtual machines

In addition to all virtualization, we were engaged in writing our own compiler / interpreter. First, in the intermediate code, and then some kind of JIT-compilation done.
Have you ever heard the opinion that every programmer should write his own compiler? So here. Each programmer is simply obliged to write his own compiler! This is a great exercise for putting everything in your head into place. And I think that such a subject is simply mandatory for all programmer specialties.

Algebraic structures, combinatorics and graph theory, software design, machine learning, theory of formal languages, operating systems, functional programming, network technologies, parallel programming - this is a partial list of courses. As you can see, a very solid set of items. For those who want to learn - that's it.

In general, it is quite difficult to learn. Very heavy load. Many of my classmates, who came from different parts of the country, complained: “I have been in St. Petersburg for half a year, and have not seen a city like that. Continuous study.

And at the beginning of each semester, representatives of various St. Petersburg companies come to us and talk about their projects for students. After that, everyone chooses a project for their liking and writes it along with the selected manager for a semester or two. The output often turns out very interesting things. It happens that students with their works go to conferences and write articles.

I think it would be unfair not to mention the shortcomings. After all, they are.
For all the time of training, we got a couple of not very good teachers. Nobody doubted their professionalism, but they clearly could not read the lectures.

Sometimes we have completely new courses with completely new teachers. It is clear that reading the course from the first time is good - a very difficult task. Therefore, the development of such subjects requires time and student participation.

But it's not so scary. At the end of each semester, the department management collects student feedback on the past semester, and the situation is improving all the time. Bad teachers leave us. Problem courses file file.

There is also a problem of a very different level of students. We have gathered people from Petersburg, Lipetsk, Voronezh, Novosibirsk and Surgut. Everyone had very different programs. But you need to teach everyone the same way. If you already had one of the subjects - it is quite possible to pass it ahead of time or even replace it with another - for example, take a course from the CS-club.

Career prospects

This question probably worries any applicant. I will not pull the cat by the tail, but just tell you who and where of our students are currently working.
So, from 14 people in the group:
4 in JetBrains, 1 in Yandex, 2 in the laboratory of algorithmic biology, 2 in Parallels, a couple more people work with comrades from EMC. And one teaches functional programming in our AU.
Almost all of this is a continuation of summer practices in the respective companies. Despite the fact that we are still learning, we get quite a tangible salary.

Receipt

Entry requirements are quite difficult to formulate. All applicants must pass an interview. In fact, it is important that a person wants to learn and understand why he needs all this. In this case, the incoming knowledge, should allow him to solve problems from this list

We no longer have steam. But the diploma is still to come. It is very sad that everything ends so quickly.
I would not refuse to learn anything else here.

Source: https://habr.com/ru/post/139842/


All Articles