Думаю, что нужны оба типа специалистов. Все зависит от потребностей конкретного проекта и компании. Профессионалы своего дела всегда востребованы, но иметь широкий технический кругозор в смежных областях лишним не будет. Для программиста главное постоянно изучать что-то новое и развиваться. Нужно следовать своим интересам, чтобы программирование доставляло удовольствие.