5 ошибок, которые вы допускаете на технических собеседованиях

Перевод статьи «5 Mistakes You’re Making In Your Technical Interviews & How To Avoid Them».

Ошибки на технических собеседованиях

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

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

1. Вы не задаете вопросов

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

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

Если вы совершенно не понимаете суть проблемы или не уверены, есть ли какие-то ограничения, – спросите!

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

Давайте рассмотрим другой сценарий.

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

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

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

А компаниям хотелось бы, чтобы вы потратили время и поискали информацию о них (даже если это всего пять минут поисков в гугле).

Вот некоторые вопросы, которые вы можете задать:

  • Я видел, что ваша компания недавно приобрела X; как это повлияет на Y?
  • Каков у вас баланс жизни и работы?
  • Какие возможности вы предоставляете для расширения набора навыков и обучения? (Имеются в виду книги, посещение конференций, доступ к образовательным платформам).
  • Как проходит ваш обычный рабочий день?
  • Почему вы решили работать именно в этой компании?
  • Что вам больше всего нравится в работе здесь?

2. Вы сразу пытаетесь создать наиболее оптимизированное решение

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

Совершенно нормально начать с брутфорс-решения, а затем его оптимизировать.

Давайте возьмем пример.

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

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

Брутфорс-решение

 

Что делается в этом примере?

  • Мы создали объект под названием alphabetDictionary, который содержит каждую букву алфавита, и число (начиная с нуля), показывающее, сколько раз эта буква встречается в массиве.
  • Затем мы перебираем массив для каждой буквы, увеличивая значение в alphabetDictionary.
  • На третьем этапе мы просматриваем alphabetDictionary и определяем, сколько раз встречалась каждая буква. Если она попадалась четное количество раз, мы делим общее число на 2 (чтобы получить правильное количество пар) и добавляем результат к переменной numPairs. Если буква была найдена больше двух раз, но число нечетное, отнимаем единицу от общего числа (чтобы сделать его четным), затем делим на два (чтобы получить число пар) и добавляем результат к переменной numPairs.
  • Затем возвращаем значение numPairs.

Здесь очень много текста, но решение работает! Давайте посмотрим, как сделать его более элегантным.

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

Оптимизированное решение

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

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

3. Вы решаете задачу мысленно

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

Даже если вы не уверены в своем решении, озвучьте все, что знаете. Чего не хватает?

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

Собственно, интервьюера больше заботит именно ваша способность решать проблемы, а не то, найдете ли вы на 100% правильное решение.

4. Вы не до конца честны относительно своего опыта в определенных технологиях

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

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

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

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

Вместо этого всегда можно сказать что-то вроде «Я прошел несколько вступительных курсов по React, но не работал с ним на профессиональном уровне. А это как раз то, что мне хотелось бы попробовать».

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

Честность - лучшая политика

5. Вы предпочитаете «лить воду», вместо того чтобы честно признаться, что не знаете ответ

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

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

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


[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]

Оставьте комментарий

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

Прокрутить вверх