itechart_logo

Олдскул или необходимость: почему тестовые задания популярны в IT и как их выполнять, чтобы получить оффер

Students Lab Development & QA

Почти каждый начинающий разработчик при поиске работы и даже стажировки сталкивается с необходимостью выполнить тестовое задание. При этом только 16% соискателей в сфере IT считают такой формат отбора оптимальным способом проверки знаний.

Зачем нужны тестовые задания и дают ли они правдивую картину навыков кандидата? Как только при помощи тестового задания обойти десяток конкурентов на позицию Junior?

Попросили высказаться на эту тему Глеба Стрельцова, Software Engineer iTechArt, который часто разрабатывает и проверяет тестовые задания для Scala специалистов в рамках стажировок Students Lab.

Наш собеседник
Стрельцов_Глеб_блог.jpg

Глеб Стрельцов

Software Engineer iTechArt

Ментор и куратор в Students Lab по направлениям Java и Scala. Участвует в разработке и проверке тестовых заданий.

Как часто этап собеседования на стажировки включает в себя тестовое задание? 

В целом, нечасто. Среди специалистов уровня Middle/Senior вообще довольно редко. В основном может встретиться при собеседовании кандидатов уровня Junior. 

Что даёт этот этап компании? Собеседования с рекрутером и техническим специалистом недостаточно?

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

Сколько специалистов обычно вовлечено в подготовку задания? Каково оно по объёму?

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

В каком формате соискатель получает обратную связь?

Традиционно через email в комбинации с телефонным разговором c HR. Обратная связь включает в себя отзыв о результате выполненного задания с перечисленными недостатками и достоинствами, а также решение о том, проходит ли кандидат на следующий этап с техническим собеседованием. Специалист, проверявший задание, готовит отчет о выполненном задании HR, а тот передает его кандидату. В случае неудачного выполнения кандидату могут быть даны рекомендации о том, какие моменты следует подтянуть, чтобы в будущем выполнить аналогичное задание успешно.

Некоторая часть людей считает тестовые задания откровенным архаизмом. Как часто приходится бороться с возражениями от кандидатов на счёт этого этапа?

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

Глеб Стрельцов, Software Engineer iTechArt

Для кандидатов уровня Junior тестовое задание может быть даже очень полезно с точки зрения консолидации своих знаний и дополнительной тренировкой практических навыков.

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

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

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

Самые распространенные ошибки, которые кандидаты совершают в тестовых заданиях и как их избежать?

Чаще всего наблюдаю следующие ошибки:

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

Как избежать этих ошибок? Твои топ-5 лайфхаков для IT-новичков, которые впервые столкнулись с необходимостью выполнить тестовое задание как один из этапов собеседования.

Советы:

  • Внимательно несколько раз прочитать задание.
  • Сделать пошаговый план по выполнению задания, потратить некоторое время на архитектуру. Это позволит намного быстрее и качественнее выполнить задание.
  • В первую очередь выполнить то, что обязательно требуется по заданию, и лишь потом, при наличии запаса во времени, приступить к опциональным пунктам.
  • Максимально отрефакторить и привести свой код в порядок перед отправкой.
  • Чем больше реализованных опциональных пунктов либо творческих улучшений от себя кандидат добавил в выполненное задание, тем лучше.