Другие ответы хороши, но я бы сказал, что упущенным навыком в университете, кажется, является реальная разработка программного обеспечения .
Основные классы для обучения ООП и языку, подобному Java, великолепны, но на 3-м и 4-м курсах студенты (по крайней мере, в моем местном университете) пишут компиляторы и операционные системы вместо того, чтобы учиться определять и создавать хорошую архитектуру, как анализировать требования и создавать из этого список технических спецификаций и, возможно, самое главное, в чем разница между хорошим кодом, который работает, и плохим кодом, который работает.
Как будто наши университеты почти хотят выпускать кодеров вместо разработчиков программного обеспечения . Я бы никогда не нанял кого-нибудь, кто не проявил бы какой-нибудь навык / талант в области машиностроения.