Если коротко: не нужен.
Если длинно, то нужен в определенных областях. Например, разработка компилятора (особенно оптимизирующего компилятора) - это самый что ни на есть computer science. Разработка ядра операционной системы. Разработка виртуальной машины. И тому подобные задачи, которые требуют глубокого понимания как работает компьютер, какие алгоритмы будут эффективны, а какие нет.
В обычной жизни прикладного программиста максимум computer science, который мне приходилось использовать - это понимание О-нотации. Чем для меня, как для разработчика, оборачивается использование коллекции со временем доступа О(1) или О(n)? Насколько критично в данном месте (с определенными объемами данных) использовать алгоритм сложности О(n^2)? И тому подобные вопросы.