Проблема подготовки IT кадров

О подготовке неквалифицированных специалистов

 

Мы все учились понемногу чему-нибудь и как-нибудь. А. С. Пушкин

 

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

Уже прижилось понятие «head hunting». И это понятно, если молодые не подходят по уровню образования, компании начинают охоту за умами, теми, кто что-то уже умеет и неплохоВ моей области специалисты переходят из одной смежной компании в другую. Новичков нужно учить, и не всегда это происходит быстро. Часто на собеседования приходят люди не только без опыта, но и не обладающие логическим мышлением. Простые вопросы на логику вызывают либо ступор, либо невнятные объяснения. Что говорит не только о том, что система образования готовит неквалифицированных специалистов, но и о том, что она не развивает логическое мышление студентов. Причины данной ситуации — тема отдельного исследования. В текущей статье рассмотрим проблемы, из-за которых наблюдается эта тенденция, и методы решения.

 

Проблема нехватки квалифицированных специалистов

 

Может собственных Платонов  и быстрых разумов Невтонов Российская земля рождать. М.В. Ломоносов

 

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

На рынке наблюдается нехватка ИТ специалистов, что вызывает повышенный спрос на них. Уровень зарплат растет, на вакансии с высокими требованиями и величиной зарплаты начинают откликаться кандидаты с небольшим опытом. Глядя на суммы, предлагаемые компаниями от безысходности, молодые специалисты не хотят идти на меньшие условия. Рынок зарплат «перегрет», соискатели избалованы, а это одна из причин дестабилизации экономики, инфляции и сопутствующего этому кризиса. Автору лично пришлось уйти из одной офшорной компании. Английскому владельцу выгоднее было перевести все в дешевые Индию и Египет, по причине возрастания зарплат на российском рынке. На текущий день автору известны случаи, когда уже наши отечественные компании выводят разработку в офшорные зоны. Это выгоднее, поскольку за небольшие деньги можно получить как минимум тех же новоиспеченных специалистов, таких же, как из наших университетов. А ввиду того что рынок идет к разработке шаблонных систем, основанных на общеизвестных фреймворках, специфические навыки специалистов становятся не так сильно востребованными. Поэтому можно с легкостью воспользоваться кадровыми предложениями третьих стран. В особенности если ваши проекты не отличаются какой-то сверх продвинутой спецификой, на которую потребуются специалисты — победители олимпиад с головами отечественного производства.

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

Система образования готовит специалистов в разных IT областях на основе устаревших рамочных подходах, которые давно уже не соответствуют реальной рыночной действительности и требованиям современных компаний. Время идет, требования меняются, рынки видоизменяются, одни типы специалистов перестают быть востребованными, на смену приходят другие. А система образования все та же. Мир меняется вокруг, а вслед за ним должна меняться и система подготовки специалистов.

То же относится и к фундаментальным знаниям, которые следует предоставлять слушателям так, чтобы усвояемость была максимальной.

 

Требования рынка

Нет ничего более постоянного, чем непредвиденное. Поль Валери

Давайте посмотрим, что нужно рынку сегодня? Специалисты, разбирающиеся в таких технологиях, как .NET, Java, функциональные языки, объектные языки, sql базы данных, nosql базы данных и т.д. и т.п.

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

Программистов необходимо готовить не только для написания программного кода, но и защищенного от разного рода атак, например sql-инъекций или xss атак.

Большинство кандидатов мало что знают об алгоритмах сортировки и поиска, тем более не помнят или не знают такого товарища, как  Кнут Д.Э. Да и зачем, когда все необходимые методы сортировки уже реализованы в разных фреймворках. А отсутствие фундаментальных знаний приводит к созданию большого количества «костылей» (неправильных программных решений, которые необходимо исправлять).

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

Когда приходит кандидат, только вышедший из университета со специальностью, связанной с безопасностью программных систем, и не может объяснить, как работает алгоритм ssl, основанный на принципе ассиметричных публичных ключей, то кого, спрашивается, готовит высшая школа? А тем временем на рынке все также не хватает специалистов по безопасности. С таким же успехом я могу взять самородка, закончившего колледж и увлеченного ИТ— амбиций будет меньше, а толку больше.

Современный мир — это мир больших данных. Где же специалисты, которые умеют проектировать системы для хранения больших данных? Да и недостаточно просто спроектировать такую систему, чтобы можно было с ней работать. Данные есть данные, они бессмысленны, если их никто не использует, а большие данные — это необходимость их анализировать, выявлять какие-то закономерности, а следовательно, рынку требуются специалисты по добыче знаний (datamining).

Часто можно услышать понятие «олап кубы». Где-нибудь есть специалисты со знанием проектирования таких кубов? На данный момент все обладатели этих знаний самоучки.

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

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

Практика показывает, что преподавательский состав обладает знанием синтаксиса языков или аппаратной архитектурой ЭВМ. Иногда преподаватели учат программированию с точки зрения оптимальности и быстродействия, что хорошо. Но зачастую специалисты не грешат применением таких знаний в своей работе. Это нужно прививать годами. Чтобы люди работали не только на результат любыми средствами, но и на качество внутреннего представления. Сырой код – это то, что мы получаем, и это не устраивает бизнес.

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

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

 

Вектор развития высшей школы

 

Плох тот учитель, который не учится или учится совсем мало. М.  Горький

 

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

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

Нужно внести кардинальные изменения в состав предметов для изучения в высших учебных заведениях. Включить современные технологии программирования, проектирование архитектуры систем как на программном уровне, так и на программно-аппаратном, расширить изучение систем защиты информации, включить методы тестирования, методы управления проектами, добавить более глубокое изучение проектирования систем хранения данных, как на основе sql-ориентированных хранилищ, так и на основе постреляционных систем и многое другое. Не только на теоретическом уровне, но и на практическом.

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

Share and Enjoy:
  • Добавить ВКонтакте заметку об этой странице
  • Мой Мир
  • Facebook
  • Twitter
  • LiveJournal
  • MySpace
  • В закладки Google
  • Google Buzz
  • Яндекс.Закладки
  • LinkedIn
  • Technorati
  • Digg
  • MisterWong.RU
  • Memori.ru
  • Сто закладок