Если именно программистом микроконтроллеров, то высшее образование необходимо из-за некоторого количества нюансов, которые нужно знать при разработке и которые трудно изучить самостоятельно (электротехника, электроника, длинные линии, экранирование, теория надежности и т.д.).
А выбор факультета зависит от Вас. Выбрать стоит самый лучший, куда сможете поступить и который связан с этой тематикой. И на протяжении всей учёбы делать свои проекты и как можно раньше попытаться устроиться на стажировку в крупную компанию.