В любом случае, все мифы должны быть развенчаны. Этим мы и намерены заняться прямо сейчас.
Я не буду спорить, что начинающему программисту действительно сложно получить первую работу. И даже когда он ее находит, сперва все будет казаться крайне трудным и непонятным. Но нельзя думать, что потом, после получения определенного опыта, можно расслабиться: без усилий, саморазвития и труда как по маслу не получится.
В сфере IT постоянно происходят какие-нибудь изменения. Поэтому, если программист не хочет сдавать позиции, он должен непрерывно учиться и актуализировать свои навыки. А те, кто надеется, что после трудоустройства можно будет особо не напрягаться, непременно будут разочарованы.
Как мы уже сказали, сфера разработки развивается стремительными темпами. Но далеко не всем компаниям удается поспевать за новейшими технологиями и методами (некоторые вообще не преследуют такой цели). Это значит, что ответственность за повышение собственной квалификации лежит исключительно на специалисте, если, конечно же, он хочет всегда оставаться конкурентоспособным и привлекательным для потенциальных работодателей.
Конечно, любой разработчик должен иметь хорошую базу технических навыков, но успех зависит не только от них. Помимо прочего вы также должны владеть искусством коммуникации, работы в команде, творческим мышлением и т.п. На самом деле существует множество нетехнических навыков, которые нужны для продвижения по карьерной лестнице. Поэтому не забывайте оттачивать свои soft skills – они могут стать решающими в вашей судьбе, как IT-специалиста.
Фундаментальные знания – это основа, без которой действительно невозможно найти свое место в сфере ИТ. Но хорошая новость заключается в том, что получить их можно и за пределами ВУЗов. Сейчас есть множество курсов, дающих прекрасное базовое понимание информатики, причем иногда совершенно бесплатно: например, от Гарвардского университета и Массачусетского института. Т.е. чтобы начать учиться, вам понадобится только компьютер, интернет, свободное время и, конечно же, немного целеустремленности.
Это не совсем правда. Дело в том, что опыт может, наоборот, помешать человеку понять что-то новое, поскольку для этого приходится отказываться от старых идей, привычек и предпочтений. К тому же, если технологическая новинка совсем непохожа на то, с чем привык работать разработчик, у него не будет никаких преимуществ в процессе ее изучения перед начинающим программистом.
Вывод: иногда проще начать учиться с нуля, чем отучиваться и переучиваться.
Умение писать поддерживаемый, хорошо читаемый и масштабируемый код – это важная характеристика отличного разработчика. Но только одна из многих. Технического мастерства самого по себе мало для того, чтобы получать повышения в должности. Здесь имеют большое значение и лидерские качества, деловая хватка, особенности поведения и взаимодействия с другими людьми.
Нельзя сказать, что это абсолютная ложь, но и не 100%-я правда. Действительно, вакансий предостаточно. Вопрос только в том, сколько из них окажутся подходящими вам и вообще стоящими внимания. Довольно трудно найти такое место работы, которое удовлетворило бы сразу все ваши желания: получать хорошую зарплату, находиться в приятной атмосфере, иметь возможность развиваться и решать интересные задачи, пр. Если хвататься за все подряд и соглашаться на любые условия, вы не сможете расти как личность, профессионал и банально получать удовольствие от работы.
Я часто слышу от знакомых-разработчиков, что обилие новинок в IT-сфере их просто поражает. К примеру, фреймворки JavaScript в последнее время выходили каждые несколько месяцев. Постоянно появляются и новые варианты различных процедур: контейнеризация, непрерывное развертывание ПО и пр.
Но как бы вам не хотелось быть в курсе всех новинок, вовсе не обязательно учить и начинать применять каждую из них. Во-первых, это не всегда целесообразно и полезно. А во-вторых, нельзя себя сильно перегружать.
Стремитесь к балансу: за каждой новинкой не угонишься, но интересоваться последними новостями и продуктами все-таки следует, чтобы при необходимости вовремя внести полезные изменения в свой рабочий процесс.
Я много раз слышал этот вопрос: как часто программисту нужно менять место работы, дабы продолжать расти, как специалисту. И всегда от меня ждут конкретного ответа, например, год, два или пять. Вот только не существует никаких определенных рамок.
Многие факторы могут повлиять на ваше желание изменить работодателя. Иногда уже через полгода человек понимает, что находится не на своем месте. Нужно ли в таком случае продолжать работать? Наверное, нет.
Однако если вы чувствуете, что постоянно развиваетесь, узнаете что-то новое, получаете все больше классных навыков и справедливую заработную плату, подумайте, нужно ли искать другое место? Для чего?
Непонятно, откуда у этого растут ноги, но наши люди просто одержимы идеей зарабатывать 6-значные суммы, т.е. от 100 000 и вплоть до 999 999. Реально ли разработчику начать получать за свой труд такую сумму уже через 2-3 года работы? Конечно! Но есть и другой вопрос: как часто такое случается? Увы, намного реже, чем многие этого хотят.