Обложка статьи «Стоит прочитать: обзор книги Гейл Макдауэлл «Карьера программиста»»

Стоит прочитать: обзор книги Гейл Макдауэлл «Карьера программиста»

Антон Дрелин

Антон Дрелин, ведущий разработчик в Usetech

Я прочел книгу «Карьера программиста», автором которой является Г. Лакман Макдауэлл, несколько лет назад, еще до начала работы в компании Usetech, но она до сих пор остается одной из моих самых любимых. Правда, мне пришлось вспомнить о ней и перечитать во время периода самоизоляции, когда мы с моими «mentee» начали разбирать аспекты его опыта и карьерный рост.

У книги «Карьера программиста» есть несколько неоспоримых преимуществ:

  • написана легким и понятным языком;
  • первая ее часть, с 5 по 8 главу, содержит подробное описание собеседований, особенностей их прохождений, составления «грамотного» резюме, разбор основных вопросов на которые стоит обратить внимание;
  • в главе 9 представлены задачи, которые может получить на техническом собеседовании любой специалист из IT-индустрии;
  • В 10 и 13 главах представлены ответы, чтобы вы могли проверить свои знания и подсказку.

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

За кулисами крупных и небольших компаний

Начинает свою книгу Г. Лакман Макдауэлл с рассказа о том, как проходят собеседования в различных ИТ-гигантах – Microsoft, Amazon, Google, Apple, Facebook и тд. Автор подробно рассматривает процесс найма в эти компании и особенности каждого этапа собеседования. Также даны рекомендации, на что стоит обратить внимание и какие ответы ожидает услышать нанимающий персонал.

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

  • Необходимо тщательно готовиться к каждому интервью.
  • Предварительно собеседование = полноценное собеседование, по результатам которого вас могут не допустить до следующего этапа.
  • Будьте готовы к тому, что в больших компаниях может быть 4-7 этапов собеседований и только треть из них – технические.

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

Нестандартные случаи

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

Отдельно указаны частые вопросы (базовые, расширенные, специализированные, дополнительные) и варианты ответов на них. Причем автор дает нам уникальную возможность посмотреть на собеседование с двух сторон – соискателей и интервьюеров.

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

Раздел, который «must have» для прочтения всем и каждому. Из него вы почерпнете, что должно быть в хорошем резюме, как получить эти галочки и где «добыть» опыт, который будет релевантен и интересен потенциальному работодателю. Например, автор утверждает, что резюме не должно превышать 1,5-2 страницы, а, в идеале, укладываться в 1.

Цитата автора:

Рекрутеры тратят на одно резюме в среднем около 10 секунд. Если вы сократите размер и укажете в резюме только самые заметные детали, их наверняка заметят. Обилие информации только отвлекает рекрутера от того, на что следовало бы обратить его внимание.

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

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

Не стоит забывать о том, что интервьюеры допускают вас до технического интервью не сразу, а, как правило, первоначально проверив ваши «soft skills». Нередко именно в ИТ индустрии специалисты «отваливаются» именно на этапе проверки поведенческих навыков. Но и к таким вопросам можно подготовиться. Автор рекомендует пройтись по всем компонентам резюме и проекта и разложить их в таблицу. Найдите несколько слов по каждому вопросу и убедитесь, что вы можете это все обсудить.

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

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

  • На собеседовании стоит больше рассказывать о себе, а не команде.
  • Воспользуетесь методами SAR (Situation, Action, Result – ситуация, действие, результат) или «Сначала суть», которые помогут дать структурированные ответы на поведенческие вопросы.
  • Даже правильное окончание беседы может сыграть в вашу пользу.
  • Потренируйтесь рассказывать о себе перед интервью, структурируйте ответ

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

Технические вопросы и задания

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

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

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

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

Задания технического раздела содержат задачки по деревьям и графам, головоломкам (на логику), ООП, масштабированию и проектированию систем, сортировке и поиску, тестированию, С++, Java, базам данных и т. д.

Я очень рекомендую прочитать эту книгу всем, первая часть книги «Карьера программиста» будет полезна любому соискателю, а вторая часть – любому специалисту, работающему в IT индустрии.