Я недавно закончил университет. Программировать нас учили. Не правда, мы изучали основы языка Паскаль и Си. Изучали как пишутся программы уровня простых математических вычислений. Изучали углубленно математику и многое другое.
Я ни разу не слышал больше трех предложений о таком что такое UML. Стандарт ISO - что это?, о том, как проектируют программное обеспечение, что для этого используется, что такое рефакторинг, какие бывают методологии разработки ПО, жизненные циклы и др. Что это такое? Об этом я только мог прочитать в Интернете самостоятельно. Но нас же учили.
Статистика плачевная. Выпустилось порядка 60 человек по моей специальности. И из них только около 10 человек хороших начинающих специалистов. Оценив предыдущие годы выпуска, можно сказать, что количество выпускаемых специалистов с каждым годом все меньше.
Из нас готовят комбайны, которые умеют молоть мясо, взбивать сливки, делать коктейли, и при всем при этом - мы не умеем ничего.
Да, я забыл написать. Специальность под которой нас выпускали - Информатика, и готовили из нас инженеров-программистов.
Кому такие специалисты нужны?
Не знаю, где и что Вы заканчивали, но я знаю как минимум один город и пару университетов, где все не так плачевно.
Где университеты (а точнее, деканы профильных факультетов) видят тенденции отрасли, и уже 3 года назад нам преподавали на достаточно высоком уровне и UML и "методы проектирования Информационных систем" и про методологии и циклы разработки рассказывали и даже ! про тестирование был отдельный курс.
Так же уже тогда 3 крупнейпих ИТ компании города оценили ситуацию на рынке и в ВУЗах стали организовывать в этих самых вузах дополнительные бесплатные группы, которые усиленно "натаскивают" по нужным предметам так, что уже к началу 5-ого курса студент идет если не на программиста, то уж тестировщиком-то всяко.
Сейчас один из таких факультетов даже выделился в профильный институт.