Один из частых вопросов HR-специалистов после внедрения SQL-скрининга: «Это хороший результат или плохой?» 50% — это много или мало? Кандидат решил 3 из 5 задач — брать или нет?
В этой статье — ориентиры по средним результатам SQL-тестов в зависимости от уровня позиции и типа задач.
Почему абсолютные цифры мало что значат
Прежде чем смотреть на бенчмарки, важно понять: результат сильно зависит от сложности теста. Тест из базовых SELECT-запросов с JOIN покажет 80%+ у большинства кандидатов на middle-позицию. Тест с оконными функциями и CTE — уже 40–50% у тех же людей.
Поэтому бенчмарк — это всегда пара: сложность теста + ожидаемый результат.
Средние результаты по уровням
Junior (0–1 года опыта)
Типичные задачи: SELECT с фильтрацией, простые JOIN, GROUP BY + COUNT/SUM.
| Результат | Интерпретация |
|---|---|
| 0–30% | Базовые знания отсутствуют |
| 31–50% | Слабый уровень, потребуется длительное обучение |
| 51–70% | Норма для джуна без опыта работы |
| 71–85% | Хороший результат, кандидат учился на практике |
| 86–100% | Отличный джун, выше ожидаемого уровня |
Проходной балл для джуна: от 55–60% на базовом тесте.
Middle (1–4 года опыта)
Типичные задачи: сложные JOIN, подзапросы, агрегация, базовые оконные функции.
| Результат | Интерпретация |
|---|---|
| 0–40% | Уровень явно не соответствует заявленному |
| 41–55% | Скорее джун, чем мидл |
| 56–70% | Средний мидл |
| 71–85% | Уверенный мидл |
| 86–100% | Сильный мидл, близко к сениору |
Проходной балл для мидла: от 65–70% на среднем по сложности тесте.
Senior (4+ лет опыта)
Типичные задачи: оконные функции, CTE, рекурсивные запросы, оптимизация, объяснение EXPLAIN.
| Результат | Интерпретация |
|---|---|
| 0–50% | Не тянет на сениора |
| 51–65% | Может быть сильный мидл |
| 66–80% | Норма для сениора |
| 81–90% | Сильный сениор |
| 91–100% | Исключительный результат |
Проходной балл для сениора: от 70–75% на сложном тесте.
Время выполнения как дополнительный маркер
Результат без учёта времени — неполная картина. Обращайте внимание:
Решил быстро и правильно — кандидат работал с этими конструкциями регулярно, знание автоматическое.
Решил правильно, но долго — знания есть, но навык не закреплён. Норма для джуна, тревожный знак для сениора.
Решил быстро, но неправильно — возможно, угадывал или торопился. Стоит уточнить на интервью.
Не решил и потратил всё время — задача была слишком сложной, либо кандидат плохо владеет SQL.
На платформе SQL Lab в результатах видно время выполнения по каждой задаче — это помогает понять не только «что», но и «как» решал кандидат.
Что влияет на средний результат
Тип позиции
- BI-аналитики часто показывают результаты ниже на задачах с оконными функциями — в BI-инструментах они используются реже.
- Backend-разработчики могут хуже справляться с аналитическими задачами, зато лучше — с оптимизацией.
- Data Engineers обычно сильны в сложных JOIN и CTE, слабее в оконных функциях.
Источник кандидатов
Кандидаты из IT-компаний в среднем показывают результаты на 10–15% выше, чем из традиционных отраслей с тем же опытом. Это нормально — уровень задач в разных компаниях сильно различается.
Условия прохождения теста
Удалённый тест без наблюдения и с возможностью пользоваться интернетом даст результаты выше, чем тест в офисе. Если ваш тест проходят дистанционно — учитывайте это при трактовке результатов.
Как использовать бенчмарки на практике
1. Установите проходной порог заранее. Не после просмотра результатов первого кандидата, а до начала найма. Это помогает избежать субъективности.
2. Сравнивайте внутри одного теста. Осмысленно сравнивать результаты кандидатов, прошедших один и тот же тест. Разные тесты — разная сложность.
3. Не ориентируйтесь только на балл. 65% с хорошим паттерном рассуждений на интервью лучше, чем 85% от кандидата, который не может объяснить своё решение.
4. Первые 5–10 кандидатов — калибровка. Посмотрите на распределение реальных результатов по вашему тесту, прежде чем делать выводы. Рынок в каждой нише разный.
Итог
Не существует единственно правильного «нормального» балла — всё зависит от сложности теста и позиции. Используйте таблицы выше как стартовую точку, а затем калибруйте на основе реальных данных по вашим кандидатам.
SQL Lab показывает результаты в сравнении с другими кандидатами на тот же тест — это помогает быстро понять, где находится конкретный человек относительно общей выборки.