Тестовое задание: как оценивают ваш код работодатели

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

Новичкам еще сложнее — у них не хватает опыта, чтобы адекватно оценить качество своего кода. Максимум, на что может рассчитывать работодатель, — ссылка на GitHub-профиль, где его ждет пара-тройка учебных задач. Чтобы сэкономить время, руководители IT-отделов начинают с главного: предлагают соискателю написать код.

Тестовое задание: как оценивают ваш код работодатели - 4HIRES

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

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

Обычно в качестве тестовых заданий кандидатам дают абстрактные задачи, а не реальные бизнес-кейсы. По ним работодатель оценивает:

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


Сколько у вас времени?

Обычно работодатели подбирают такие задачи, которые потребуют у middle-разработчика не больше 7-8 часов, но джуниорам дают больше времени. Постарайтесь прислать результат не позже, чем через 3-5 дней. Помните, что единицы среди работодателей оплачивают выполненное тестовое. Но каждая решенная задача прибавляет вам опыта.

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


Вы пройдете собеседование, если ваш код:


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

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


2. Соблюдает общепринятые принципы:

SOLID — акроним для пяти основ­ных прин­ци­пов про­ек­ти­ро­ва­ния в ООП: прин­ципа един­ствен­ной ответ­ствен­но­сти (Single responsibility), откры­то­сти/закры­то­сти (Open-closed), под­ста­новки Бар­бары Лис­ков (Liskov substitution), раз­де­ле­ния интер­фейса (Interface segregation) и инвер­сии зависимостей (Dependency inversion);

KISS (акроним для «Keep it simple, stupid», то есть призыв не усложнять код),

DRY (акроним для «Don’t repeat yourself», призыв не повторяться) и другие.


3. Максимально прост

Новички усложняют код. Даже в решении простых задач они стремятся повторить стиль профессионала, используют приемы «из учебника», не до конца понимая, зачем они нужны. Результат выполнения такого кода сложно предсказать: он может выдавать неожиданные ошибки, его сложно читать и тестировать.

Тестовое задание: как оценивают ваш код работодатели - 4HIRES

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


4. Выдержан в едином стиле

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


5. Понятен, при необходимости пояснен комментариями

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

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


Если возникли сложности с тестовым: советы


Не уложились в срок? Покажите сделанное

Ваш потенциал виден даже в функциональности, не реализованной до конца.

Тестовое задание: как оценивают ваш код работодатели - 4HIRES

Задавайте больше вопросов

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


Энтузиазм не менее важен, чем качество кода

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


Тестовое задание: подводим итоги

Вывод и главный совет: не бойтесь выполнять и присылать тестовые задания. Работодатели закрывают глаза на ошибки, если видят логику в коде.

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

Практически все эксперты солидарны в главном: важнее всего в кандидате — умение думать. Всему остальному, при желании, вас смогут научить на новом месте работы. Удачи!


Напомним, что ранее мы писали о том, как будут проходить собеседовании в будущем.

Комментарии

mood_bad
  • Пока нет коментариев.
  • chat
    Добавить комментарий