Главная Блог Отклик и резюме

Тестовое задание: сколько времени тратить и когда отказаться

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

Что уточнить до начала

В тексте задания часто нет самого важного. Короткое письмо рекрутеру обычно снимает вопросы, и спрашивать — нормальная часть процесса. Если вы ещё на этапе первого звонка с рекрутером, спросите там.

  • Сколько времени вы закладываете? Если отвечают «сколько хотите», спросите, как выглядит типичное решение.
  • Что будете оценивать? Структуру кода, тесты, корректность, продуктовое мышление, умение объяснить? От этого зависит, куда вкладывать часы.
  • Какой срок и можно ли его сдвинуть? Неделю часто дают, если попросить.
  • Будем ли обсуждать решение на следующем этапе? Если да, описание решения становится ещё важнее.
  • Какие инструменты можно использовать? Язык, фреймворк, библиотеки, ИИ-ассистенты. Правила в компаниях разные — лучше спросить, чем гадать.
  • Оплачивается ли задание? Некоторые компании платят за длинные тестовые. Для всего, что дольше нескольких часов, вопрос уместный.

Запишите ответы — это и есть ваш объём работы.

Сколько времени тратить на тестовое задание

Определите бюджет до того, как откроете редактор, и запишите его. Разумная точка отсчёта — время, которое назвала компания, плюс немного на описание. Потом проверьте, реалистичен ли он: пробегитесь по всему заданию, разбейте на части и оцените каждую. Если ваша оценка вдвое больше заявленной, это полезная информация. Напишите рекрутеру, что сделаете в первую очередь, или спросите, подойдёт ли урезанная версия.

Несколько привычек, которые не дают времени расползтись:

  1. Сначала ядро. Добейтесь, чтобы основное требование работало целиком, и только потом полируйте.
  2. Контрольные точки. На середине бюджета посмотрите, что готово, и вычеркните то, что не влезет.
  3. Список «если бы было больше времени». Ведите его по ходу — он пойдёт в README, а не в лишние вечера.
  4. Остановитесь на бюджете. Честная пометка о том, что не сделано, лучше недели бесплатной работы, о которой потом пожалеете.

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

Когда отказаться от тестового и как

Отказ от тестового — не провал, а решение о том, куда идёт ваше время. Отказаться или попросить альтернативу вполне разумно, если:

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

Некоторые компании предлагают замену: лайв-кодинг или разбор кода, который вы уже писали. Не спросите — не узнаете. Подойдёт короткое вежливое письмо:

Спасибо за задание. Вакансия мне интересна, но сейчас я не могу выделить на тестовое [оценка времени]. Можно ли вместо этого провести лайв-кодинг или разобрать один из моих прошлых проектов? Если нет — понимаю и буду рад остаться на связи на будущее.

Кто-то откажет и закроет процесс. Это их выбор, а ваш — не менее законный. Отказ от задач, которые вы не потянете качественно, ещё и бережёт силы на длинной дистанции — об этом статья о выгорании при поиске работы.

Что сдать вместе с кодом

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

README, в котором есть:

  • как установить и запустить — в минимум шагов;
  • что сделано и какие требования покрыты;
  • ключевые решения и компромиссы: «Взял SQLite, чтобы не усложнять запуск; в проде был бы PostgreSQL»;
  • что бы вы сделали при большем времени;
  • примерно сколько времени ушло;
  • какие допущения вы сделали там, где задание неясно.

В самом коде:

  • несколько осмысленных тестов на основную логику вместо множества поверхностных;
  • понятные небольшие коммиты, если сдаёте репозиторий, — они показывают, как вы работаете;
  • никаких секретов, API-ключей и личных данных;
  • единое форматирование: прогоните форматтер и линтер.

Перед отправкой склонируйте своё решение в чистую папку и пройдите по README буквально. Всё, что сломалось, — исправьте.

После сдачи

Отправьте короткое письмо со ссылкой и спросите, когда ждать обратной связи. Запишите дату в трекер откликов и один раз напомните о себе, если срок прошёл. При отказе можно попросить фидбек: кто-то делится, многие нет.

Тестовые отнимают время, и выбирать, за какие браться, проще, когда хороших вариантов достаточно. Hot Jobs помогает держать воронку наполненной: присылает в Telegram новые вакансии с карьерных страниц 390+ компаний и двух площадок с удалёнкой — по выбранным ролям и регионам. Делать задание за вас бот, конечно, не будет. €3, оплата один раз. Подключить бота

Как удобнее оплатить?

Один платёж, без подписки. Роли в любом случае выберете в боте сразу после оплаты.