х
Вот какая мысль мне пришла о несоответствии выпускников ВУЗов с требованиями на работе. К нам приходят бакалавры и магистры, а мы ждем инженеров.
В итоге выпускник ВУЗа тратит несколько лет на то, чтобы в бою освоить:
- Объектно ориентированное программирование
- Паттерны проектирования ООП
- Работу с реляционными базами данных
- Работу с не реляционными базами данных
- Несколько фреймворков
- Несколько ORM
- Базовые функции операционных систем
- Основы администрирования серверов
- Опасные баги
- Способы решения каких-то нетривиальных задач
- Системы контроля версий
- Технологический процесс производства ПО
- Пару методологий ведения проекта
- Как выяснять требования
- Как тестировать
- Как рефакторить
- Как работать в команде
И дальше уже ставший инженером, идет дальше работать, развиваться, приносить пользу себе, работодателю, миру.
Я очень люблю умных ребят. Огромное уважение вызывают те, кто умеют сходу оценивать O-сложность алгоритмов, разбираются в структурах данных, вообще с хорошими скиллами в Computer Science. Но на практике же большинство этих скиллов в решение повседневных задач практически и не применяются. Опыт решает.
Такие дела.
Возможно это говорит о том, что нужен не инженер, а техник, закончивший профтехучилище или техникум. Где больше упора на практику, чем на теорию.
Я немного о другом. Во-первых, большинство вакансий не предполагает сложных задач уровня запуска ракет или строительства небоскребов. Большинство задач решается уже готовыми высокоуровневыми компонентами, к которым можно отнести и сами языки программирования. Никто свои собственные сортировки и структуры данных не пишет. Это не отменяет желательность данных компетенций, но не делает их ключевыми.
Во-вторых, программирование в айти компании это 99.9% не наука, а производственный процесс. Компании производящие ПО — по сути те же заводы и фабрики и процессы производства на них схожи. Индустрия давно выработала определенные стандарты и методы разработки, управления. Специалистов, которые на выходе из университета способны применять все эти технологии, я видел только тех, кто курсе на третьем начали работать и за два года всего этого понабрали.
Наверное это не хорошо, и не плохо. Просто свежевыпустившиеся бакалавры и магистры приходят и хотят денег столько же, сколько их сокурсники, которые давно работают.
В-третьих, у меня есть несколько наглядных примеров, когда люди вообще не с программерским академическим образованием становились прекрасными специалистами в программировании. Таковые были и есть в моей команде, с физфаков, химфаков, мехматов и тех, кто бросил университет в том числе. Светлая голова и горящее сердце — вот он рецепт выдающихся результатов.