IT Education Academy
22 марта 2021 • 7 минут чтения

Стать айтишником в России: Высшее образование VS онлайн-образование

На постсоветском пространстве до сих пор считается, что высшее образование —  залог успешной карьеры. Без диплома ты никому не нужен: в старших классах школьникам твердят, что они должны обязательно поступить в университет. Но при этом к высшему образованию тоже немало вопросов. Во многих отраслях, особенно в IT, программы не поспевают за динамично меняющимися технологиями.

 

Нужен ли диплом о высшем образовании айтишнику? Постараемся разобраться. С одной стороны, институт дает фундаментальные знания высшей математики. Но нужны ли они всем разработчикам? Должен ли человек обязательно учиться в вузе, чтобы успешно работать в IT? Или он может получить образование на курсах, обучаясь онлайн?

 

Высшее образование или онлайн-курсы

 

Для примера рассмотрим карьеру Python-программиста. Этот язык многие специалисты называют в качестве базового. Его используют для создания интерфейсов и веб-приложений, в работе с базами данных и машинном обучении.

 

Для того чтобы получить, например, место стажера в IT-компании или претендовать на позицию Junior (младшего программиста), нужно знать язык программирования Python и разбираться в основах направления. Скажем, если вы устраиваетесь программировать базы данных, нужно иметь общее представление о том, какие они бывают. Понимать, какие задачи существуют в этой области и с помощью каких языков их решают.

 


 

Python в университете: классическое техническое образование

В вузах Python должны изучать на специальностях «Прикладная информатика», «Прикладная математика» и «Программная инженерия». Но не каждый учебный план включает этот язык. Программы в университетах меняются медленно и долго утверждаются. В них часто включены устаревшие технологии и языки.

 

Конечно, всем известна по крайней мере одна причина, по которой выпускники школ выбирают поступление в вуз, — отсрочка от службы в армии, но она не является темой статьи. Поэтому будем сравнивать только образовательные процессы.

 

Первый курс в университете посвящен введению в специальность и теоретическим дисциплинам. Собственно к программированию сразу приступить не удастся. Вы будете продолжать писать небольшие программы на C++, похожие на те, которые делали на уроках информатики в школе. Знания, нужные для того, чтобы зарабатывать программированием, вы получите только на третьем-четвертом курсе. Или придется учиться самостоятельно. В университеты идут за высшей математикой. И действительно, она понадобится тому, кто захочет заниматься машинным обучением и некоторым другими задачами. Но не факт, что нужно потратить на это четыре года. Проще добрать нужные знания, занимаясь с репетитором.

 


 

Онлайн-образование: подготовка программистов

Вы можете не ходить в вуз, не тратить время, а изучить Python на онлайн-курсах. Онлайн-образование учитывает нужды бизнеса и готовит специалистов, которые востребованы в компаниях. Обучение съест меньше времени и денег, если вы будете учиться платно. Последнее особенно актуально, если вы уже использовали возможность учиться бесплатно и должны платить деньги за получение новой профессии.

 

Можно сравнить создание программ с написанием журнальной статьи. Для репортажа нужен не филолог, который теоретически понимает, как написать яркий текст, а человек, который приедет на место, найдет сюжет и в срок отправить текст в редакцию.

 


 

Сравнение образования на базе вуза и онлайн

 

Критерии Высшее образование Онлайн

Срок обучения

4 года, если обучаться по программе бакалавриата

 

(2,5 — 3 – для программ второго высшего образования)

от 1,5 до 4 месяцев в зависимости от количества модулей

Интенсивность

от одного до трех семестров (в зависимости от вуза) изучения Python, два раза в неделю. Но большая часть этих занятий — лекции в большой аудитории

два-три раза в неделю и не менее двух часов самостоятельной работы студента, связь с ментором

Методики

куча теории/мало практики

больше практики

Какую специальность в итоге получишь?

инженер-программист

инженер-математик

разработчик Python

Что будет нужного?

Курс программирования на Python, защита курсового проекта с созданием собственного программного кода. Основы веб-программирования, баз данных и других областей применения языка.

Курс программирования на Python, защита проекта. Задачу ставят преподаватели-практики с опытом работы в крупных IT-компаниях.

Что будет ненужного?

Изучение предметов, не имеющих непосредственного отношения к программированию: русского языка, охраны труда, физкультуры, истории, экономики, а также устаревших языков программирования.

Вы сами выбираете дисциплины, поэтому ненужными они могут оказаться, только если вы разочаруетесь в выбранном направлении.

Стоимость обучения

Бесплатно, если поступить на бюджет. Или от 50 до 300 тысяч рублей в семестр в зависимости от города, вуза и формы обучения (для Москвы и Санкт-Петербурга).

От 14 до 25 тысяч рублей за один модуль. Вы можете выбрать начальный или продвинутый курс, в зависимости от вашего текущего уровня.

Общие плюсы и минусы

Вуз дает фундаментальные знания математики и хорошую теоретическую базу по программированию. При этом до 25% предметов не имеют непосредственного отношения к выбранной специальности. Преподаватели часто не понимают, как программирование решает бизнес-задачи. Студенты не представляют реальную работу в IT-компании.

Онлайн-образование — это возможность самому составить траекторию обучения. При поступлении можно проконсультироваться. Назовите цель обучения и вам помогут составить план. На курсах преподают практики, сотрудники компаний. Они делятся со студентами опытом и дают задания на основе реальных кейсов.

 

Минус — учёба предполагает «голое» программирование. За расширением профессионального кругозора вам придется следить самим.

 

Большинство компаний на постсоветском пространстве признают не только дипломы «вышки», но и сертификаты онлайн-курсов. Во-первых, потому что на курсах изучают актуальные версии языков программирования. Во-вторых, потому что курсы заботятся, чтобы выпускной проект мог стать началом портфолио студента. И работодатели могут оценить практические навыки, которые перевешивают «корочку».

 


 

Карьера программиста: реальный опыт

 

Мы взяли интервью у трех программистов-разработчиков, которые пришли в профессию разным путем. Они рассказали, где и какие языки программирования учили, как это повлияло на их карьеру. Дали советы тем, кто учится в вузе или хочет сменить профессию и стать разработчиком.

 

Марина, веб-разработчик, фрилансер, в прошлом журналист.

 

Вначале, лет 10 назад, я учила HTML и CSS, одно без другого не имело смысла, особенно в современном мире. И не то чтобы в прошлом веке был особый выбор, какой язык изучать. Сайты делали на HTML. Точка.

 

На карьеру это не повлияло никак. В современном мире можно не знать никакого языка программирования и делать сайты. Для этого придуманы конструкторы сайтов. Я начала работать с ними, и уже потом решила углубиться в программирование. Но, конечно, после изучения этих языков я почувствовала большую уверенность. Мне стало проще искать клиентов, имея в запасе знание языка программирования.

 

После того как возможности конструктора сайтов перестали меня удовлетворять, я пошла учиться дальше. Сдула пыль со своих знаний HTML, сейчас изучаю Python на онлайн-курсах с акцентом для разработчиков, потому что хочу использовать современные возможности полнее. Ну и быть конкурентоспособной на рынке труда.

 

Новичкам могу посоветовать изучать не только, и не столько языки программирования, а скорее пойти на курсы веб-дизайна. Делать сайты сейчас можно не будучи программистом, но важно знать, как устроен сайт, из каких частей он состоит, без чего нельзя обойтись, что можно выкинуть, и как вообще должен выглядеть сайт. Но если вы не хотите сами делать внешнюю сторону сайта, найдите себе в партнеры дизайнера. Проще искать заказчиков на проекты «под ключ», чем на «только запрограммирую».

 

Еще новичкам хочу посоветовать сразу быть готовыми, что треть рабочего времени разработчик в любой области IT будет тратить на обучение. IT — самая динамично развивающаяся область и, чтобы оставаться «в обойме», приходится все время бежать вперед. Так что если вам неинтересно все время развиваться, лучше поискать другую профессию.

 


 

Алексей, инженер-разработчик немецкой софтверной компании

 

Окончил физический факультет. Но 90-е годы были не самым подходящим временем для науки в целом, и для физики, в частности. Поэтому еще студентом начал изучать языки программирования С++, C, Python, Lua, Java. В основном самостоятельно.

 

Увлекся С++  — изучал его по книгам, на практике, даже однажды писал Бьерну Страуструпу, автору языка C++. Задал вопросы и получил на них ответы — дельные и доброжелательные. Повезло найти работу. Помогло знание английского. Тогда его хорошо знали немногие, а иностранные компании уже пришли на российский рынок.  Несколько лет разрабатывал приложения для  операционной системы — работал в российско-немецкой компании, потом работал в прикладной сфере, в Лаборатории Касперского.

 

Язык — живой организм, который требует постоянного изучения, вовлечения, иначе быстро отстанешь от трендов и попадешь в арьергард. Помогает быть в форме как практическая работа, так и обучение. Для этого есть прекрасные онлайн-платформы и курсы. Получать второе образование смысла не видел.

 

Из важного — нужно читать и смотреть материалы по языку на английском языке, на русском все выходит с опозданием. Главные источники информации — практическое общение с коллегами, экспертами и статьи, конференции на профессиональных ресурсах.

 


 

Владимир, сотрудник российской компании, головной офис которой расположен в Чехии. Программист с опытом разработок на Java и Kotlin.

 

Pascal и С изучал в школе, Java — самостоятельно во время учебы в университете, Коtlin тоже самостоятельно, когда потребовалось на работe.

 

Java в университете я начал изучать не для работы, а для участия в соревнованиях по программированию. Был выбор между Java и С++, я выбрал Java как язык более широкого назначения. В остальном выбора как такового не было. Я считаю, что изучать общие принципы программирования важнее, чем языки.

 

Не могу сказать, что знание языков программирования повлияло на мою карьеру. Я устроился на работу стажером, для которого больших знаний не требуется, и уже больше 10 лет работаю в одной компании. Когда мне потребовалось программировать на Kotlin, я освоил его в процессе применения. Думаю, то же самое знание языков можно было получить на курсах, но я не жалею о высшем образовании. Теоретическая база помогает мне искать решения.

 

Вопрос о совете начинающим гораздо более сложный, чем предыдущие. Двумя предложениями не отделаешься. Люди начинают программировать в разном возрасте и с различным опытом. Обычно под «начинающими» имеют в виду уже взрослых людей, которые хотят сменить род деятельности. Таким людям я, в первую очередь, советую набраться терпения. Считаю, что для того, чтобы устроиться на работу программистом, нужно около двух лет упорного труда. Кроме того, я искренне верю, что работа должна приносить людям удовольствие. Поэтому лучше всего начать с того, чтобы найти ту область, которая действительно нравится. Тогда и обучение будет идти легче, и время, потраченное на обучение, будет в радость.

 


 

Программирование — упорный труд

Как вы видите, опытные разработчики говорят не столько о том, где учиться, сколько о том, что придется приложить много усилий. Независимо от того, где вы получите базовые навыки, придется потратить еще около двух лет на их развитие и совершенствование. Только после этого вы обретете уверенность в себе как в разработчике. Но при этом первую работу можно получить, обладая минимальными знаниями. Так что вопрос о необходимости высшего образования остается открытым. Сегодня это скорее один из многих вариантов получения профессии.