Как получить высококлассную техническую стажировку и работу в сфере технологий, пока вы еще учитесь в школе

Контент

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

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

Я продолжал пытаться. Я обратился более чем в 150 компаний. Я получил десятки интервью.

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

По пути я встретил полезных наставников и амбициозных подопечных. Эти люди сейчас работают в таких местах, как Airbnb, Facebook, Google, SpaceX и Snap.

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

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

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

Несколько слов перед тем, как мы начнем ...

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

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

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

Перефразируя мою любимую цитату основателя Twitter и Medium Эва Вильямса: «Неудача в вашей [работе] - это не неудача в жизни. Неудача в ваших отношениях есть ». Не упускайте из виду то, что важно.

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

А теперь приступим. Ты накачал? Я накачан!

Основы строительства

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

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

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

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

ХОРОШО. Вернемся к студентам колледжа.

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

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

Если вы не изучаете информатику, не волнуйтесь.

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

Если вы не можете посещать уроки CS в колледже, есть множество замечательных онлайн-ресурсов, которые могут вам помочь.

Два лучших онлайн-курса - это Harvard CS50x на edX и CS101 на Udacity. После этого вступления вам необходимо освоить структуры данных и алгоритмы. Я рекомендую Princeton Algorithms Part 1 и Part 2 на Coursera или CS61B от Калифорнийского университета в Беркли.

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

Не волнуйтесь, если поначалу у вас возникнут трудности.

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

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

Развитие интуиции в программировании занимает много времени - почти как изучение человеческого языка. Вы долго не увидите света в конце туннеля. Но поверьте мне. Если вы будете делать шаг за шагом, вы в конечном итоге доберетесь туда.

Сохранять мотивацию сложно, но есть секрет.

Сосредоточьтесь на мастерстве, а не на результатах.

Сделайте своей целью совершенствование навыков, а не достижение определенного результата. Доктор Хайди Грант Халворсон провела исследование, в котором попросила две группы людей решить различные проблемы. Первой группе было сказано набрать как можно больше очков. Второй группе было сказано рассматривать проблемы как возможность для обучения.

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

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

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

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

Вы можете узнать больше об этой тактике в сообщении Эдмонда Лау на Quora.

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

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

Для чтения в Интернете ознакомьтесь с TechCrunch, Techmeme, Product Hunt и Hacker News. Если вы частый пользователь Twitter, следите за техническими новостями. На Medium и Quora персонализируйте свои ленты, чтобы получать подробные сведения об отрасли.

Если вам нравится рассылка новостей по электронной почте, обратите внимание на Axios Pro Rata, CB Insights и Mattermark Daily.

Чтобы глубоко погрузиться в конкретную компанию, используйте Crunchbase и блог компании. Вы также можете узнать о культуре компании из Glassdoor.

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

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

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

Строительные проекты

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

Когда я впервые решил поработать над проектом, у меня на несколько дней был паралич принятия решений. «Что мне делать? А если не оригинал? Что, если людям это не нравится? »

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

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

Вот подборка идей проектов на Reddit для вдохновения.

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

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

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

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

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

Стремитесь выполнить от трех до пяти проектов к моменту подачи заявки.

Отличный первый проект - персональный сайт.

Вы изучаете основы веб-разработки и получаете собственное место в Интернете для демонстрации своей работы.

У Codecademy есть два отличных руководства по созданию веб-сайтов:

    обучает основам HTML, CSS и Bootstrap. учит, как разместить свой веб-сайт в Интернете. Шаг 3 этого руководства необязателен, просто используйте бесплатный домен .github.io.

Слишком легко? Превратите свой личный веб-сайт в динамичный блог. Для этого вам нужно изучить фреймворк для веб-разработки, такой как Rails или Django. Ознакомьтесь с Руководством по Ruby on Rails или Руководством для девочек Django.

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

Хакатоны отлично подходят для мотивации к работе над проектами.

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

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

Некоторые из известных мне лучших хакатонов в Северной Америке - это PennApps, HackMIT, HackNY, MHacks, HackTech, HackIllinois, CalHacks, TreeHacks, Hack the North, YC Hacks и Greylock Techfair.

Вы также можете участвовать в проектах с открытым исходным кодом.

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

Переход к открытому исходному коду в первый раз может быть пугающим. Две хорошие точки входа - это Google Summer of Code и статья Саяна Чоудхури об открытом исходном коде для начинающих. Github также только что выпустил собственное руководство с открытым исходным кодом. Найдите крутой проект и погрузитесь в него. Вы быстро освоите его.

Исследования - альтернатива проектам.

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

В будущем вы даже можете попросить свою команду направить вас в передовые компании. Помните, что исследование относится к разделу «Опыт», а не «Проекты» в вашем резюме.

Это может быть трудный баланс между проектом и школой.

Одна жалоба, которую я часто слышу: «У меня нет времени заниматься побочными проектами во время учебы». Я лично виноват в том, что время от времени говорю это.

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

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

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

Теперь, когда у вас есть некоторый опыт, вам нужно его куда-то положить.

Создание резюме

Написание резюме может показаться довольно простым, но есть множество нюансов. В конце концов, это первое, что о вас прочитают рекрутеры. Очень важно произвести хорошее первое впечатление.

… И нужно быстро произвести такое впечатление. Рекрутеры тратят в среднем шесть секунд на просмотр резюме. Вы не ослышались. Шесть секунд.

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

Вот несколько важных рекомендаций.

Легко сканировать:

  • Придерживайтесь одной страницы.
  • Если у вас нет опыта в дизайне, сделайте это черно-белым. Цвета шумные.
  • Придерживайтесь стандартного формата (хронологический, никаких необычных шрифтов, размер шрифта от 10,5 до 12 пунктов, поля от 0,5 до 1 дюйма). Стандартные форматы более удобны для чтения программами анализа резюме и легче просматриваются рекрутерами.
  • Будьте лаконичны. Текстовые стены отпугивают читателей.

Выделите ключевые моменты:

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

Срежьте жир:

  • Цель и Резюме не нужны.
  • Описания должны говорить что-то осязаемое. «Исключительный командный игрок» не работает. «Повышение коэффициента конверсии пользователей на 20%» делает.
  • Ваше резюме будут читать люди без технического образования, так что избавьтесь от запутанных деталей.

Не пренебрегайте деталями:

  • Включите наибольший из вашего совокупного среднего балла и основного среднего балла. Если они оба меньше 3,0, оставьте это отключенным.
  • Включите ссылки на живую демонстрацию или репозиторий Github для каждого проекта.
  • Не включайте то, о чем вам было бы неудобно отвечать на вопросы. Большинство людей совершают эту ошибку, перечисляя свои навыки.

Чтобы узнать больше, прочтите это.

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

Если у вас мало времени, используйте онлайн-конструкторы резюме.

Standard Resume и CakeResume - два выдающихся инструмента, которые позволяют с легкостью создать красивое резюме.

Если у вас нет профиля в LinkedIn, создайте его.

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

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

Готовимся к бою к собеседованию

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

Поведенческие вопросы

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

Чтобы справиться с поведенческими вопросами, вам нужен четкий ответ на «Расскажите мне о себе» и три истории, чтобы ответить на все остальные вопросы.

«Расскажите мне о себе» - это самый распространенный поведенческий вопрос, который вам задают, и вам нужно его подавить.

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

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

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

Подготовьте три истории, которые вы сможете рассказать, отвечая на все другие поведенческие вопросы.

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

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

Эту историю можно использовать, чтобы ответить на любой вопрос о лидерстве или преодолении трудностей. А теперь подумай о своем!

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

Благодаря этому вы сможете пройти любое поведенческое интервью. Чтобы узнать больше, прочтите раздел «Поведенческие вопросы» в «Cracking the Coding Interview».

Технические вопросы

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

Cracking the Coding Interview - один из лучших ресурсов.

Интервью Гейл Лаакманн Макдауэлл Cracking the Coding Interview - это квинтэссенция руководства по подбору персонала. Сначала прочтите раздел «Технические вопросы». Делайте заметки, чтобы помочь вам запомнить основные идеи.

Что касается практических вопросов, сконцентрируйтесь на разделах «Массивы и строки», «Связанные списки», «Стеки и очереди», «Деревья и графики», «Объектно-ориентированное проектирование», «Рекурсия» и «Сортировка».

Также ознакомьтесь с разделами «Управление битами», «Масштабируемость», «Базы данных», «Потоки и блокировки».

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

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

Завершение CtCI должно занять от трех до четырех недель самоотверженных усилий.

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

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

Прежде чем подавать заявление, постарайтесь ответить на 30–50 вопросов и хорошо разбираться в вопросах среднего уровня. Если вы делаете всего три упражнения в день, вы можете закончить 42 за две недели.

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

Хотя Leetcode - не лучший симулятор реальных собеседований, он феноменален для развития интуиции при решении проблем.

Имитация интервью очень эффективна, если вы делаете их правильно.

Уловка состоит в том, чтобы как можно точнее имитировать настоящее интервью.

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

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

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

Glassdoor- бесценный ресурс для информации о компании.

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

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

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

Сделайте ваше приложение уникальным

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

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

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

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

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

Процесс подачи заявки

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

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

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

Когда вы будете готовы подать заявку, используйте пятисторонний подход:

  1. Рефералы
  2. Написать рекрутерам
  3. Ярмарки вакансий
  4. Онлайн-приложения

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

Направления - единственный лучший способ провести собеседование.

Когда сотрудник кого-то направляет, это золотой знак поддержки. Рефералы составляют менее 10% заявок, но 20-50% возможных наймов.

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

Рекрутерам - это лучшее, что нужно после рефералов.

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

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

Чтобы найти адреса электронной почты, вам потребуется учетная запись LinkedIn. Найдите в LinkedIn компании, в которые вы хотите подать заявку, и отфильтруйте их сотрудников по рекрутерам. Затем установите Hunter или Slik, которые позволяют получить адрес электронной почты из профиля LinkedIn.

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

Ваши электронные письма должны быть краткими. Заявите о своем интересе к должности и кратко опишите свою биографию. Не забудьте прикрепить свое резюме. Чтобы сэкономить время, сделайте шаблон. Вам просто нужно изменить имя рекрутера, название компании и заявление о заинтересованности.

Если вы не получите ответа в течение недели, свяжитесь с нами. Если вы не получите ответа в течение следующей недели, свяжитесь с нами еще раз.

Ярмарки вакансий позволяют вам общаться с рекрутерами и инженерами.

Для ярмарок вакансий заранее проверьте, какие компании посещают. Запишите те, которые вам больше всего интересны, потому что у вас может не хватить времени поговорить со всеми из них. Распечатайте от 10 до 20 копий своего резюме, чтобы передать их рекрутерам. Будьте готовы ответить на вопросы о своем опыте и проектах.

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

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

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

Для хакатонов вы будете нацелены на одну компанию, которая вам действительно нравится, а не на 10-20. Спонсоры компаний откроют магазин на месте проведения. Это ваш вход.

Перед хакатоном найдите компанию-спонсора, на которую вы хотите нацелиться. Когда вы приедете, представьтесь его инженерам и рекрутерам. Используйте их API в своем проекте и взаимодействуйте с ними на протяжении всего хакатона.

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

Хакатоны также могут функционировать как косвенные ярмарки вакансий. Я знаю людей, которые брали интервью, разговаривая с инженерами и рекрутерами из компаний-спонсоров на хакатонах. Дополнительные советы по этой стратегии см. В статье Райана Нортона.

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

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

Slide into Tech, Easy Application List, Intern Supply и веб-сайт вашего учебного заведения по вопросам карьеры - отличные ресурсы для поиска открытых вакансий.

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

Меня много раз обжигало игнорирование обязательных сопроводительных писем и коротких ответов. Не торопитесь писать - покажет поспешный ответ.

Для подачи заявки онлайн я также рекомендую TripleByte. Сначала вы пройдете тест по кодированию. Затем TripleByte подбирает для вас лучшие компании и ускоряет процесс найма. Имейте в виду, что этот ресурс подходит только для поиска работы на полную ставку.

Победа на собеседовании

Для многих это самая нервная часть процесса, но не стоит беспокоиться. Интервьюер на вашей стороне (даже если кажется, что это не так).

Прежде чем мы продолжим, вам нужно помнить об одном.

Проявите энтузиазм!

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

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

Теперь давайте рассмотрим некоторые передовые методы проведения технических собеседований.

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

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

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

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

Работая над проблемой, постоянно сообщайте о своем мыслительном процессе. Как вы думаете, важнее, чем настоящий ответ. Говорите откровенно, но не болтайте бесконечно. Сделайте паузы, чтобы подумать, и позвольте интервьюеру сделать предложения.

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

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

Запомните эти советы, и вы будете готовы к успешным техническим собеседованиям.

В среднем процесс собеседования выглядит так:

Задача кодирования>Чат рекрутера>Телефонное интервью>Собеседование на месте

The process varies by company. Sometimes the recruiter chat will be first. Sometimes you won’t have a coding challenge. But the general structure is similar.

The coding challenge is a straightforward test.

It’s usually hosted on Hackerrank. I suggest doing a couple of questions on it ahead of time to get familiar with the format.

There’s no trick to the coding challenge. Pass as many tests as you can. With enough practice on Leetcode, this should be a walk in the park.

The recruiter chat is an informal conversation.

It’s usually for setting up the phone interview and answering any questions you have. You might get one or two behavioral questions. Once in a while, you might get trivia-esque technical questions like “Explain how a hashmap works.”

Candidates rarely get rejected at this stage (although I’ve managed to do just that a few times). Treat this as a chance to learn more about the company. Ask high-level questions — recruiters generally don’t know technical details.

Make sure to ask about the format of the rest of the interview process so you aren’t caught off guard by anything.

The phone interview stage is one to two rounds of technical interviews.

Sometimes you’ll do a video chat instead of a phone call. You’ll typically code out the answer in a shared editor like Collabedit.

If the connection is bad or you’re having trouble understanding the interviewer, speak up. You’re not going to get docked points, so don’t try to tough it through.

The onsite interview is three to six rounds of interviews with a lunch in between.

A day of back-to-back interviews is exhausting — get enough sleep beforehand! Onsite interviews are mostly technical, but some companies mix in behavioral and design rounds. The lunch is for you to learn more about the company, so relax a little.

During the interview, use the whiteboard to your advantage. Leave plenty of space on the right side and between the lines so you have room to make edits.

After the interview, don’t dwell on it. Thinking about it isn’t going to change the final result. Treat it as if you were rejected and continue applying and practicing.

Evaluating the offer

Congratulations! You got an offer! Give yourself a big pat on the back — you earned it.

But your work isn’t done yet. First, thank your recruiter and re-express your enthusiasm for the company. Then, ask for your offer in writing.

It’s time to negotiate.

A job offer isn’t an act of generosity — it’s a proposal to strike a deal. Naturally, a deal involves negotiation.

I’m not going to elaborate too much on negotiation tactics. Just read Haseeb Qureshi’s killer guide on negotiation.

Bear in mind some offers are non-negotiable, but it never hurts to try.

Avoid unpaid jobs. In 90% of cases, it’s not worth it. I’m all for prioritizing learning over pay, but at least work for a company that values you enough to pay you.

If you have more than one offer, congrats! You’re awesome. But now you have to make a decision.

Choosing which offer to accept is a nice problem to have. The best offer depends on the specific candidate, but here’s one universal suggestion I hope serves you well.

Make a list of 10 professional and personal goals you want to achieve in the next 10 years.

It could be anything, like paying off student loans, founding a startup, or mastering a new hobby. Choose the job that brings you closest to these goals.

Here are a couple more tips to remember:

  • Your future manager is vital to your career growth. Find a great mentor who will double as your champion.
  • Do internships at different companies to gain broader experiences. You’ll learn more and expand professional network.
  • Optimize for learning and growth over pay, unless the pay is really bad.
  • Work at one brand name company. It’ll make recruiting in the future easier, but know that it’s not the end of the world if you don’t have one.
  • Choice of programming language doesn’t matter. What matters is learning good engineering practices and how to work in a team.
  • Choose an engineering-first company with a software/hardware product.
  • Don’t forget about passion. It’s an amazing feeling building a product you believe in.

Conclusion

This brings us to the end of this guide. I hope that with this, you’ll be much better prepared than I was when starting a career in tech.

In the beginning, getting an offer might seem impossible, but the key is treating it as a series of milestones rather than one enormous task. If you make a little bit of progress every day, you’ll be there before you know it!

When you do get that dream job, don’t forget to give back. Share your experiences and extend referrals. Pass on the love, and we’ll all fly higher.

Thanks to Victoria Sun, Sophie He, Ritika Pai, and Calvin Lui for editing.

If this article was helpful, tweet it.

Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started

freeCodeCamp is a donor-supported tax-exempt 501(c)(3) nonprofit organization (United States Federal Tax Identification Number: 82-0779546)

Our mission: to help people learn to code for free. We accomplish this by creating thousands of videos, articles, and interactive coding lessons - all freely available to the public. We also have thousands of freeCodeCamp study groups around the world.

Donations to freeCodeCamp go toward our education initiatives and help pay for servers, services, and staff.