Реальное собеседование на Middle PHP разработчика (офер получен)
Техническое интервью Middle PHP-разработчика с разбором опыта кандидата, SQL и архитектурных вопросов. В конце работодатель рассказывает о задачах своих команд, связанных с торговыми системами и внутренней автоматизацией.
Запись показывает техническую часть собеседования на Middle PHP-разработчика: кандидат рассказывает о проектах на Symfony, React и Vue.js, а также об оптимизации запросов, Doctrine, PostgreSQL и полнотекстовом поиске. Интервьюер последовательно проверяет SQL, индексы, EXPLAIN, регулярные выражения, Git, возможности PHP, SOLID и шаблоны проектирования. В финале интервьюер описывает две команды разработки, автоматизирующие дилерские операции, партнёрские сервисы и коммерческие расчёты в финансово-торговом бизнесе.
Подготовьте рассказ о проектах в формате «задача — личный вклад — технология — результат»: здесь кандидат разбирает Symfony-проекты, административный интерфейс, интеграции и корпоративное приложение для исполнителей.
Для SQL важно уверенно объяснять разницу между WHERE, GROUP BY и HAVING, а также уметь строить запрос для получения последней котировки по каждому инструменту, когда одной агрегации MAX недостаточно для выбора всей строки.
Нужно понимать практические ограничения B-tree: индекс обычно не помогает для LIKE с ведущим %, составной индекс зависит от порядка его полей, а индекс по полю с низкой кардинальностью может не дать выигрыша.
Оптимизацию запросов стоит описывать как процесс: найти медленные запросы, изучить EXPLAIN, сократить лишние JOIN, добавить обоснованные индексы и при необходимости использовать более подходящий SQL вместо тяжёлой ORM-генерации.
На собеседовании могут спросить не только синтаксис PHP, но и позднее статическое связывание, PSR, статический анализ, уровни ошибок и обработку исключений.
Нужно уметь связать SOLID и паттерны с реальной реализацией: программирование через интерфейсы упрощает подмену зависимостей в тестах; среди обсуждённых паттернов — Decorator, Bridge, Observer и Builder.