Что бы быть хорошим специалистом, лучше начать с технического образования. Не важно в вузе или самостоятельно. Начинать сразу кодить и разбираться в языке программирования это такое себе. Можно конечно, но с таким подходом, проецируя это на реальный мир, ты являешься таджиком-строителем(не в обиду таджикам), которые просто кидают камень на камень, когда с образованием и знаниями ты можешь являться инженером проектировщиком который действительно занимается крутыми штуками.
Вот например, ты выучил язык, кодишь, красиво все, юзаешь там новомодные фичи из последней версии языка, шаришь в ООП как Иисус, но не знаком со структурами данных и алгоритмами и там где ты можешь написать код и сделать программу легче и быстрее, ты будешь делать её влоб, т.е если надо найти элемент в массиве, будешь перебирать каждый его элемент а не юзать к примеру бинарный алгоритм поиска и т.д и .т.п.
Я закончила ИТМО на факультете информатики и робототехники и благодарна всем профессорам которые обучали нас рили интересным и сложным вещам. И на фоне других вайтишников которые вкатились примерно так как ты и собираешься, я ощущаю себя охриненно умной