Можно учиться самому. Я занимался сам олимпиадным программированием еще когда учился в школе. После этого пошел в ВУЗ и ничего нового там за первые 3 (из 4) года не узнал. На самом деле, более продуктивно было бы и следующие 4 года заниматься самому (с книжками, конечно).
Можно пойти в ВУЗ. Научат или нет - зависит от ВУЗа, а скорее даже кафедры (сейчас я чуть-чуть работаю в ВУЗе (для души) и точно знаю, что многие не учат - именно поэтому за 3 года обучения иногда можно лишь повторить школьный курс). Опять же, если вы не будете учиться в ВУЗе сами (дополнительно), то после окончания вряд-ли устроитесь на работу по специальности. Зато в ВУЗе научат русскому языку, философии, культурологии, истории и многому другому.
Можно окончить курсы, но 99% попадете на лохотрон (будут учить и что-то с умным видом рассказывать, но сами лекторы очень часто ничего не понимают). Вот вчера на форуме обсуждалась тема курсов: ссылка (учтите, что автор топика проходит ПЛАТНЫЕ курсы, а есть еще и бесплатные - там вообще зоопарк часто). Если и проходить курсы - то от работодателя (у крупных контор бывают бесплатные курсы - по факту это что-то типа стажировки, где вы учитесь программированию, а работодатель отбирает самых смекалистых).
Можно нанять репетитора. Если репетитор является программистом (чего можно только пожелать 70% преподавателей ВУЗов и, тем более, курсов) и вы будете сами читать книжки, а не только на него надеяться - эффекта будет гораздо больше.
Современные программы, особенно программыне комплексы (класса, скажем, операционной системы, или системы моделирования, или даже такие, как 1С), неимоверно сложны. А многие операции и возможности, которые в них заложены или предусмотрены, в обычной практике встречаются чрезвычайно редко. Наконец, даже условия применения таких программ могут отличаться - разная аппаратная конфигурация компьютера (сколько разновидностей мобил, а? сколько вариантов процессора даже в обычных компьютерах?), разное окружение, разные режимы взаимодействия с сетью или с другими программами... Поэтому при написании таких сложных программ физически невозможно предусмотреть всё. Вот для того, чтоб выловить возможные глюки, чтоб не занимать время высококвалифицированного программиста, способного создавать код, и нужны тестеры. Их задача - проверять все заложенные в программу (или затребованные заказчиком) возможности, гонять разработанную программу на разных компьютерах и в разных режимах с тем, чтоб отслеживать, как она себя ведёт, когда и после чего появляются какие-либо глюки, как программа реагирует на разные воздействия, на разные, даже намеренно "дурацкие" действия пользователя, и т. п.
Такие места есть и доступны они с любой точки мира. Заходите в интернет, вбиваете запрос и получаете множество уроков: видео, статьи, книги... Материала настолько много, что можно изучать на протяжении года и так и не перелопатить всю информацию.
А вот если вы хотите за бесплатно заполучить преподавателя, то это вам вряд ли удастся, все делают бизнес и консультации можно получить только заплатив денежку. Хотя, чем видео урок не консультация. Верно? Порой не каждый учитель объясним более доходчиво, чем некоторые блогеры.
Если компания невелика (такие, правда, редко занимаются разработкой ПО), то может быть достаточно или сертификата или опыта работы (скажем, больше 3-х лет, по профилю, в соответствующей компании, с записью в трудовой). Сертификат и опыт вместе приветствуются куда больше вместе, чем по отдельности. Если компания крупная, вам понадобится наличие образования соответствующего профиля и опыт работы. Сертификаты о пройденных курсах котируются на порядок ниже, чем соответствующее высшее образование.
P.S.
Как правило, такие курсы используются студентами для расширения знаний или профессионалами, для изучения иных языков программирования и т.д., чтобы иметь возможность использовать полученные знания в основной работе, в качестве вспомогательных или в качестве курсов переподготовки, но не для подготовки специалистов.
Я бы лучше отказался от лишнего и использовал пару языков. Переключение действительно неоправданно затратно. Но, если необходимо, привык держать перед глазами CheatSheet.pdf по конкретному языку.