Что должен знать «PHP Junior Developer без опыта работы»?
Время несётся стремительным домкратом. Эта статья в значительной степени устарела, хоть конструктивные моменты типа «изучайте смежные области» едва ли когда утратят актуальность. Кадровый голод ощущается всё более явно и вносит больше конструктива в процесс найма начинающих разработчиков. Баланс смещается в сторону хороших знаний языка и инструментов от готовности к написанию кода «как-нибудь» но с первого дня.
Не забывайте, что всё это оценочные суждения какого-то анонимуса. У вас нет никаких гарантий, что я разработчик и понимаю, о чём говорю. Собственно, вы даже не можете гарантировать, что этот текст не набран каким-то ежом в уплату за съеденую котлету.
Эта статья стала результатом двухмесячного поиска работы в Новосибирске. В процессе общения с работодателями я обнаружил некоторые факты, которые для меня были весьма неочевидны. Рекомендована к прочтению всем, кто собирается в ближайшее время стать таким же соискателем.
- в той или иной мере был контакт с 20+ работодателями
- выполнено 12 тестовых заданий
- пройдено 8 собеседований с техническими специалистами
- получил моральные травмы средней степени тяжести один начинающий PHP-разработчик
HTML, CSS, JavaScript
Вам может показаться, что знать эти вещи идеально PHP-програмисту не требуется, однако это не так. Валидная вёрстка, кроссбраузерность и прочие слова, которые пишут в вакансиях верстальщиков применяйте также и к себе. В общем-то это вполне логично, поскольку даже самый идеальный код на PHP не нужен никому, если он при этом генерирует неадекватный HTML.
В некоторых организация мне сразу говорили, что вакансия подразумевает именно разработчика PHP, есть отдельные верстальщики/скриптовики. Однако таких организаций было мало.
Самый показательный пример — одно из выполненых мной тестовых заданий. В нём соотношение строк PHP:JavaScript:HTML было примерно 20:50:30.
Фреймворки
Ваши знания PHP как такового интересуют весьма незначительную часть работодателей. Большинство компаний используют в разработке различные фреймворки, и хотят от кандидата того же. Если в пожеланиях к кандидату вы увидели «-знакомство с фреймворком х», то скорее всего это не пожелание, а требование.
В Новосибирске наиболее популярны (исходя из вакансий джуниоров) Yii, Symfony и Zend. Изредка мелькает CakePHP.
Лично мне освоить Yii на базовом уровне удалось за неделю спокойной работы. Что, впрочем, не значит, что вы не сможете разобраться в нём быстрее.
PHP — тоже програмирование
Со всеми вытекающими отсюда последствиями. А именно — без знания теории ваша квалификация крайне низка.
Порог вхождения в PHP невысок. Как следствие, все прочие програмисты смотрят на PHP-шников с презрением и неодобрением. Да и в общем-то есть за что.
Незнание основ теории может приводить к таким ужасным вещам, как генерация в коде миллиона объектов с последующим применением к ним пузырьковой сортировки. Это, конечно, гипербола, но суть её вы, наверное, уловили.
В общем настоятельно рекомендую вам прочитать пару-тройку книг по теории програмирования. Вряд ли вас спросят о подсчёте сложности алгоритма, но общие вопросы, некий начальный уровень програмиста, на собеседовании стараются выяснить.
Разработка включает в себя многое
Лично мне никогда не приходила в голову мысль, что стоит думать не только каком языке ты пишешь, но и чем ты пишешь. Очень желательно знать основные IDE, точнее их главные функции.
Для нормальной работе в команде необходим контроль версий.
Кроме того, в проектах принято проводить тестирование и как-то собщать об ошибках.
А ошибки бывают такие, что неплохо бы знать содержимое php.ini.
И конфиги nginx/apache.
И можно очень долго продолжать.
Готовьтесь к резкому расширению кругозора
При выполнении каждого второго тестового задания вам придётся с нуля осваивать что-то новое. NoSQL, AJAX, чьи-то API, JS библиотеки и прочие вещи, о которых вы в лучшем случае слышали пару раз в жизни, вам придётся экстренно изучать.
То что вам не знакомо вовсе не обязательно является чем-то сложным. Это ведь действительно задания для начинающего разработчика без опыта работы. А значит, несмотря на кажущуюся сложность, решение задачи вы быстро найдёте, уделив полчаса документации.
Не отказывайтесь от задания, если оно показалось вам слишком сложным. Просто почитайте статьи или учебники по этой теме, вы поймёте, что бояться нечего.
Тестовые задания могут быть неточны
Как правило тестовые задания коротки и ясны. И всё же неточны. Я понятия не имею, чем это вызвано. Возможно составляют и проверяют задания разные люди.
В одном задании мне явно указали применить ООП, затем на собеседовании спросили, зачем я это сделал. В другом с точностью наоборот. В третьем попросили приложить описание на английском и затем спросили зачем я его приложил.
В общем некоторая часть ваших работ будет проверяться без оглядки на задание.
HR`ы нередко адекватны и профессиональны
Нередко — это 6 из 10. Будьте готовы к тому, что на остальные письма вам не ответят, тестовые задания не проверят, мы вам перезвоним.
Я уж не знаю, чем руководствуются эти люди. Серьёзно, HR, почему вы не можете потратить пять минут на человека, который потратил на вас день?
Если вы столкнётесь с такой проблемой, не ждите ответа. Звоните и пишите, спрашивайте почему про вас забыли.
Собеседование это огромный плюс
Общение с опытным разработчиком и просмотр вашего кода сильно продвигает вас в развитии. Даже если вам отказали в вакансии, вы всё равно получили ценный опыт.
После каждого собеседования обязательно пройдитесь дома по вопросам и уточните неясные вам моменты. Как правило эти вопросы относятся к базовым знаниям, без которых ваша работа будет как минимум некачественно. Что-то не знаете — обязательно разберитесь. Хотя бы потому, что подобный вопрос с большой вероятностью повторится.
Happy End
Вот собственно со всем этим и придётся столкнуться начинающему разработчику. При некоторой подготовке ваши будующие собеседования пройдут намного проще, чем мои.
Возможно пытливому читателю будет интересно, чем же закончились эти поиски работы?
Я понял, что для начинающего разработчика без опыта работы у меня слишком мало опыта, и устроился на вакансию с IT вообще никак не связанную. Через год планирую, поднабравшись знаний, снова начать поиски.
Что должен знать 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 собеседований, чтобы вас взяли на работу. Поэтому не нужно переживать из-за отказов. Просто смотрим вопросы, на которых упали, ищем на них ответ и пробуем дальше.
Если вы выучили теоретическую базу, сделали пет-проект и подучили каверзные вопросы для собеседований, то это уже вопрос времени, когда вас возьмут на работу. Поэтому не опускаем руки и пробуем.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Что должен знать Junior PHP разработчик
В данной статье я хочу ответить на вопрос — “что должен знать Junior PHP разработчик в 2016м году?”.
При этом я постараюсь добавить побольше ссылок на учебные материалы, чтобы на собеседовании вам не пришлось краснеть
Пункт номер ноль
Разработчик должен соображать и уметь использовать Google. Первое оценить крайне сложно, для этого придумано много «дурацких» вопросов для собеседований. Второй пункт прививается в первые дни испытательного срока. Плюсом будет аккаунт на stackoverflow.com.
Фундамент
Если вы твёрдо намерены заняться web-разработкой, то первое что вам нужно будет понять – это принцип работы HTTP протокола (эти знания можно почерпнуть в профильных ВУЗах). Так же вы должны поверхностно знать о существовании TCP/IP протокола и понимать за что отвечает DNS сервер.
Выбрав для специализации стек LAMP вам следует начать знакомиться с Linux уже сейчас:
- установить дистрибутив, рекомендую ubuntu
- изучить файловую систему и её особенности
- научиться использовать командную строку
- научиться редактировать текстовые файлы в vim/nano
- научиться выходить из текстовых редакторов с сохранением и без 😉
- разобраться с управлением процессами — просмотреть запущенные, убить зависшие
- установить Apache, PHP и MySQL
- узнать о SSH
Установив Apache — научитесь его настраивать и рестартовать:
sudo a2enmod .
sudo a2ensite .
sudo service apache2 restart
Будьте осторожны, Linux затягивает, вроде неделька нужна для познания азов, а очнулся — уже Новый Год, а ты сидишь и iptables настраиваешь
SQL/MySQL
Основы синтаксиса SQL требуются практически от всех программистов, будь то веб-разработка, или мобильная, вам же надо немного вникнуть в MySQL и понимать различия между MyISAM и InnoDB. Знать как работают LEFT/RIGHT/INNER JOIN’ы — это наглядно разъясняется в статье Visual Representation of SQL Joins:
Проверьте свои познания — создайте базу данных для учёта вашей домашней библиотеки (у вас же есть такая?), в ней должны быть следующие сущности:
- книги
- авторы книг
- ФИО тех, кто брал почитать
Основываясь на данной структуре данных, вы должны составить запросы которые покажут вам:
- автора, книги которого чаще всего берут почитать
- список тех, кто взял больше одной книги
SQL можно изучать в отрыве от всего остального, и он никому не повредит, чтобы разобраться на должном уровне с ним вам потребуется неделька усердного изучения без перерывов на поиграться.
HTML и CSS
Сверстайте пару страниц, от и до. Не слушайте, что это работа дизайнера/верстальщика/кого-то еще. Поверьте моему опыту — вам отдадут свёрстанную страницу, никто за вас не будет интегрировать HTML шаблон в вашу систему, так что знание HTML и CSS в обязательном порядке. И забудьте о том, что верстальщики будут готовые шаблоны вам отдавать — это сказки.
Разберитесь с селекторами в CSS, следующий код не должен вызывать у вас ужаса:
#my p.sel:first-line, .main li li a:hover + span < color:#f00; /* Что это за цвет? Включи логику! */ >
Узнайте что есть блочная модель, да как работает float. Что есть margin и padding. Почему CSS это каскадная таблица стилей, и что есть такое понятие как специфичность CSS-селектора.
Со всем этим можно разобраться за недельку-две, главное не лениться, ну и не стоит лезть в дебри кросс-браузерной вёрстки и анимации. Примочки типа LESS, SASS или БЭМ тоже стоит оставить на фронт-енд разработчиках
JavaScript
Несмотря на то, что PHP это бэкенд разработка, знания JavaScript’а вам сильно пригодятся — особое внимание уделите изучению следующих моментов:
- синтаксис знать нужно в обязательном порядке
- понимать область видимости переменных
- познать замыкания
- изучить события, и разобраться со «всплытием»
- AJAX — что за зверь, как работает
Это немного, изучение данных вопросов у вас не займет более недели, всё это очень наглядно есть в учебнике Ильи Кантора.
Ещё желательно приступить к изучению jQuery, вот вам учебник и по нему — jQuery для начинающих — это еще неделька на усвоение материала.
PHP
Как вам списочек вышеописанных скилов? И это мы ещё не добрались к PHP 😉
PHP начинается с основ языка:
- нужно знать что такое переменные и константы
- типы данных, приведение типов и сравнение данных
- область видимости переменных
- приоритеты операторов
- побитовые операции
- управляющие конструкции
- пространства имён
- чуток затронуть строковые функции, такие как:
- explode()
- str_replace()
- strpos()
- substr()
- trim()
- но их куда больше…
- работать с массивами нужно постоянно — функций много, я бы обратил внимание на следующие:
- array_push()
- array_pop()
- array_map()
- array_keys() и array_values()
- семейство array_diff и array_intersect
- различные сортировки
- поиск по массиву in_array() и array_key_exists()
- работа с файлами и файловой системой тоже вполне тривиальная задача
- порекомендую досконально изучить как работает подключение файлов
- и понять как происходит работа с сессиями
- узнать на практике как обрабатывать входные данные с форм
- поработать с базой данных с помощью PDO
А ещё нужно иметь представление об объектной модели в PHP:
- наследование
- область видимости свойств и методов
- магические методы
- обработка ошибок с помощью исключений
- понимание паттерна MVC
- уметь работать в IDE отличной от текстового редактора
- знание английского на уровне понимания примеров на stackoverflow
Так что ещё забыл, ах да — система контроля версий:
- пройдите обучалку по Git на Code Academy либо GitHub
- почитайте Git Book
- заведите аккаунт на GitHub
- сохраните в закладки GitHub Guides
PHP через год
Отдельно выделю те знания, которые требуются от Junior разработчика через год работы:
Объектная модель PHP должна не вызывать озадаченности на лице:
- абстрактные классы
- интерфейсы
- трейты как замена множественному наследованию
- позднее статическое связывание
Паттерны проектирования пора уже понимать и использовать:
- опять повторю про MVC
- Singleton не всегда вреден
- Factory
- Depedency Injection
- Active Record
Прочие навыки и познания:
- знакомство с каким-нибудь современным фреймворком (нынче уже Yii 2, Laravel5, Symfony3, ZF3)
- разобраться с ORM
- composer в обязательном порядке
- понимание новых фич PHP7
- виртуализация с Vagrant
- установка и настройка NGINX
- Twitter Bootstrap как тренд в вёрстке админок
- работа в правильной IDE PHPStorm
- английский на уровне – задать вопрос на stackoverflow и словить минусов.
Профессия «PHP-разработчик» — подробное описание
PHP-разработчик и замечательный человек. Помогаю сделать сайт Checkroi.ru лучше, код чище, а пользователей — счастливее!
PHP-программист – специалист, работающий с языком программирования PHP (Hypertext Preprocessor), созданным в 1995 году для генерации веб-страниц на HTML. Отличительной чертой этого языка в сравнении с другими выступает гибкость и относительная простота освоения. Поэтому PHP – прекрасный выбор для каждого, кто желает в короткие сроки освоить профессию веб-разработчика и получать солидный доход, работая по собственному желанию в офисе, удаленно или в режиме фриланса.
Содержание статьи скрыть
Бесплатный вебинар
На сегодняшнем мастер-классе мы поговорим о PHP — скриптовом языке общего назначения, который интенсивно применяют для разработки веб-приложений. В прямом эфире вы узнаете: — классы и объекты php; — абстрактные классы, интерфейсы и трейты; — наследование; — полиформизм; — инкапсуляция.
Павел Иовлев Тимлид группы разработчиков AGIMA
Согласно индексу TIOBE, отображающему уровень востребованности языка программирования в поисковых системах, PHP по итогам каждого года уверенно держится в десятке лидеров, обычно располагаясь на 7-9 местах.
Популярность и востребованность PHP по TIOBE
Ну а популярный веб-ресурс GitHub указывает, что PHP с 2014 года уверенно закрепил за собой 4-е место:
Популярность PHP на GitHub
Кроме того, статистика поисковых систем говорит – 80% веб-сайтов, чья посещаемость превышает 10 млн пользователей в месяц, используют PHP. Если еще не сложилось мнение о том, что это сверхпопулярный и востребованный язык программирования, то достаточно отметить – его применяют даже Wikipedia.
Учитывая такую распространенность, неудивительно, что PHP-разработчик никогда не сидит без работы и может рассчитывать на солидные цифры прибыли, работая в комфортных условиях. Теперь остается выяснить, чем же занимаются такие программисты и сколько им платят в различных регионах России и за рубежом?
Что делает и чем занимается PHP-программист
Официальный логотип PHP
Основными обязанностями PHP-разработчика выступают:
- Создание сайтов, отдельных страниц или модулей, а также тестирование их работоспособности.
- Составление технической отчетности.
- Внедрение дополнительных внешних и внутренних систем на сайт.
- Оптимизация работы веб-ресурса, а также техническая поддержка (улучшение производительности, повышение безопасности и т. п.).
В обязанности программиста еще может входить:
- запуск сайта и дальнейшее его администрирование;
- поиск и устранение ошибок работы;
- улучшение функциональности;
- взаимодействие с другими специалистами.
Если коротко: он отвечает за разработку и обслуживание ресурса.
Ежедневные советы от диджитал-наставника Checkroi прямо в твоем телеграме!
Подписывайся на канал
Подписаться
Что должен знать и уметь PHP-разработчик
Навыки PHP-разработчика – что нужно знать и уметь (с сайта quicknetsoft.com)
Общий список того, что должен знать и делать PHP-developer, выглядит следующим образом:
- Работать с composer – менеджером пакетов для PHP, представляющим собой набор готовых скриптов для работы.
- Создавать автотесты для проверки написанного кода, чтобы убедиться в его работоспособности.
- Обеспечивать гибкость кода и проводить его оптимизацию, устраняя «мусор» и заставляя страницы работать быстрее.
- Знать HTML+CSS+JavaScript, чтобы понимать, какие объекты на сайте за что отвечают, как выглядят, работают и т. п.
- Использовать алгоритмы MVC (Model-View-Controller) – модели разделения интерфейса, схемы распределения данных и управляющей логики.
- Знать и применять хотя бы 3-5 фреймворков: laravel, CodeIgniter, yii2, Symfony, zend и пр.
- Применять Ajax – построение динамических пользовательских интерфейсов для веб-приложений.
- Осуществлять эффективное распределение нагрузки.
- Знать популярные движки (CMS) для создания сайтов: WordPress, Joomla!, MODx, Drupal и другие
- Уметь управлять базой данных MySQL: подключение, выбор, отправка команд, обработка результатов.
- Работать с архитектурой баз данных, нормализуя их и создавая вложенные запросы.
- Знать основные паттерны программирования, понимая, какие из них в той или иной ситуации быстрее решают поставленную задачу.
Чтобы получить все необходимые навыки, рекомендуем пойти на курсы PHP-разработчиков. Вот лучшие образовательные программы:
Стоимость со скидкой
В рассрочку
Длительность
Ссылка на курс
PHP-разработчик с нуля до PRO
Перейти на сайт курса
от 4 608 ₽/ мес
Программист PHP
Перейти на сайт курса
GeekBrains
от 2 666 ₽/мес
Комплексный курс по PHP
Перейти на сайт курса
Loftschool
от 1 416 ₽/мес
Fullstack-разработчик на PHP
Перейти на сайт курса
Уровни PHP-специалистов по опыту работы
Как и во многих других IT-профессиях, работающих с языком PHP специалистов делят по опыту работы на такие основные категории:
- Junior – новичок, младший специалист;
- Middle – уверенный середнячок, способный самостоятельно выполнять большую часть задач;
- Senior – профессионал.
- Team Lead – контролирует работу других специалистов, берет на себя ответственность за принятие решений и умеет организовать работу программистов.
Обычно наниматели имеют к отдельным категориям специалистов ряд критериев, которым нужно соответствовать. В связи с этим полезно взглянуть, какие ожидания нужно удовлетворить, чтобы получить достойно оплачиваемую работу.
Junior PHP-разработчик
Новичку важно уметь разбираться в популярных CMS (движок сайта). Под CMS подразумевают систему управления ключевыми функциями веб-сайта. Зачастую движок включает готовые модули, предназначенные для выполнения конкретных задач. Да и отдельные CMS имеют ярко выраженную направленность для практического применения.
Например, для ведения блогов идеально подходит WordPress (WP), для интернет-магазина часто используют Magento и Opencart, а для новостного сайта можно задействовать DLE.
Младший специалист обычно должен:
- иметь успешный опыт разработки хотя бы под один из распространенных движков (WordPress, MODx, Magento и пр.);
- знать PHP и MySQL;
- понимать принципы работы MVC/OOP;
- иметь базовые познания Git.
Главный навык младшего специалиста – обучение. На этом этапе вы должны впитывать информацию как губка.
Middle PHP-разработчик
Опытный PHP-программист обязан:
- обладать опытом разработки на языке PHP не менее 2-3 лет;
- знать и применять на практике MVC;
- уверенно работать с Git, MySQL, PHP5 и PHP7;
- писать Unit-tests, Rest API;
- обладать базовыми познаниями Angular, VueJS и React;
- демонстрировать продвинутые умения работы с JavaScript, CSS и HTML.
На среднего специалиста часто возлагают обязанности по review кода за младшими.
Senior PHP Developer
Профессионал должен не только свободно ориентироваться во всем вышеперечисленном, но и обладать развитыми лидерскими качествами, чтобы организовать работу команды. Для этого ему также потребуется знание процессов гибкой разработки: Agile, Scrum, Kanban и другие.
Как стать PHP-программистом
Чтобы стать PHP-разработчиком, есть три очевидных пути:
- Самостоятельное обучение путем изучения найденных на просторах интернета книг, вебинаров и пр. Этот вариант бесплатный, но очень долгий и отличается низкой эффективностью, т. к. самому сориентироваться в обилии информации и объективно оценить ее актуальность непросто. Я накидал маленькую roadmap PHP-программиста. Там ты поймешь как структурировать знания самому.
- Поступление в соответствующий ВУЗ. Крайне нецелесообразный шаг ввиду того, что обучение в вузах растягивают на 4-6 лет, берут за него солидные деньги, не говоря уже о массе сопутствующих расходов, да еще и программы подготовки в среднестатистическом учебном заведении, мягко говоря, неактуальны.
- Пройти → онлайн-курсы по PHP – идеальный вариант, поскольку такая система подготовки позволяет приобрести полный объем необходимых знаний в относительно короткий срок, начать в процессе обучения наполнять портфолио и получить подтверждающий сертификат по овладению профессией PHP-developer.
А какой путь выберете вы? Ответь в комментариях!
Поделитесь материалом в соцсетях — обсудите его с друзьями и коллегами!
Не знаете с чего начать?
Получите персональный список курсов, пройдя бесплатный тест по карьере