austin писал(а):
Но... можно потратить много лет сначала на одно, потом на другое. Тут все зависит от финансов. Если они сильно нужны, то следует начать с SE. В противном случае CS.

По-моему при обсуждении топика смешиваются два разных вопроса:
- Должен ли SE знать CS и применять эти знания на практике? По-моему ДА.
- Являются ли функции исследователя в области CS частью служебных обязанностей SE? По-моему ПРАКТИЧЕСКИ НЕТ.
Каждый SE с достаточно большим стажем может вспомнить случаи, когда ему удавалось разработать оригинальный алгоритм, придумать новый технический прием или паттерн и т.п. Но эти случаи - редкие. Работ для SE, где научная составляющая велика, мало.