Что нужно помнить и как подготовиться.

Я работаю инженером-программистом около двух лет, почти полтора года в моей нынешней компании. Около 6 месяцев назад я начал делать экраны для телефонов (кстати, моя компания, Honor, нанимает - https://www.joinhonor.com/careers). Я, конечно, не могу сказать вам, что мы спрашиваем или каковы ответы, но, надеюсь, я смогу дать небольшое представление о том, что может искать и ожидать стартап среднего размера.

  1. Помните, что мы хотим нанять вас. Вы (вероятно) не проходите собеседование, потому что нет никаких вакансий, но кто-то подумал, что вы просто круто, это потому, что у нас есть для вас работа, и чем раньше мы найдем кого-то для этой работы, тем меньше времени будет потрачено собеседование, и тем больше времени у нас будет на решение проблем, которые мы пытаемся решить. Каждый экран телефона, который хорошо работает, - это экран телефона, который мне, возможно, не придется делать позже.
  2. Когда вас просят поговорить с нами о том, над чем вы работали, выберите то, о чем вы можете подробно рассказать. Конечно, у многих компаний есть сложные проблемы, и они могут дать обзор того, в чем проблема важно, но вы подаете заявку на работу инженером-программистом, поэтому будьте готовы поговорить о разработке программного обеспечения.
  3. Если вы в настоящее время не работаете над сложными проектами или ваша роль в сложном проекте очень поверхностна, прочтите чужой код. Это не только упростит вам обсуждение проекта и того, что в него вошло, какие технологии использовались и как они работают, но и сделает вас лучшим инженером. Один из моих любимых советов от одного из инструкторов Dev Bootcamp заключался в том, чтобы читать по 1000 строк чужого кода в день. Прямо сейчас я легко делаю это, просто просматривая код других людей и выясняя, как что-то делать в нашем приложении на основе того, что уже есть. Для этого может потребоваться немного больше усилий и выделенного времени, если вы не в состоянии делать много проверок кода или работать над сложными проблемами, но привыкание к этому поможет вам лучше понять дизайн приложения. стандарты кодирования и как думать о проблеме.
  4. Посмотрите, какие технологии используют компании, которые вы предлагаете. Если в вашем резюме есть совпадающие технологии, будьте готовы поговорить об этом. Предположим, вы использовали Angular в личном проекте, поэтому вы указали его как что-то, что вы знаете, будьте готовы ответить на вопросы о том, как работает фреймворк и как вы можете использовать его для решения данной проблемы.
  5. На концептуальный вопрос не всегда есть правильные или неправильные ответы, но будьте готовы ответить на вопрос «Почему?» Есть много способов решить проблему, и да, некоторые из них лучше, чем другие, но часто нас также интересует ваш мыслительный процесс, объясняющий, почему вы выбрали определенный путь, или, может быть, вас интересует чтобы увидеть, как вы относитесь к обсуждению решения и получению обратной связи.
  6. Если вы младше, мы также пытаемся оценить ваши возможности для роста. Всем известно, что если у вас нет такого опыта или большого опыта, который вам понадобится на работе, даже людям, которые занимаются бизнесом десятилетиями, необходимо учиться и адаптироваться на новой работе. Что становится очень важным, так это то, насколько вы готовы и способны брать вещи. Кажется, вам нравится получать новые знания о чем-то, о чем вы уже знаете хотя бы немного? Вы знаете, где вам нужно расти? Можете ли вы определить несколько вещей, над которыми вы пытаетесь работать? Если кто-то спросит вас «в чем ваша самая большая слабость», а вы ответите «программирование», извините, вам, вероятно, не удастся пройти еще одно собеседование.
  7. Ожидайте, что придется написать код. Если вы проводите второе собеседование после того, как уже получили от рекрутера или первоначального специалиста «этот человек может иметь потенциал, но не сумасшедший», вам, вероятно, придется закодировать маленький. Всегда приятно получать информацию заранее, но даже если они не говорят вам, этого следует ожидать. Если вы начинаете отключать что-то вроде вспомогательной функции, чтобы что-то сделать, спросите. Да, если вы забудете, какая вспомогательная функция списка для длины находится на каком бы то ни было языке, на котором вы пишете, это может быть учтено при принятии решения, но не так сильно, как если бы вы начали итерацию по списку, используя счетчик, чтобы найти длина (если конечно проблема не в этом, но, вероятно, это не так).

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

Удачного поиска работы!