Скажем так, если у вас есть знание какого-то определённого языка программирования и умение его применять в какой-либо из сфер, то с вероятностью в 99% вы найдёте работу и в Казани, и в СПБ.
Проблема именно разработчиков в том, что у огромного количества начинающих специалистов слишком узкий круг знаний, а у компаний в IT - слишком высокие требования. Подобная ситуация заставляет бороться за "хорошие" места в компаниях, а на начальном этапе заниматься всем подряд, что только поручит руководство. По опыту могу сказать, что за небольшие деньги можно устроиться в небольшие стартапы и набивать там руку в ужасных условиях (но чем хуже условия, тем лучше, так ведь, Нассим Талеб?), занимаясь всем: от разработки, до администрирования (хорошо, если вы будете заниматься только разработкой и администрированием).