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

Или, если задание хорошее, как-то так:

Пример хорошего тестового задания.

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

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

Читайте задание внимательно

Конечно, если есть что читать — иногда тестовые дают просто на словах на собеседовании. Такое редко, но всё ещё случается.

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

Задавайте вопросы

Тестовое — не экзамен в университете. За него не будут ругать (ну, почти никогда). Не возьмут на работу — да, но ругать — вряд ли.

Если не получается или что-то непонятно — задайте уточняющий вопрос. Задания пишут живые люди, и там вполне может быть какая-нибудь непонятная формулировка или противоречащие друг другу пункты. Программисты в компании могли придумать задачку и между собой решить: «О, смотри, какое классное задание, все ж понятно?». А вы читаете и думаете: «А что мне с этим делать? Слова какие-то непонятные».

Будьте начеку

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

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

Не воруйте тестовые задания

А вот здесь уже серьёзно. Воровать вообще плохо, а если речь о коде, то легко всё проверить и отказать.

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

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

Если вы всё-таки решили взять чужое тестовое, то оно должно быть сделано хорошо. Шутка.

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

Проверьте, что всё работает

Звучит очевидно, но иногда от воодушевления (или усталости) можно забыть про какие-то очевидные моменты в готовом задании. Даже если вы уже во всем уверены, пройдитесь по пунктам и посмотрите, что у вас всё открывается и кликается, стили грузятся, ничего не развалилось, а адаптив работает везде, где попросили.

Должно ли тестовое оплачиваться?

Здесь есть разные мнения. Но точно не стоит на своём первом собеседовании начинать разговор о тестовом задании с такой фразы:

Мы можем начать наше продуктивное сотрудничество с такой-то часовой ставки

Джун на первом собеседовании о тестовом задании

Это плохо, и вот почему.

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

Что делать с тестовым заданием?

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

Список литературы на лето