Сейчас много пришлось писать на Си и я пожалуй соглашусь с Торвальдсом. Очень сложно удержаться и не начать применять классы и прочие плюшки. Везде нужен контроль за памятью, указателями, переполнениями чего-то, нет конструкторов, деструкторов, нельзя что-то перегрузить. Любые разработчики на высокоуровневых языках типа Java, Python, Go, PHP где-то даже С++ вообще могут не знать как работает что-то под капотом. Си разработчики находятся чуть более выше чем ассемблер и поэтому должны понимать как все работает на самом низком уровне. Такие знания нужны для разработки библиотек, драйверов, чего-то для встраиваемых систем где нужны скорость и маленький размер. А так как компаний, которые этим занимаются не много, то и вакансий мало.