⬆️ ⬇️

RE: University for IT specialist: a view from the inside

Hello, dear readers Habr!

This topic is the answer to a recent article about getting an IT specialty in a university.



My first reaction to this post was a commentary in which I tried to clarify the geographical location of the Higher Education Institutions in question. What is surprising, in addition to the response to my comment on Habré , several people answered me on Facebook (they have no invites yet), and comrade quicksdk asked me to tell in the same vein about the University of British Columbia .



It so happened that I study at a Canadian university in a computer specialty and have been working as a developer (freelancer) for about a year now. Due to the small work experience and the fact that I have completed only one year of study at the undergraduate degree, I do not position my opinion as the only correct one. However, someone this article may be interesting.

')

Let me quote a respected mattheus :

Next will be a lot of letters and not a single picture. Who else is interested - I ask under the cat.


When should I go to study at IT-nickname?



You do not need everyone to break into IT, it is better to find a case that is really your joy, and do not follow the fashion or pressure of parents.


Absolutely agree with this statement. Approximately 70% of people who study as a programmer at UBC (and with whom I spoke), in the end, just want to find a job in their field. That is, during their studies at the university, the only thing they created was the educational projects necessary to complete the course; and nothing more. You can try yourself: for this, UBC has a special course (CPSC 110) that any student can take as an elective. But if you do not have a craving for programming, and it did not appear after this course, your vocation is different. Believe me, Computer Science is not so simple - therefore, almost all computer courses in UBC give 4 credits, and not 3, as usual.



What does the institute teach?



From my experience, the knowledge gained at the institute is only 3-5% of what you need to know, and depending on the specialization, 70-95% of what you did at the institute may not be useful or only indirectly useful.


I honestly don’t know how things are going in Russia, but in the UBC you could learn Java and Python at a fairly good level in the first year to start freelancing. The basics of OOP and functional programming, interesting approaches to structures, many subtleties of working with IDE - all this I learned at the university.



It is worth noting that my main profile is Objective C, not Java; and I learned Objective C myself. However, thanks to what I learned at the university bench, I began to actively use the possibilities of refactoring, my thinking fell into place, I began to write code that other developers can read after me. In the first year of study at UBC, I have to take a couple of unnecessary items, but they certainly greatly expanded my horizons. For the second year, I almost chose my courses, and basically it was Computer Science.



On the other hand, while working as a freelancer, I almost never used Java, but the various programming patterns that I learned at the university made it much easier for me to work in Objective C.



How deep is the knowledge gained in the university?



University is a continuation of the school. There is no leap in the quality and depth of the material presented. As the school studies unpretentious fundamentals of the main directions of knowledge, so in the university you will be told the same simple basics, maybe a little more focused in the context of your specialty.


In the first year - yes, there is no jump: everything is superficial. However, according to alumni, 2-4 years in UBC give much deeper knowledge (at least, a deep study of C).



Here the format of training affects: in a short time for a wide and motley audience, well, how can it fail to go deep into some direction? For 2 hours of laboratory work, you can’t write a complex program or a finished product as part of a course project.


Again, I do not know how things are going in Russia; but in the UBC on Computer Science, the faculty kills an insane amount of time for training. In addition to working on projects (25+ hours), there are also Co-op programs. And this is an immersion into the work environment for the full 3 semesters (full-time work at EA, Microsoft, Google, Facebook, etc.)



If the chosen specialty is not your hobby and you are not doing anything at home “for yourself”, then you will end up with a zero specialist at the exit from the institute.


Here I agree with everything. From the song you can not throw out the words.



Most teachers are bad specialists.



Yes exactly. <...> Honestly answer yourself the question: why do those who teach you work at universities, state employees, on their small salaries? Because they can not qualify for qualified positions in the IT industry, they lack neither experience nor qualifications.


No, it is not. Most professors at UBC CS work as teachers in their spare time from their research. A university is first and foremost a research base. As far as I know, a lot of money is allocated for AI at our university and many professors are working in this direction. I personally spoke with a man on campus who was one of the first to create robots that play football autonomously.



The older generation of teachers is usually those who once worked with the union in related areas and with its collapse at least somehow got close to the specialty. They “knew” something (when they worked) and this knowledge is as ancient as the times when the union collapsed. It is good if some of them were interested in understanding something new, but most of them simply read a thick book on their subject that they retell to you.


In the UBC just like a teacher can not get. All teachers developed something worthwhile. For example, my teacher on CPSC 121 was one of the developers of the Magic Box - a great sandbox for learning the basics of working with microcontrollers; and one of the teachers of CPSC 110 was one of the creators of the Racket language.



Any question beyond the stated material - enters into a stupor, any remark - annoying.


By no means. Any task for professors is interesting, especially if it is related to their profile. More than once I came to my CPSC 210 teacher at office hours and solved some difficult tasks related to freelancing with him.



The teacher has no interest in your knowledge.



If you are among those 70% who do not like programming, then of course there will be no interest. Either I am a good conversationalist, or the professors are so good; but always, when I had a problem - I was given knowledge with interest. Sometimes the teachers went so deep into some area of ​​their subject that I was late for the following couples: it was so nice for me to listen to them.



No need to look "at all."



For talented students this is an extremely bad situation. And because the need to focus on the "average" student reduces the depth and breadth of the material presented by teachers, and because it creates an imaginary impression of their own successes against the background of indiscriminate sloppiness of the main mass.


If you need more in-depth knowledge, you can take Honor courses in Computer Science at UBC. The groups are smaller, almost all students are gifted, the depth of knowledge is many times higher than the usual courses, and the focus is just on "smart" students.



No need to compare yourself with fellow students. The best criterion of your knowledge and success will be your made projects, your success at work. Relate yourself not to the "gray mass", but to the market. Go to the website of freelancing - read what works you are able to do from what is offered and what is not and even abbreviations unfamiliar. Very sobering, even excellent students.


Good advice, regardless of the university, and even specialty.



Evaluation is not important.



When applying for a job in IT, in most cases your diploma with its marks will not be watched by anyone. <...> In normal firms, you will be given a test task, will have a technical interview with a specialized specialist, possibly with your future boss.


All right However, for obtaining grants and funding in UBC, estimates of 90% + are usually needed. Nobody asked me about the diploma on elance.com. For the Co-op program you need a certain minimum average grade, but if you liked the employer at the interview - you will still be taken.



Need to work.



If you remember that most of the teachers themselves do not work in IT, then the same majority devotes equally much time and attention on pairs and what is really needed and you will use it every day and what is of purely academic interest and you never will come in handy.


There is nothing to say, I learned only one year, and of all the courses only one was directed specifically at corporate application development - CPSC 210. The rest is theory and basic knowledge. Again, this is just the first year. The next is better.



And about the fact that you need to work is a fact. Look at the giants of the industry who have not graduated from universities (you know their names). They began to develop their business at the university. And for those who say that you should not cite these people as an example, I can only smile back. But this is purely personal, you may not smile.



Simply attend.



The complexity of the presented material and the requirements for students are already so low that for successful learning even the most incapable students can simply be present at the institute.


It's hard to get into UBC, it's easy to fly out of UBC. Attendance at lectures is 10% of the assessment, maximum. The rest is regular exams, homework, projects and assignments. UBC just keeps in a constant tone, there is no possibility "just to be present".



It creates an illusory impression that you can not go and everything will be, because there is an unofficial ban on the expulsion of contract students who "feed" universities.


In the UBC, everyone pays (except for the gifted). There are no privileges. If one “breadwinner” is thrown out, another will take his place: this university has thousands more willing to enroll.



Factual knowledge is not so important.



Since the educational system does not change, try to change the attitude to the knowledge gained. No need to accumulate facts, it will lead to debris in my head. Try to understand what you know and link everything into a complete picture of the subject area.


Here the system is a little different from the Russian one: you just need to understand, not to memorize. All exams are allowed to bring an A4 sheet with all the information you need. Yes, and it is understanding that is tested, not simple knowledge. But this is in IT, how things are with other professions - I do not know.



Knowledge of the specialty is not the most important.



What else? English. <...> Organizational skills, ability to solve problems (what is called the talent of an entrepreneur).


Well, without English there is no way to go, but I think everyone agrees with the point about organizational skills. They are needed everywhere.



Education in the university is not all.



In your university, even if it is metropolitan and there are the best teachers in the country, a limited circle of people from whom you can study, a limited set of subjects, you are limited to the program of your ministry of education and the level of audience around you.


Despite the vast number of different courses in the UBC itself (perhaps more than in the Russian capital's university), there may not be enough knowledge in the specialty. I didn't learn anything about Objective C at university. I studied everything myself through tutorials, video lessons, video lectures. I was particularly helped by the Stanford lectures on iOS. I fully agree with the author of the original topic: you need to study outside the university.



Personal comments



I honestly tried in every way to shield Russian universities. I honestly tried to somehow argue the absence of the same MSU or MGIMO in the top 300 universities in the world. But the original article shattered all my hopes.



Is it really in Russia with the formation that everything is really so pitiable? I can not believe this. Unfortunately, many students in Russia do not even think about studying abroad. But there is an insane amount of various training programs (not Russian), which they simply do not know about.



The article is purely my opinion and my observations.

In case you found out any inaccuracies or typographical errors in my article, you are welcome to me in Habrakabinet .

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



All Articles