Какую технологию мне следует изучить? - один из самых сложных вопросов, на который должен ответить любой технолог. Это также самое главное. С сегодняшними темпами инноваций и изменений, если вы на мгновение не решитесь, вы далеко окажетесь позади своих конкурентов. Берут на работу и платят больше специалистов, а не универсалов. В такой сфере, как веб разработка, этот риск еще больше. К счастью, есть довольно простой способ определить ответ: решить, чем вы хотите заниматься в жизни.

Проще сказать, сложно сделать, но, вероятно, не так сложно, как вы думаете.

Так много технологий!

Сегодня я работал со студентом, пытаясь сам принять это решение. Мы кратко обсудили все перечисленное и то, как все они сочетаются друг с другом:

  • бессерверный
  • лямбда
  • JAMstack,
  • DevOps,
  • контейнеры
  • системное администрирование,
  • хостинг эластичных сервисов,
  • непрерывная интеграция,
  • микросервисы,
  • интерфейсная веб-разработка,
  • серверная веб-разработка,
  • полноценная веб-разработка,
  • глубокая разработка,
  • постоянный аудит безопасности,
  • исправление сервера,
  • управление изменениями на предприятии.

Это даже близко не покрывает все.

Мы живем в то время, когда есть так много технологий на выбор, что даже зная, что есть, можно найти работу на полную ставку. Как кто-нибудь - особенно новичок - узнает, какой путь выбрать?

Это может сильно расстроить даже самых опытных ветеранов. Интернет-разработчики придумали термин «усталость от фреймворка» для того чувства, что их постоянно засыпают новыми вещами, которые они должны освоить и интегрировать в свои проекты, чтобы оставаться актуальными.

Ключ к ответу на этот вопрос - знать, что вы хотите делать - не только со своей жизнью, но и с каждым часом дня, пока вы живы.

  • Какие конкретные занятия вам нравятся?
  • Тебе нравятся люди?
  • Вы живете ради терминала и целый день печатаете на клавиатуре?
  • Вы больше увлекаетесь графикой?
  • Вам нужно двигаться больше минимума, чтобы остаться в живых?
  • Вам нравится решать проблемы?
  • Вы больше занимаетесь тушением пожаров, чем постройкой чего-то, что потенциально может вызвать пожар?
  • Вы хорошо владеете руками и любите работать с гаджетами?
  • Насколько хорошо вы визуализируете вещи?

Есть еще сотни вопросов, которые могут возникнуть в любом опросе по профориентации, но вот некоторые из них, которые я понял сегодня, я никогда нигде не видел. Я начинаю думать, что они имеют большее значение, чем все остальные:

  • Вам нравится работать в большой организации?
  • Вы предпочитаете небольшой стартап?
  • Вам комфортно работать по контракту?
  • Насколько вы действительно мобильны?
  • Вам обязательно нужно пойти в офис со сверстниками?
  • Сколько денег вам действительно нужно?
  • Насколько важно для вас влияние?
  • Вы бы хорошо сделали то, что вам говорят?
  • Будете ли вы несчастны, если не знаете, что вы делаете, чтобы иметь значение для вас?
  • Есть ли у вас люди, которые зависят от вас? Какая компания лучше всего удовлетворит их потребности?

Эти вопросы определяют тип компании, которая вам понравится, и, следовательно, где вы, скорее всего, будете работать наилучшим образом.

Легче узнать, какие технологии изучать, если вы знаете, в какой компании вы хотите работать, или, что еще лучше, в 10 лучших компаниях, в которых вы хотели бы работать, если бы вы могли подать заявку сегодня.

Случайные уроки жизни

Со временем ваши ответы кардинально изменятся.

Когда я учился в колледже, я знал, что быть речным гидом или круизным директором не будет профессией, которой я мог бы заниматься в течение длительного времени, особенно позже с семьей. Я действительно знал, что мне нужно это сделать, если я вообще никогда не смогу сделать это снова.

Какое это имеет отношение к тому, какие технологии изучать?

Это означало, что я отказался от технологий на время и узнал все, что мог, о первой помощи в дикой природе, выживании, фитнесе и природе. Знание, какая работа мне нужна, резко изменило все мои приоритеты в обучении, настолько, что изучение любой технологии отвлекло бы меня от моей специальности в этой работе.

Позже появилась сеть. Помните это?

Никто не поверил мне, когда я сказал им, что он будет огромным, никто, даже моя жена в то время. Она терпела мои разглагольствования о том, насколько большой он будет.

«Однажды вы увидите эти веб-адреса на бортах автобусов и на каждом телешоу!»

Я знал, что хочу участвовать, но мог, но пока не было компаний, которые занимались бы этим.

Я позвонил в Xmission в Солт-Лейк-Сити, штат Юта, и предоставил мне модемное соединение PPP с Интернетом. Я знал, что хочу работать в такой компании, но понятия не имел, чему мне нужно научиться.

Я никогда не забуду тот день, когда я позвонил, и инженер, которому мне удалось дозвониться, какое-то время обсуждал это со мной. Я задал ему один конкретный вопрос без особой предусмотрительности. Ответ был, пожалуй, самой важной информацией в моей карьере.

«Я понимаю, что не готов подать заявку в вашу компанию прямо сейчас, но не могли бы вы рассказать мне одну вещь, которую я мог бы узнать, которая заставит вас немедленно нанять меня?»

«Изучите Perl», - сказал он.

Я уже занимался HTML до того, как по нему появились книги, так как он появился в колледже.

Этот совет отличался от изучения следующей крутой технологии. В частности, это был величайший навык, необходимый для моей компании №1, на которую я мог бы работать.

Я купил «Изучите Perl за 21 день» и сделал именно это. Я помню, как читал в каюте своего корабля с моей беременной, терпеливой женой на другой койке, когда все еще работал на круизном лайнере в России. Я установил Perl на свой Mac и возился с ним, создавая небольшие программы и выполняя задания. Возиться с чем-то - всегда лучший способ научиться. Учиться беспорядочно. Это просто факт.

Поскольку я уже выучил HTML и выучил больше Perl, чем кто-либо в радиусе 50 миль, я был готов, когда аналогичная компания открылась буквально рядом с моей квартирой, FiberNet.

Когда я вошел, я был готов. Их наняли практически на месте. Я стал не только веб-мастером, но и директором по продажам. Я написал на Perl первую открытую службу обработки форм в почту под названием fb.pl и быстро научился настраивать ее и создавать другие сценарии CGI.

Все эти технологии уже устарели

Дело в том, что, поскольку я вообразил и даже позвонил в компанию, я хотел поработать, чтобы спросить их, какие навыки им нужны прежде всего - без каких-либо ложных претензий, гордости или намерений - я был готов, когда появилась возможность в идентичной компании.

А что я?

Итак, вам я повторяю еще раз: определите компании, в которых вы, по вашему мнению, работаете. Затем проведите все возможные исследования - даже собеседование с инженерами и менеджерами по найму - о потребностях этой компании. Большинству компаний будет лестно узнать, сколько вы о них узнали, еще до того, как позвонить.

Обратитесь к друзьям и родственникам, которые, как вы знаете, работают в компании или что-то подобное.

Выявите конкретных людей, которые работают в этих компаниях, и преследуйте их в Твиттере, чтобы узнать все о том, чем они занимаются. Twitter предназначен для тех, кого вы хотите знать. [Facebook для тех, кого вы знали.]

Привлекайте рекрутеров, чтобы они помогли вам в этом. В гиг-экономике каждому нужен агент. Найди одного.

Как только вы определите несколько компаний, ограничьте свои самые большие потребности двумя или тремя конкретными технологиями. Затем погрузитесь глубоко в них и не поднимайтесь на воздух. Овладейте ими. Предоставьте массу убедительных доказательств того, что вы их знаете. Стать абсолютно незаменимым. Сделайте это как можно быстрее, потому что через несколько месяцев потребность, скорее всего, изменится и появится что-то новое. Не волнуйся. Вы всегда можете спросить еще раз и скорректировать свой учебный план.

Какое отношение имеет компания к моему обучению в сфере технологий?

Если вы не изучаете код для создания собственной компании или не получаете удовольствие, создавая что-то свое, ваша основная цель в обучении любым техническим навыкам - принести пользу вашему работодателю. Примечательно, сколько новичков упускают это из виду сосредоточиться, даже после того, как их наняли. Речь идет не об обучении и использовании крутых технологий, а о добавлении ценности.

Например, если вы хотите работать в более крупной организации, такой как банк или многонациональная некоммерческая организация, вам, вероятно, придется изучать очень старые технологии. Это в значительной степени закон физики, что, если вы не говорите о технологическом гиганте, большая компания по-прежнему будет использовать такие вещи, как AIX, PHP и много-много Java. Я помню, как один вице-президент сказал мне, как они гордятся своим проектом Ruby on Rails.

Как-то раз я рассказал нашему руководителю инженеров Nike о Linux, но он оставил его, забыл о нем и - год спустя - подошел ко мне, чтобы спросить, будет ли я в порядке, если они поменяют машину Solaris. размещение интрасети Nike на сервере Linux. У меня не хватило духу напомнить ему.

Могу ли я получить работу с этим?

Мне часто приходится объяснять студентам, что я вынужден выбирать из новых технологий, которые, как мне кажется, будут на гребне волны, когда они войдут в рабочую силу. До сих пор я добился этого, в частности, назвав Go ведущим языком DevOps пять лет назад, примерно в то же время, когда мы отказались от программирования на Java для Python, который на данный момент является самым быстрорастущим языком в мире по всем показателям.

Совсем недавно мы перешли к изучению разработки веб-приложений с использованием современного JavaScript, самого популярного языка на планете. Мы не тратим время на изучение Swift или Kotlin, потому что, откровенно говоря, эти технологии постепенно исчезают с помощью нативной мобильной разработки в Native Script, Ionic и React Native. Вся концепция магазина приложений сейчас подвергается критике и даже судебным разбирательствам. Будущее за прогрессивными веб-приложениями, ориентированными на офлайн, и собственными фреймворками веб-приложений на интерфейсной стороне. Эта надпись очень ясно видна на стене для любого, кто на нее смотрит.

Тем не менее, один из моих лучших студентов в настоящее время находится на оплачиваемой стажировке, где он, по сути, вынужден использовать Python Flask, где микросервис в Go был бы гораздо лучшим решением. [Кстати, к моему удивлению, большая часть разработки Python все еще является серверными веб-приложениями и не связана с наукой о данных.]

У компании, в которой он работает, есть определенные соображения, которые требуют этого решения. Когда вы стажер, вы идете работать в компании, которые не выбираете для себя. Это поможет вам принять решение. Другая крупная компания в будущем, Duke, в последнее время наняла много разработчиков Go.

Tech First или Company First?

«Но я хочу программировать только на Go».

По большей части это был бы я.

Хотя выбор типа компании, в которой вы хотите работать, поможет новичкам решить, какую технологию изучить, другой подход - обычно в более позднем возрасте - состоит в том, чтобы изучить множество технологий и выбрать то, что вам абсолютно нравится. Затем найдите компании, в которых работают люди, у которых это хорошо получается.

Этот подход сложнее, потому что вы должны быть готовы работать там, где работа оплачивается за ваши предпочтительные технические навыки.

Возьмем, к примеру, разработку игр. Разработка видеоигры на Phaser или Unreal Engine - это навык, который нанимают только очень определенные компании, и те, которые это делают, очень конкурентоспособны. Это похоже на желание стать исполнителем. Если все, что вы хотите делать, это выполнять, вы должны быть готовы взять на себя любую работу, которую вы можете сделать - вначале.

Изначально размещено на skilstak.io.