В начале этого года крупные ИТ-компании очень жарко обсуждали проблему нехватки кадров или, так называемый, кадровый кризис. Кто-то предлагал «надавить» на доступные рычаги в правительстве и увеличить набор студентов в профильных вузах. Другие предлагали скинуться и открыть собственные центры подготовки. Были и сторонники жестких мер и запретов на выезд «мозгов» из России. Это обсуждение не первое и далеко не последнее. Что происходит с ИТ-образованием в России и что делать дальше, Digital Report Russia рассказал руководитель проектов в компании HFLabs Константин Степанов.
Почему ИТ-образование в России не покрывает запросы компаний-разработчиков? Откуда взялся кадровый кризис?
Если говорить про обучение работе с конкретными инструментами, то вклад несущественный. Половина знаний, которым вас научат на первом курсе, к четвертому курсу точно устареет. Поэтому вузы отстают от потребностей ИТ-индустрии, так как эта отрасль очень быстро развивается. Поэтому вузы отстают от потребностей ИТ-индустрии, так как эта отрасль очень быстро развивается.
При этом, есть вещи, которые нужны всегда и не теряют актуальности: их отсутствие потом может стать проблемой для профессионального развития. Например, если человек плохо знает высшую математику, то он не сможет читать современные статьи по нейронным сетям, deep learning, потому что большая часть материалов, даже учебных, по этим темам предполагает хорошее понимание высшей математики. В то же время, большая часть реальной работы ИТ-специалистов знания математики не требует, а требует как раз владения инструментами.
На данный момент мало людей доходит до финиша, потому что их уже на старте немного: в вуз уже должны поступать люди, которые понимают, что им нужно и для чего. Отдельный большой потенциал для роста – это привлечение к ИТ девочек. Сейчас их в этой профессии не так много, как могло бы быть. Кажется, до сих пор встречается стереотип, что разработчик – это такой суровый дядя с бородой и в вязаном свитере.
Какие навыки важны для ИТ-специалиста?
Важно понимать, что ИТ-специалисты – это, прежде всего, инженеры, поэтому есть общие навыки, которыми необходимо владеть, вне зависимости от специфики своей работы. Например, как локализовать неполадку, какими тестами проверять работоспособность, как планировать эксперименты в тех случаях, когда готовых инструкций нет — этому точно нужно учить и давать большое количество разнородной практики
Также любому ИТ-специалисту нужен английский: хотя бы на уровне чтения и письма. Всё-таки большая часть полезных и необходимых материалов есть только на этом языке поэтому не зная его, человек сразу ограничивает свой доступ к знаниям, снижает темп развития и даже полностью закрывает для себя некоторые индустрии.
Почему ИТ-компании вынуждены доучивать выпускников вузов, создавая и финансируя собственные учебные программы?
Обучение от компаний никуда не денется, потому что мир меняется, и технологии меняются. Ожидать от вузов подготовки специалистов, которые сходу вольются в рабочие процессы и станут конкурентными специалистами — наивно: такое бывает редко. Я думаю, это актуально для любой индустрии.
Вуз, в целом, может дать своим студентам только общую эрудицию и заинтересовать предметом: дать возможность попробовать разные виды программирования — мобильное, нейронные сети, 3D-графику, функциональное и нагрузочное тестирования и т.д. Это важно, чтобы человек ко второму-третьему курсу уже понимал, что его «цепляет» и каким образом он хочет развиваться дальше.
Насколько в России популярны ИТ-специальности?
Сами по себе ИТ-специальности популярны, но есть две проблемы:
- Количество выпускаемых специалистов требуется в 10, а то и 20 раз больше.
- Они не покрывают полный спектр задач ИТ. ИТ – это не только разработчики, это аналитики, тестировщики, администраторы баз данных, инженеры по сопровождению.
Здесь ещё нужно учитывать ту тенденцию, что всё постепенно превращается в ИТ: сейчас практически в каждом бизнесе роль технологий становится всё выше.
Пока этот тренд только возрастает, поэтому нужно как можно больше людей вовлекать в обучение и в индустрию на ранних этапах.
Делать это в институтах, скорее всего, уже поздно: это нужно делать в школах. Вполне реально вовлечь ребёнка в программирование лет в 10, тогда лет в 15 он уже научится много чего делать, у него будет осознанное желание и спрос на получение знаний.
Он и вуз сам себе выберет, и требования к вузу предъявит, и курсов наберёт, и самообразованием будет заниматься: сейчас основная проблема – всё-таки вовлечение.
На данный момент мало людей доходит до финиша, потому что их уже на старте немного: в ВУЗ уже должны поступать люди, которые понимают, что им нужно и для чего. Отдельный большой потенциал для роста – это привлечение к ИТ девочек. Сейчас их в этой профессии не так много, как могло бы быть. Кажется, до сих пор встречается стереотип, что разработчик – это такой суровый дядя с бородой и в вязаном свитере.
Растеряла ли Россия советскую школу образования? Или это был миф, который к высоким технологиям не относится?
В классическом советском образовании практика следует за теорией. На современных детей такой формат не действует: им скорее всего станет очень скучно через 15 минут лекции. Им лучше сразу пробовать что-то своими руками и только потом рассказывать теоретические основы. Когда они уже столкнулись с тем, что непонимание принципов мешает им делать то, что они хотят, то на теорию у них появляется внутренний спрос.
На самом деле, многие современные преподаватели именно так и действуют, но это уже не относится к классической советской школе. Она была хороша для поколения, которое росло на книжках: сейчас на книжках уже никто не растёт, все учатся с Интернетом в руках, мышление новых поколений стало более практичным и клиповым.
Нужно ли привязывать выпускников к России законодательно? Есть ли шанс пережить кадровый кризис привязав людей естественным способом через зарплаты и льготы?
Если говорить о законодательном ограничении для выпускников по работе за рубежом, то так точно не стоит делать, потому что свобода – это всё-таки большая ценность. Конечно, с точки зрения бытовой гражданской логики, мы, как налогоплательщики, финансируем образование студентов для того, что человек потом создавал дополнительную ценность для нашей страны. Но каких-то разумных и понятных практик, в том числе других стран, я не знаю.
ИТ-специалистов практически всех профилей остро не хватает, при этом, в Москве и в крупных городах их зарплаты в разы превышают средние показатели по стране. В то же время в России 20 млн человек живёт за чертой бедности: такой дисбаланс кажется неправильным.
С одной стороны, зарплаты ИТ-специалистов «улетают в космос», профессионалов не хватает, часть из них ещё и уезжает, а с другой – у нас огромное количество людей, которые не знают, чем себя занять и занимаются непроизводительным (как минимум в денежном выражении) трудом.
Как прекратить утечку мозгов, ведь обучая специалистов, которые уезжают за рубеж Россия тем самым финансирует экономику США и других стран?
Если говорить в целом, то в современном мире вопросы «куда пойти учиться» или «уезжать в другую страну или нет» немного потеряли свою остроту. Например, сейчас чтобы чему-то научиться, можно и в вуз в принципе не ходить, если у человека есть достаточная самомотивация или он уже занят интересным делом. Успешных примеров людей с незаконченным или даже не начатым высшим образованием в ИТ достаточно много.
Сейчас даже переезжать не всегда нужно. С удалённой работой можно вообще сидеть у себя в посёлке и, при этом, работать на нью-йоркскую компанию и получать нью-йоркскую зарплату.
Сейчас все границы стираются. Важно понимать, что российский ИТ, на самом деле, скорее глобальный, международный: все специалисты довольно легко мигрируют между странами, по крайней мере, в молодости, когда дети ещё не пошли в школу.
Уже в более зрелом возрасте с детьми-школьниками люди предпочитают останавливаться на каком-то конкретном месте жительства.
Нужны ли России новые ИТ-вузы, какие специализации они должны закрывать на рынке труда?
Мне думается, что нужны не только ИТ-вузы. Очень не хватает прослойки чего-то вроде ПТУ для ИТ. В ИТ очень много задач, для которых не нужна высшая математика и глубокие академические знания. В конце концов языки программирования – это такой же инструмент, как и токарный станок. Не все же токари детали для ракеты делают: кто-то должен и болты вытачивать. Так же и в ИТ: не все разрабатывают ИИ, есть много довольно рутинных задач, и таких разработчиков тоже очень не хватает на рынке.
В ИТ очень много разных специалистов, это не только разработчики: есть еще аналитики, тестировщики, инженеры поддержки, менеджеры, маркетологи и так далее. Например, по моему опыту, найти на российском рынке хороших разработчиков гораздо легче, чем тестировщиков. При этом, софт тестировать всё равно надо. У нас в HFLabs на одного разработчика приходится 3 тестировщика. К сожалению или к счастью, одними разработчиками хороший продукт не сделать.
На кого учиться, чтобы в будущем стать в ИТ незаменимым человеком?
Я бы сказал, не на кого, а когда. Технологии меняются каждый день: чтобы быть незаменимым завтра, нужно готовиться к этому завтра или же создавать его, то есть постоянно развиваться.
На мой взгляд, всегда в цене будет научно-естественное или инженерное образование. Готового ИТ-специалиста из вас такие вузы не сделают, но научат думать и решать задачи. Также важна среда, те самые soft skills, о которых сейчас все говорят.
Нужны ли коммерческие курсы по разработке и тестированию от noname организаций? Куда следует пойти учится, можно вырастить разработчика на дому парой книг по языкам программирования?
Я довольно скептически отношусь к таким курсам. Я бы советовал параллельно с ними искать вакансии начинающего разработчика и писать код. Если вы хотите быть разработчиком – пишите код, хотя бы для себя, изучайте opensource-проекты. Невозможно научиться ездить на велосипеде, прочитав книгу: на него все-таки придется сесть.
Студент, например, сможет пойти волонтёрить на проект с открытым кодом и получить новые знания от старших товарищей. Многие через такие проекты и находят себе работу: толковых ребят сразу замечают и приглашают на работу или стажировку.
Я много собеседую людей на разные вакансии. Меня всегда удивляют люди, которые приходят на вакансии аналитиков или тестировщиков и хотят через некоторое время стать разработчиками. Я всегда спрашиваю у них: “Почему вы тогда не идете работать разработчиком, пусть джуниором?”. Этот этап проскочить нельзя: работа тестировщиком или аналитиком не приблизит к написанию кода. Это большое заблуждение.