7 главных шагов для получения первой работы инженера

0
1302
views

Перевод статьи Стеллы Чанг “7 key steps to getting your first software engineering job”.

Шаги для получения первой работы

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

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

1. Сделайте портфолио из нескольких выдающихся проектов

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

Это значит, что если вы говорите, что знаете React, то у вас в портфолио должно быть по крайней мере одно приложение на React. Если у вас нет опыта работы разработчиком, портфолио минимум из трех проектов приобретает критическое значение. Эти проекты также не должны быть чисто учебными. Подходите к делу творчески! Чем интереснее проект для вас лично, тем больше труда вы в него вложите. И тем более увлеченным вы покажетесь, когда будете описывать его вашему интервьюеру. (Бонусные очки – создание также собственного сайта-портфолио!).

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

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

Что касается Git, все мои интервьюеры были приятно удивлены, что у меня есть опыт использования Git для контроля версий и совместной работы. Я советую вам тоже познакомиться с Git + Github. Если вы никогда не пользовались Git для командной работы, я настоятельно рекомендую сделать свой первый pull request в проект с открытым исходным кодом. Хорошие привычки в пользовании Git также имеют большое значение. Один из моих интервьюеров прошелся по моей истории коммитов чтобы посмотреть, «как я думаю», и я была очень рада, что это был проект с качественными commit messages.

Подготовьтесь к техническому собеседованию

Техническое интервью с применением белой доски

Есть много вариантов организации технического собеседования, но фактически для большинства компаний первым выбором является белая доска. Есть куча ресурсов, посвященных практике в этом вопросе (например, Pramp, InterviewCake и конечно Cracking the Coding Interview).

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

Я просто купила белую доску и стирающийся маркер, чтобы привыкнуть работать без редактора кода (поверьте, переход от написания кода с помощью линтера к письму на чистой стене ужасно раздражает!).

Не все компании попросят вас воспользоваться белой доской, но практически везде вам зададут основные технические вопросы, которые я называю тривиальными за неимением лучшего термина. Для тех позиций, на которые я претендовала, эти вопросы обычно касались HTML, CSS, JavaScript и производительности в веб. Списки распространенных вопросов можно найти на многих онлайн-ресурсах. Я просто сделала себе флэшкарточки и практиковалась с ними!

Есть несколько тем, с которыми каждый фронтенд- или full-stack веб-разработчик должен быть хорошо знаком. Они включают event loop в JS, promises и async/await, боксовая модель в CSS, приоритетность селекторов в CSS, а также способы ускорения загрузки веб-страницы. Мне эти вопросы задавали не единожды.

3. Определитесь, в какой компании и на какой должности вы хотите работать

Определитесь, чего хотите

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

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

  • Возможность решать сложные и интересные (для меня) задачи
  • Хороший баланс работа/жизнь
  • Возможность работать с современным стеком технологий.

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

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

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

4. Оставайтесь организованными и отслеживайте всё

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

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

Вот ссылка на шаблон, которым я пользовалась. (Для всех ботанов, не интересующихся электронными таблицами, Airtable, скажем так, это дитя любви Excel и реляционной базы данных). Что мне нравится в Airtable, это возможность связей между разными таблицами. Это позволяло мне сохранять полный список контактных лиц компаний и отдельных людей на странице «Люди», а самих компаний – на другой странице.

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

Например, вот разбивка результатов моих заявок на момент, когда я получила работу:

Разбивка по заявкам по вакансиям

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

Если же мы посмотрим на вакансии, по которым у меня был шанс пройти собеседование:

результаты собеседований

…все выглядит гораздо лучше. Доля предложений составляет 50%. По четверти вакансий, на которые я претендовала, я находилась в промежутке между интервью на момент, когда уже приняла одно предложение. Так что если бы я продолжила проходить собеседования, процент предложений работы мог бы быть и выше. Отказали мне после интервью только в одной компании (и это было скорее всего потому что я посмеялась, когда обнаружила, что их рабочая неделя составляет больше 60 часов – неловкий момент!).

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

Это подводит нас к следующей теме…

5. Напишите содержательное резюме и сопроводительное письмо

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

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

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

О резюме можно написать целую отдельную статью. Но в целом вы должны осветить технические аспекты вашего предыдущего опыта работы, которые в наибольшей степени имеют отношение к вакансии. Например, я работала в неприбыльной разработке и сборе средств – ничто в этих названиях не кричит: «веб-разработчик!». ОДНАКО я подчеркнула свою работу над переносом данных и управление ПО для сбора средств. Вдобавок я поместила три из моих самых релевантных проектов в портфолио в самый верх моего резюме. Таким образом мои рабочие способности были продемонстрированы ДО моего опыта работы.

6. Сеть!

IT-crowd
Примерно так я себя чувствую на этих собраниях.

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

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

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

И помните — это взаимовыгодный обмен! Многие компании предлагают реферральные бонусы работникам, так что им тоже может быть выгодно помочь вам.

7. Избегайте соглашаться на меньшее и торгуйтесь, торгуйтесь, торгуйтесь

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

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

Таким образом, когда бы меня ни спросили, каковы мои требования по зарплате, я говорила: «Моя желаемая зарплата составляет от $X до $X. Но деньги не самое главное. Я правда ищу компанию, где смогу продолжать расти и быть полезной в команде». Это был мой способ обозначить свои денежные интересы самым вежливым способом, какой я только знала. Я устанавливала диапазон чтобы показать свою гибкость, но при этом нижняя планка была суммой, которая меня бы на 100% удовлетворила.

И как только вы получите предложение работы, не бойтесь торговаться. За спрос не бьют в нос! Вы можете также обсуждать и другие вещ помимо зарплаты. Это может быть отпуск, дата начала работы, бонусы – вещи, более гибкие, чем зарплата.

Заключение

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

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



ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here