Системное программирование, прикладное программирование, Real-Time (управление физическими устройствами в реальном времени).
А вот уже прикладное программирование делят на кучу подвидов. Причём это деление совершенно условно и нужно не программистам, а менеджерам.
Та же web-разработка - не что-то особенное, а всего лишь одна из разновидностей систем клиент-сервер. И мобильное приложение магазина Перекрёсток отличается от браузерного front-end магазина Перекрёсток только языком программирования - при одном и том же back-end.
А "компьютерные игры" - не одна сфера, а множество очень разных сфер: пошаговая стратегия и эмулятор стыковки Crew Dragon c МКС (реализованный в браузере и, потому, формально относящийся к front-end) требуют абсолютно разных знаний.