Вернуться в видеотеку

РЕАЛЬНОЕ СОБЕСЕДОВАНИЕ на Middle Backend разработчика

Техническое интервью для PHP backend-разработчика с разбором опыта кандидата, тестирования, эксплуатации сервисов, SQL и экосистемы Symfony. Вопросы затрагивают как реальные рабочие процессы, так и базовые теоретические темы.

Источник: Danil Bolotov IT

Открыть на YouTube

Таймлайн

Коротко о видео

Запись технического собеседования PHP backend-разработчика: интервьюер описывает анонимную fintech-команду и затем проверяет практический опыт кандидата. Кандидат рассказывает о разработке e-commerce-сервисов и интеграций с агрегаторами доставки, использовании PHP, Symfony, Yii2, PostgreSQL, MySQL, GitLab CI/CD, тестов и мониторинга. Во второй половине обсуждают диагностику багов на тестовом окружении, производительность БД, PHP, брокеры сообщений, Symfony и Doctrine; результата собеседования в материале нет.

Затронутые темы

Что взять на заметку

  • Подготовьте рассказ о проекте через конкретную задачу: кандидат описывает интеграции с доставками, единый интерфейс статусов и стратегию для разных провайдеров.
  • Уметь объяснить запуск cron-задач при нескольких репликах: в приведённом кандидатом случае etcd хранил выбранный инстанс, который должен запускать задачу.
  • Для вопросов о тестировании полезно связать локальный запуск, функциональные и unit-тесты, тестовую БД с фикстурами, GitLab CI/CD, PHPStan и SonarQube в единый процесс.
  • При разборе бага на тестовом стенде нужно последовательно сверять входные данные и переменные окружения, смотреть логи в Kibana, воспроизводить проблему и добавлять регрессионный тест в ветке от релиза.
  • Для проверки тяжёлого SQL-запроса нужно уметь наполнить БД реалистичными данными, проверить план через EXPLAIN и затем наблюдать медленные запросы, CPU и память в мониторинге.
  • Стоит отдельно повторить различия Kafka и RabbitMQ, типы exchange в RabbitMQ, события Symfony, Reflection, генераторы PHP, Active Record/Data Mapper и паттерн Unit of Work.

Рекомендуем посмотреть