Две вещи: во-первых, перестаньте говорить, что вы недостаточно хороши.

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

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

Интервью - отстой

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

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

Почему? Вы показываете свои сильные и слабые стороны. Вы самоанализ. Если у тебя все получится, ты получишь работу! Если вы этого не сделаете, вы узнаете, над чем вам нужно работать. На самом деле собеседование всегда беспроигрышно для вас.

Что отстой, так это то, что, если вы не получите работу, она почти никогда не будет такой.

Моя начальная борьба

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

Иногда мне звонили. Каждый раз, примерно через две минуты после того, как я рассказывал милому человеку по телефону свою отработанную презентацию в лифте, я замирал.

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

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

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

Я буду учиться без устали. Я прочитал Django docs от корки до корки. Моя карта вклада GitHub была более экологичной, чем попытка Ричарда Хендрикса продать Крысолова в качестве музыкального плеера. Что-то нужно было изменить, и это было моим мировоззрением.

Дорожная карта: сделайте интервью вашим джемом

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

Главное помнить, что вам нечего терять, но вы можете получить все!

Очистить воздух

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

Вместо этого сосредоточьтесь на себе. Почему ты хочешь быть разработчиком? Если у вас уже есть работа, зачем вам что-то менять? В чем ты хорош? Чего ты хочешь добиться? Как вы собираетесь это сделать? Ответьте на эти вопросы для себя, ни для кого другого… и будьте честны. Вы можете записать это и вести дневник этого внутреннего монолога.

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

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

Установление ожиданий

Собеседование - это не поиск работы. Собеседование - это обмен вашими навыками. Собеседование - это улучшение ваших навыков. Позвольте этому осознать. Дело не в получении работы. Речь идет об улучшении.

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

В итоге мы могли разговаривать часами, пересылать видео туда и обратно и обсуждать механику подъемника. «Как вы удерживаете твердую позицию, когда штанга отрывается от пола?» «О чем вы думаете, когда собираетесь ее поймать?»

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

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

Это относится и к миру разработки. Во время собеседования вы обмениваетесь знаниями о компании на знания о себе. Все в конечном итоге становятся умнее и лучше понимают, как совершенствоваться. Получите вы работу или нет - это всего лишь побочный эффект!

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

Включение в работу

Вот оно: самая сложная часть. Я надеюсь, что никто из вас не встанет, потому что я ужасный мотивационный оратор. Вам захочется посидеть и услышать эту посредственную речь о * ~ THE GRIND ~ *.

Шаг первый: просто код!

Найдите друга или коллегу, позвоните по Skype и начните сеанс парного программирования! Выберите проблемы, над которыми вы оба хотели бы работать, и помогайте друг другу.

Если вы делаете это в Интернете, я рекомендую использовать JSFiddle's« Collaborate (бесплатно!) Или CodeSandbox’s «Live »(не бесплатно! 😅), чтобы вы видели один и тот же код.

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

Шаг второй: совместная работа над проектами

Второй шаг очень похож на первый, только вы объединяетесь с другими единомышленниками для достижения общей цели. Цель состоит в том, чтобы как-нибудь заставить этот чертов сайт работать.

На первом этапе я подчеркнул, что парное программирование отлично помогает вам обрести уверенность в себе и научиться говорить через свои шаги. Однако создание проекта вместе с другими - это новая игра: вы научитесь принимать решения в отношении своего кода. Вы определите свой стиль по сравнению с другими и определите, что отличает вас от других. Вы научитесь преодолевать командные конфликты. Вы научитесь программировать в команде.

Кстати, это отличная возможность познакомиться с программным обеспечением с открытым исходным кодом! Работа с открытым исходным кодом дает вам возможность познакомиться с новыми технологиями. Это дает вам возможность попрактиковаться в чтении, отладке и улучшении чужого кода, а также всему, что я сказал в этом разделе. На момент написания это был Hacktoberfest 2018, что означает, что если вы вносите свой вклад в открытый исходный код на GitHub, вы получаете больную рубашку!

Помимо открытого исходного кода, я рекомендую попробовать Chingu. Это сообщество, которое объединяет вас с другими для совместной работы над крупным проектом!

Шаг третий: пришло время (практики) собеседования, детка!

Лицом к лицу со своими страхами. Станьте могущественным. Победите на собеседовании.

Если у вас есть сверстники, с которыми вы хотели бы начать заниматься, это прекрасно! Я рекомендую вам объединиться в пары и задать вопросы друг другу, задав вопросы из LeetCode, модулей интервью из freeCodeCamp или других ресурсов, которые вы предпочитаете.

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

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

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

Шаг четвертый: сделайте это снова

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

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

  • Вы узнаете, почему работодатели могли вам отказать, и можете улучшить эти моменты.
  • Вы просматриваете рынок в поисках того, чего хотят работодатели, и можете соответствующим образом адаптировать свое обучение.
  • Если все будет хорошо, то получишь новую работу! Милая!

Собеседование - беспроигрышный вариант каждый раз, когда вы сосредотачиваетесь на себе. Получение работы последует.

Прощальный совет

Я надеюсь, что этот пост поможет пролить свет на то, почему интервью так страшно. И я надеюсь, что мотивировал вас, как их преодолеть. Помните, что собеседование - такой же важный навык, как и собственное кодирование. Для разработчиков знание того, как сообщить о том, что вы сделали, имеет решающее значение для повседневной работы. Будь то добавление отличной новой функции в приложение или объяснение того, как вы решили проблему в Stack Overflow.

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

Я также опубликовал этот пост в своем блоге Попробуй кодировать, это весело!