Собеседование PHP, Тильда паблишинг
Техническое интервью PHP-разработчика с блоками по языку, базам данных, безопасности и проектированию. Во второй половине обсуждаются тестовое задание, фича подтверждения телефона и устройство команды работодателя.
- Опубликовано на YouTube:
- Просмотры на YouTube: 4,5 тыс.
- Лайки на YouTube: 95
Таймлайн
Коротко о видео
Запись показывает техническое собеседование PHP-разработчика: интервьюер проверяет основы ООП в PHP, обновление версий, генераторы, MySQL, индексы, транзакции, репликацию и безопасность. Затем они разбирают выполненное кандидатом тестовое задание и дают задачу спроектировать добавление и подтверждение номера телефона в профиле пользователя — от интерфейса до API и хранения данных. В конце кандидат расспрашивает о микросервисной архитектуре, документации, тестировании и процессе постановки задач; интервьюер обещает передать результат HR и описывает возможный следующий этап с техническим и операционным директорами. В авторском описании сказано, что после этого автор работал в компании недолго и ушёл во время испытательного срока; это авторское утверждение, а не результат, озвученный в интервью.
Затронутые темы
Что взять на заметку
- Подготовить объяснение различий protected/private, self/static, магических методов, абстрактных классов и интерфейсов, включая множественное наследование интерфейсов.
- Для миграции PHP уметь назвать проверку автотестами, изменения поведения языка и аудит Composer-зависимостей на совместимость с целевой версией.
- Уметь обосновать потоковую обработку больших файлов: читать их частями, не загружая целиком в память, и применять итераторы или генераторы.
- По MySQL нужно объяснять устройство индексов, замедление записи из-за обновления индексов и зависимость эффективности составного индекса от порядка полей и реальных запросов.
- Подготовить сценарии транзакций: атомарность связанных изменений, блокировки, уровни изоляции, грязные и неповторяющиеся чтения.
- Для безопасности назвать валидацию входных данных, параметризованные SQL-запросы, экранирование HTML при выводе и запрет исполнения недоверенных шаблонов или команд.
- В системной задаче полезно начинать с пользовательского сценария, затем описывать API, состояния подтверждения телефона, хранение данных и удобные сообщения об ошибках.