1) Если есть возможность шанс сдать "достаточно успешно", нужно сдавать именно так. Нет никакого смысла стараться в пол силы, если ты считаешь, что можешь лучше
2) Поступать нужно в лучший из доступных ВУЗ или не поступать никуда. Тут вариантов не много: СПБГУ, МГУ, МФТИ, искать лучше факультеты именно по специальности программирования (хотя и в других физматах будет программировани, но в конкретной его будет больше)
3) Курсы тебе ничего не дадут.
4) ВУЗ сам по себе, если не будешь учиться сверх тебе ничего не даст
Насколько этот план (в особенности пункт №3, т.к. его существование греет вечерами душу) реален и рационален?
Ты серьезно хочешь рискнуть без знаний? Этот план подойдет для тех кто
уже умеет писать код, он уже понимает, что его знаний достаточно для устройства на работу (или он уже работает). Для того кто "только выбрал профессию" стоит при возможности поступать.