Успех программиста определяется, действительно, не столько языком, сколько его способностью решать конкретные прикладные задачи. Важно глубоко разбираться в предметной области, понимать потребности клиента (или потенциального/реального пользователя программы) — причём понимать их даже глубже и шире, чем сам клиент. Что касается областей, то сейчас на подъёме облачные технологии, интеллектуальный анализ данных.