Написать пост

Как разработчику сделать тестовое, после которого возьмут на работу

Логотип компании МТС

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

Обложка поста Как разработчику сделать тестовое, после которого возьмут на работу

Получаете отказы после тестовых заданий? Или рекрутеры просто испаряются без обратной связи? Значит, пришло время разобраться, как делать тестовые так, чтобы получать заветные офферы.

В этой статье поэтапно разберём процесс работы над заданиями и основные моменты, на которых спотыкаются новички.

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

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

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

Не бойтесь новых технологий

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

Договоритесь о сроках сдачи

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

Как разработчику сделать тестовое, после которого возьмут на работу 1

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

Составьте план

Теперь, когда вы получили ответы на свои вопросы и знаете сроки сдачи, можно разбить тестовое задание на этапы. Например, в случае с разработкой сайта это будет создание html-разметки, потом css-стилей, затем добавление интерактивных элементов на JS, оптимизация изображений и сборка проекта.

Как выполнить тестовое задание

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

Используйте линтеры

Линтеры — программы, которые проверяют код на соответствие определённым стандартам. Такие скрипты используют, чтобы код был единообразным, когда над одним проектом работают несколько программистов. Разработчики могут договориться, как объявлять переменные и классы, использовать табы или пробелы (и если пробелы, то сколько штук), как форматировать код и т. д.

Если в тестовом задании не указано, какой стиль кода принят в компании, нужно использовать общепринятые стандарты. Например, для PHP это PSR и линтер PHP_CodeSniffer, для JavaSript — стандарт от Airbnb и линтер eslint, для Python — стандарт PEP8 и линтер flake8.

Вот такой код не пропустит линтер для Python, так как по правилам после операнда всегда должен быть пробел:

result = 5+ 7

Использование линтера сделает ваш код более «чистым» и покажет, что вы сможете работать над одним проектом с коллегами.

Тестируйте код

Почти во всех вакансиях, даже для новичков, есть требования по написанию юнит-тестов. Это самый простой способ проверить корректность работы отдельных компонентов приложения. Конечно, если они в нём есть — на лендинге или сайте с 5 статическими страницами всё можно сделать вручную.

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

Как разработчику сделать тестовое, после которого возьмут на работу 2
Пример вакансии для джуниора, где нужно уметь тестировать код

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

  • пакет jest для JavaScript
  • библиотеку testing-library для популярных фронтенд-фреймворков (React/Angular/Vue)
  • фреймворк PHPUnit для PHP
  • модуль unittest для Python и т. д. 

Используйте систему контроля версий

Прошли те времена, когда тестовое можно было прислать в виде архива — теперь хорошим тоном считается кинуть рекрутеру ссылку на свой проект на GitHub. А чтобы проект оказался в этом онлайн-хранилище кода, нужно уметь работать с системой контроля версий Git. Она хранит историю изменений (кто, что и когда поменял), позволяет возвращаться к предыдущим версиям приложения, добавлять свои изменения в общий репозиторий.

Так как Git сегодня используют в большинстве IT-компаний, то и в тестовом задании без него не обойтись. Ревьюер может посмотреть историю коммитов и то, как вы разрабатывали проект от начала до конца. Поэтому описания для них лучше делать понятными и короткими, желательно на английском языке.

Почитайте «Соглашение о коммитах» и используйте линтер Commitlint, который блокирует отправку коммита, если его описание не соответствует правилам.

Как разработчику сделать тестовое, после которого возьмут на работу 3

Делайте подробное описание проекта

Перед отправкой тестового задания не забудьте заполнить файл README проекта:

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

Если у проекта есть рабочая демонстрация, размещённая на GitHub Pages или вашем домене, оставьте на неё ссылку.

Описание проекта лучше делать на английском или на том языке, который используется в компании, выдавшей вам тестовое задание. Для этого можно использовать Google Translate или популярный в последнее время нейронный машинный переводчик Deepl.

Перепроверяйте критерии

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

Как разработчику сделать тестовое, после которого возьмут на работу 4
Как могут выглядеть критерии выполнения тестового задания

Как получить обратную связь

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

Как разработчику сделать тестовое, после которого возьмут на работу 5

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

Заключение

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

Следите за новыми постами
Следите за новыми постами по любимым темам
515 открытий1К показов