Найти в Дзене
Geek Export

Какие бывают тестовые задания в карьере программиста

Как IT компании оценивают техническую компетенцию? Какие бывают тесты?
Оглавление

Как компании оценивают техническую компетенцию? Очень часто после первого скрининга кандидата компании высылают тестовые задания. Сегодня разберемся какие они бывают с примерами.

Реальные задачи

Обычно высылают письмо с описанием и/или репозиторием в GitHub. Сам проходил таких наибольшее количество. Обычно дают примерно неделю на завершение, но можно взять и чуть больше времени. Особенно актуально для тех, кто уже работает. Примеры: парсер для файла приложений с зависимостями, использовать openweather api для фронтэнда/бэкенда. Упор нужно сделать на простой и понятный код, четкую документацию в Readme и юнит-тесты. На собеседовании точно будете обсуждать решение. Нужно быть готовым объяснить свои идеи.

Задача с использованием алгоритмов

Также компании дают задачи, в которых нужно использовать знания структур данных (data structures) и алгоритмов. Такое испытание обычно коварно тем, что нужно не просто погуглить или посмотреть на Stack Overflow, а найти оптимальное решение. Иногда даже просят объяснить сложность, например. Обычно любят комбинировать реальные задачи с алгоритмами. Особенно популярная тема это теория графов и бинарные деревья. Главное не переживайте из-за низких баллов, ведь некоторые компании вручную просматривают решения.

Задачи на время

Самые коварные и сложные из перечисленных типов. Обычно используются готовые платформы - HackerRank и CodeSignal. Это те, которые я реально получал. Компании дают время для того, чтобы открыть ссылку. Перед этим - зайдите на сайт и пройдите пробное задание. Может быть полезно потренироваться на leetcode, codewars, project Euler. Нужно определиться со стратегией прохождения таких испытаний. Можно работать на то, чтобы больше решить, а можно наоборот сделать одну задачу, но максимально хорошо. Решать вам, конечно же. Но тренироваться стоит. Можете даже ставить таймер на 20-30 минут. Хорошо также начать с простых задач. Чаще всего такими считаются те, где нужно совершать операции со строками или массивами.

Конечно для европейских и американских компаний задачи будут различаться. Какие-то компании проверяют инженера/разработчика уже на собеседовании. Готовиться к coding task стоит во время поиска работы, когда это становится более актуальным.

Больше читайте на нашем канале в Телеграм.