Без заголовка
Я человек глубоко травмированный разведённым программистами CS на предыдущем месте работы, и я могу сказать почему это.
Обычно программист либо думает о том, как его код будет работать, либо он думает о том, как его код он будет писать. Если думает о том, как код работать будет - это software engineering. Если о том, как он код писать/дописывать будет - это уже ближе к CS, потому что хочется красиво, правильно и так, чтобы всё было ровненько. И обычно эти вещи почти ортогональные, потому что надо _либо_ чтобы оно работало (и тогда надо красотой жертвовать), либо красота (алгоритмы!) важнее.