1. Свалить в крупный город.
2. Найти работу джуниором. На зарплату пофиг — главное, чтоб на жизнь хватило более-менее.
3. Поступить в профильный вуз на вечернее.
1. Автоматизация какого-нибудь документооборота. Но надо влезать в предметную область.
2. Аналог Travis CI — travis-ci.org/
3. Какая-нибудь распределенная имитационная модель/многопользовательская игрушка. Чревато некоторым количеством матана.
Навскидку:
Мат. моделирование вычислительных ферм и поиск оптимальных стратегий хэширования данных и масштабирования.
Оптимизация планов выполнения запросов.
Вообще, если сразу не видите где можно копать — значит стоит еще поизучать, почитать литературу итд.
ИМХО, лучший вариант — специалист, а затем аспирантура+работа по смежной теме, но при нескольких условиях:
1. Вы уже сейчас знаете чем и к кому вы будете заниматься и уверены, что эта тема позволит вам реализоваться как специалисту. Таких тем в IT сейчас очень много на самом деле.
2. Аспирантура и будущий научный руководитель адекватны (с пониманием относятся к работе для зарабатывания денег, делятся связями итд итп).
3. Параллельная работа адекватна и не мешает аспирантуре (найти в IT работу со свободным или почти свободным графиком — не такая уж проблема, если вы хороший специалист).
Для меня ВУЗ стал в первую очередь источником огромного количества идей. Поэтому учиться стоит, но и учиться надо идти не на программиста (все равно самому учиться придется), а на смежную инженерную специальность.