Что должен знать Junior PHP Developer
Время идет вперед, технологии появляются, меняются и умирают. Также меняется и отношение к тому, что должен знать и уметь младший php-разработчик. В этой статье я приведу требования к тому, что будет ожидаться от кандидата на роль Junior PHP Developer на конец 2020 года в России.
Литературная база для младшего php-разработчика
У многих рекрутеров и тим-лидов есть острая неприязнь к «вайтишникам», которые прошли какие-то ускоренные курсы по PHP, посмотрели какие-то вводные уроки по CMS или фреймворкам и пошли искать работу. Ибо есть четкое понимание, что такой кандидат начнет валиться на простых теоретических вопросах, и ничего не сможет показать на практике.
Поэтому обязательно возьмите книгу по PHP на 1000 страниц (например, «PHP 7 в подлиннике») и прочтите её полностью. В этой книге вы поймете, почему был придуман PHP, как развивался PHP, как работает PHP под капотом и многое другое. Это очень хорошая база, которая сразу выделит вас среди других кандидатов.
Особенно круто, когда на какой-то вопрос вы говорите, «Я практически этого не делал, но согласно книге «PHP 7 в подлиннике», оно будет работать так».
Тоже самое касается и HTML/CSS/JS/MySQL, которые вам также нужно будет подучить.
Теоретическая база для рhp-разработчика – основные требования
- Знать принцип работы php, как компилируемого языка программирования
- Знать представление о базовых типах данных, структурах управления потока выполнения, приоритете операций.
- Понимание концепции области видимости и пространства имен.
- Уверенная работа с массивами и их методами.
- Понимание ООП.
- Уверенная работа с обработкой исключений.
- Понимание, что такое MVC/ORM.
- Понимание, что такое Depedency Injection в базовом виде
- Понимание, что такое Сomposer
Большую часть требуемой информации вы узнаете из книги по PHP. Все остальное достаточно быстро добирается из бесплатных роликов на YouTube.
Также нужно понимать, что иногда попадаются люди, кто начинают задавать какие-то заковыристые вопросы, которые при работе не нужны, но «опустить» кандидата на собеседовании могут. Поэтому просто гуглим «Вопросы к собеседованию по PHP» и заучиваем их.
Практическая база для младшего php-разработчика
Когда мы собеседуем кандидата на роль младшего PHP-разработчика, мы ожидаем, что кандидат будет уметь:
- Устанавливать, обновлять PHP и его экстеншены на рабочую станцию.
- Устанавливать и работать в PhpStorm (главная среда разработки для php-разработчиков).
- Устанавливать и работать с MySQL на рабочей станции.
- Умение устанавливать пакеты Composer на рабочую станцию.
- Понимание, что такое GIT на теоретическом уровне.
- Иметь практический опыт с выбранным фреймворком или CMS (локальная разработка, настройка базовых конфигураций, развертывание на реальный хостинг).
- Возможность ориентироваться в документации PHP и выбранного фреймворка или CMS.
И всего этого можно добиться лишь единственным способом – сделать пет-проект (пробный, домашний сайт) и установить его на реальный хостинг с настоящим доменом.
На это потребуется порядка 3-5 месяцев, но зато вы реально поймете, как выглядит реальная работа разработчика (хоть и в урезанном виде), вы станете ориентироваться в инструментах, вы будете знать, куда идти за документацией.
Также при собеседовании вы сможете показать этот сайт, и работодатель поймет, что вы реально можете что-то делать.
А это не слишком для младшего PHP-разработчика
Вы уже могли обратить внимание, что я главным образом делаю акцент на полноту теоретической базы, знание конкретных инструментов разработки и практический опыт. И к сожалению, это не мое желание нанять «мидла» по цене джуниора, а реальная ситуация на рынке.
Сейчас уже мало кого волнует, может ли человек назвать все типы данных PHP или провести сортировку пузырьком. Априори считается, что кандидат это должен знать. Сейчас отбор идет уже среди тех, кто знает полностью теорию и уже может что-то делать руками (т.е. иметь практический опыт). Требования постепенно растут.
Уверенность и готовность учиться
Вы должны придерживаться позиции, что если вы чего-то не знаете, то вы оперативно поднимете документацию и разберетесь в том, как это работает. Поэтому вас не пугает, что на проекте у работодателя используется какая-то другая база данных, какой-то другой фреймворк или какие-то дополнительные инструменты, которые вы еще не изучали. Поэтому показываем работодателю готовность учиться и уверенность, что вы с этим справитесь.
Ну и не забываем про общую опрятность и доброжелательность. С большой вероятностью первоначально вас будет опрашивать девушка, поэтому нужно выглядеть более менее адекватно, и стараться общаться позитивно. Угрюмых, к сожалению, часто отсеивают до того, как успеют оценить их реальные знания.
Тестовое задание
На начальных позициях в большинстве мест вам придется выполнять тестовые задания, так как работодатель хочет получить перспективного джуна, а не джуна, который будет поднимать лапки и плакать. Поэтому относиться к ним нужно адекватно.
Однако я все же рекомендую брать тестовые задания после первого собеседования, когда вы оценили компанию и поняли, что вы хотите тут работать. Ибо порой вы пишете отклик на вакансию, вам робот присылает тестовое задание, вы его делаете, а потом его никто не смотрит, ибо уже не нужно, а робота просто забыли выключить.
Рано или поздно вас возьмут
Обычно вам требуется порядка 6 собеседований, чтобы вас взяли на работу. Поэтому не нужно переживать из-за отказов. Просто смотрим вопросы, на которых упали, ищем на них ответ и пробуем дальше.
Если вы выучили теоретическую базу, сделали пет-проект и подучили каверзные вопросы для собеседований, то это уже вопрос времени, когда вас возьмут на работу. Поэтому не опускаем руки и пробуем.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
PHP: что надо знать рекрутеру для правильного закрытия вакансии?

Предполагаем, что каждый из вас хоть раз в жизни сталкивался с разработкой сайтов. Либо вы могли слышать о создании сайта на основе шаблонов, используя движки для сайта (CMS): WordPress, Magento и тд? Но создание сайта, сложной веб-платформы, веб-приложения, а также расширение функционала сайта не всегда возможно за счет готовых решений, в таком случае используется один из языков: PHP, JavaScript, HTML, CSS и другие.
Согласно данным W3Techs на языке PHP написано 79.2% всех веб-сайтов, среди них всем знакомые: Facebook, Wikipedia, Vk, а также сайт нашей академии — SKademy. Как видите, это самый популярный скриптовый язык, соответственно, запросы на подбор профессионала PHP будут вам часто встречаться.
Давайте разберемся, как не допустить ошибки при рекрутинге PHP программиста? Что хантер должен знать и учитывать, делая скрининг резюме кандидата?

Это действительно смешная шутка
Присоединяйся к школе HRPR в Telegram-сообществе IT-Рекрутеров и в соцсетях
Подробнее
Где используется язык PHP?
Если очень кратко, то на PHP пишут в основном бизнес-приложения и разрабатывают сайты, веб-платформы. Еще язык используют для автоматизации программирования, написания командной строки и серверных приложений, браузерных игр, реже — для десктопных приложений и др.
Что должен знать IT-рекрутер о PHP?
- Язык популярен, в том числе из-за того, что он поддерживается ОС: Windows, Linux, Solaris, UNIX.
- Язык традиционно взаимодействует с базами данных MySQL и многими другими, обычно выделяют: Oracle и Apache.
- Существуют несколько версий PHP 1.0 – 7.4, которые различаются, например PHP 5.X полностью отличается от PHP 7.X. В основном требуется знание версий 7.xx
- Основные фреймворки — Symfony, Zend, Laravel, Yii, CakePHP.
- PHP системы управления контентом (CMS): Magento, WordPress, Joomla, Drupal.
- Инструменты: Ant, Maven, Gradle, Phing
Скрининг PHP разработчика по его резюме: ожидания работодателя от PHP разработчика
- Реальный опыт. Проверяем какого уровня нужен программист? Соотносим с информацией в каких именно проектах участвовал претендент: крупные, разделенные на микро сервисы, проекты с высоким трафиком?
- Разработчик PHP должен понимать принципы ООП (объектно-ориентированного программирования) и уметь их использовать.
- Указание версии PHP.
- Умение использовать библиотеки и базы данных. PHP — это в основном интернет-ориентированная система со встроенными модулями для доступа к серверам протокола передачи файлов (FTP) и многим серверам баз данных: PostgreSQL, MySQL, Microsoft SQL Server и SQLite (который является встроенной базой данных), LDAP серверам, иметь знания о Ajax, jQuery.
- Умение использовать популярные фреймворки: Zend, Symfony, Yii, Laravel, CakePHP. Ценным будет кандидат, знающий архитектуру фреймворка MVC (Model View Controller) и фреймворки по тестированию, например PHPUnit и др. Рекрутеры обратите внимание! Чаще всего, ожидается, что разработчик умеет работать с конкретным фреймворком, хотя программист с опытом перейдет с Laravel на Symfony за недели две и чуть больше потребуется для фреймворка Yii.
- Знание других языков программирования. В запросах часто встречает пожелания знаний других языков. И, да, те, кто пишет на PHP скорее всего знают JavaScript, HTML, CSS и работают с базами данных MySQL, Apache, Oracle и др.
- Другие компетенции и навыки: английский язык, организованность, внимательность.
Рассмотрим реальные объявления для разных уровней в карусели ↓
Где искать PHP разработчика?
- Их довольно много, поэтому все, как обычно
- Сайты по поиску работы, выделим HH.ru.
- Профессиональные сообщества: LinkedIn, Хабр Карьера, GitHub, Stack Overflow.
- Соц сети: профессиональные сообщества в Telegram, Вк, Facebook.
Зарплата PHP разработчика
