Все в конечном итоге определяется социальным уровнем, который так или иная профессия предоставляет.
Почему раньше инженеры стремились уехать в Америку? А потому что здесь умеют на инженерах деньги зарабатывать и соответственно их ценят. В СССР социальный статус инженера был ниже статуса уборщицы или грузчика в продуктовом магазине. А в Америке статус даже мясника просто не сопоставим со статусом рядового программиста. Даже товаровед или завмаг далеко позади.
Не знаю как сейчас, но раньше в уже России банковский служащий, или кассирша обменника, или служащий нефтяной компании - все равно находились выше инженеров (исключая конечно тех инженеров, кто работал на западные компании).
Пока к инженерам в России не будут относиться как в ведущих западных компаниях, ничего не поменяется. И дело тут не в том как заставить учиться на инженеров выпускников школ - это социализм и потребительское отношение к населению, а в том что платить надо больше инженерам, если они так на самом деле нужны России. Банальные законы рынка. Будут инженеры жить лучше юристов и экономистов - пойдут на них учиться выпускники школ.
Опять же слепо платить такие же бабки как на западе российским инженерам, тоже не дело - если на их труде ничего не зарабатывается. Тут еще надо уметь продать то, что инженер сделал и не в своем районе или области, а по всему миру - тогда это будет окупаться. Вот тут государство должно помочь в создании инфраструктуры.
Кроме того, государству надо ломать психологию - сколько получает денег тот инженер из-за ошибки которого потеряли спутников на 2.5 миллиарда рублей? Готовы ли генералы от космической науки своим бойцам платить на уровне той же NASA?