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

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

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

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

Давайте конкретизируем на примере. Предположим, рекламируется вакансия, требующая опыта работы с C # и Node.js. У вас есть опыт работы с обоими способами, поэтому вы не думаете о подаче заявки, но есть проблема. У вас только одно резюме, и, поскольку оно рассылается в разные компании (все с разными потребностями), вы решили перечислить в нем все свои навыки:

C / C ++, C #, ASP.Net, Java, Python, Ruby, MongoDB, SQL, PHP, Go, JavaScript, React, Vue, Perl, R, Kotlin.

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

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

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

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

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

  • Уровень ответственности (от начала до конца)
  • Какие проблемы вы обычно решали
  • Технологии, используемые для их решения

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

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

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

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

// not something I've done before but found this example on 
// stackoverflow which seems to work!

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

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

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

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

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

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

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

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

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

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