Хочу поделиться опытом проведения собеседований по SQL в формате лайфкодинга. За последний год у меня была возможность оценить множество кандидатов, и я заметил несколько общих признаков, которые бы хотел обсудить и дать небольшие советы.
Дисклеймер: Я понимаю скептицизм многих по поводу корректности проверки навыков SQL путем лайфкодинга на нескольких задачах. Мы в Авито на основании SQL скоринга не выставляем грейд, а просто принимаем решение hire/no hire. Соответственно и оцениваем мы больше подход к решению, а не знание синтаксиса
По части софт скиллов: зачастую кандидаты не слишком внимательно читают условия задач. Вместо того чтобы потратить немного времени на понимание всех условий, накидывание вопросов - они спешат писать код. В реальной работе же никто не сядет за клавиатуру без пытки заказчика уточнениями пока не станет все ясно (духота спасает аналитика от переработок). В большинстве задач (как реальных, так и тех что я встречал на собесах) есть подводные камни и формулировки которые можно понять неоднозначно. Может быть здесь будет полезный такой подход - представьте что это не собеседование а созвон с заказчиком какого-то странного эдхока.
По части хард скиллов: многие не очень хорошо ориентируются в теории SQL, часто просто механически используют функции, но не задумываются о том, как и почему они работают.
Например группировка. Часто ее рассматривают как некое следствие (группировка нужна для агрегации и расчета значений) а не как механизм -в котором расчет это последний этап, а один из первых - сбор уникальных групп. Когда задумываешься с этой стороны, можно найти группировке много интересных применений.
Иногда ставит в тупик кандидатов вопрос "Как ты думаешь, какой способ решения задачи будет оптимальнее?" Тут основной пункт - просто почитать статьи о том как работают разные СУБД и какие есть основные ошибки и альтернативные решения. Почитайте про индексацию и анализ планов выполнения запросов. Попробуйте использовать на практике если не пользовались раньше. Но конечно все зависит от СУБД.
Вобщем советы избитые, но думаю полезные - читайте документацию и практикуйтесь,
не стесняйтесь задавать вопросы,
представляйте что это реальный кейс с эдхок задачей.
Что вообще думаете про sql- скрининг биайщиков?
Post #107
561
- 👍 15
- 👌 1
- 🫡 1