Реальное собеседование на Middle PHP разработчика (офер получен)
Полная запись собеседования Middle PHP-разработчика: самопрезентация кандидата, презентация вакансии и развернутый технический скрининг. В конце интервьюер объясняет последующие тестовые этапы.
Запись представляет собеседование на позицию Middle PHP-разработчика: кандидат рассказывает о работе над сервисом для сантехников, интеграциях с рекламными сервисами и оптимизации базы данных. Интервьюер описывает неназванный HR-консалтинговый проект по замене старого решения на Bitrix высоконагруженной системой, затем проводит техническую часть по PHP, ООП, SOLID, алгоритмам, SQL, ORM и DDD. В финале обсуждаются дальнейшие тесты на критическое мышление и социальный интеллект, а также подходы к написанию тестов.
Подготовьте связный рассказ о проектах: состав команды, свою зону ответственности, стек и измеримые технические проблемы — здесь спрашивали про интеграции, рефакторинг и оптимизацию запросов.
Повторите PHP namespaces и PSR-4, типизацию, declare(strict_types=1), магические методы, abstract class и interface, copy-on-write и SPL.
Уметь объяснить Big O на вложенных циклах и различать базовые структуры данных: массив, связанный список, хеш-таблицу, стек, очередь и дерево.
Для ООП-вопросов нужны не только определения инкапсуляции, наследования и полиморфизма, но и аргументация выбора между наследованием, интерфейсами и traits.
Повторите все принципы SOLID и покажите связь Dependency Inversion с тестируемостью: зависимость от интерфейса позволяет подменять внешний клиент mock-объектом.
По SQL подготовьте практический сценарий диагностики: slow query log, EXPLAIN, проверка схемы, лишних JOIN и полезности индексов; в беседе также обсуждалась денормализация ради производительности.