Тащемта никаких секретов тут нет.
- Составить резюме, которое будет отражать уровень профессионализма и будет привлекательным.
- Составить зарплатные ожидания - не должны быть радикально выше рынка, должны соотноситься с уровнем и потенциальными бюджетами компании. (У какой-то локальной не-IT фирмы бюджеты будут явно меньше, чем у большого банка). А какая-то крупная европейская фирма, скорее всего, сможет предложить больше, чем российская.
- Проходить собеседования и заявлять на них о своих зп-ожиданиях.
Если на твоё резюме не реагируют - значит оно либо плохо оформлено, либо твой стек и/или опыт не востребованы.
Например будет достаточно сложно найти работу, если ты специализируешься на каких-то научных вычислениях около физики - работодателей с такими задачами крайне мало.
Если систематически не можешь пройти собеседования - спрашивай причины и исправляй их.
Если по результатам собеседования тебя оценивают ниже, чем ты себя - уточняй, по каким критериям идёт оценка (у многих компаний есть матрица компетенций, по которой определяется уровень разработчика и, соответственно, зарплата)
Хорошее резюме - это:
- Описаны все технологии и практики, которыми ты владеешь, с примерами, как ты их использовал.
- Указан опыт - в каких компаниях и над какими проектами/продуктами работал (можно абстрактно, если под NDA)
- За последние лет 5 стоит развернуть чуть подробнее - какие самые интересные/сложные задачи были, какие применялись технологии для решения этих задач, какие практики применялись для улучшения качества.
PS: если ищешь первую работу - будь готов, что з/п будет на уровне кассира в макдональдсе.