Знания Junior php разработчика?
что должен знать идеальный джуниор (мое личное мнение):
 - Сетевой стэк. Нужно иметь хотя бы базовое представление о том как с сервером общаются. Ну то есть не нужно лезть в дебри, но понимать что такое HTTP или чем TCP от UDP отличается - нужно. В целом это пара часов чтения википедии.
 - GIT или любая другая распределенная VCS. Базовые навыки, что бы хотя бы понимал что есть git revert или git rebase, что такое фичабрэнчи и примерное представление как это работает и зачем надо.
 - Базовые основы unix. Ну то есть что бы не пугаться таких вещей как ssh хотя бы.
 - PHP. Без этого никуда. Он должен понимать что такое слабая динамическая типизация (не заучивать табличку кастов типов, а понимать плюсы и минусы, такая же история с приоритетами операторов - не заучивать а знать как избегать проблем с чтением кода)
 - Понимать что код чаще читают чем пишут, а потому не экономить 5 минут на написании кода, а писать так, чтобы сэкономить 30 минут человеку, разбирающемуся в куске кода.
 - Знать базовые вещи в плане безопасности. XSS и как защищаться, SQL инъекции и как защищаться, CSRF, MITM. Понимать что такое NDA, что данные пользователей - секретная информация. Как хэшировать пароли (не md5 а password_hash) и почему это важно.
 - Знать SQL. Глубоких знаний не требуется, нужно лишь понимание того, что такое нормальная форма, желательно разобраться с вопросом денормализации данных. Идеально иметь хотя бы базовые представления о том как работать с NoSQL решениями.
 - Процедурное программирование: почему глобальные переменные порождают сложность, что такое состояние, как можно использовать классы для изоляции состояния и т.д. Инкапсуляция. Инварианты, пост/пред условия, сохранение целостности... 
 - Разделение ответственности. Это один из важнейших принципов, и упрощать все это до "mvc фреймворк" слегка неправильно. Вы должны понимать что от чего отделяете и главное зачем. 
 - Автоматические тесты. Джуниор должен знать что это такое и иметь хотя бы минимальный опыт их написания. Должен понимать разницу между юнит и интеграционными тестами. Быть знакомым с пирамидой тестирования.
 - Уметь решать стандартные задачи не задавая слишком много вопросов. Например регистрацию пользователя по email-у вы должны написать, или авторизацию через соц сети, или комментарии, или новостную ленту. 
 - Уметь дебажить. xdebug, blackfire и тд.
В целом где-то за годик весь этот список можно влегкую покрыть с нуля. 
p.s. Я в списке специально не указывал ООП, поскольку всеравно первые пару лет у разработчиков выходит процедурщина на классах. Это не плохо, но того что в моем списке более чем должно хватать для решения стандартных задач. Но термины вроде "инкапсуляция/полиморфизм/наследование" требуются в обязательном порядке подавляющем количеством интервьюверов, а стало быть знать это надо. Единственное что - рекомендую в свободное время глубже погрузиться в этот вопрос а не тупо заучивать формулировки.
Так же вещи вроде docker джуниорам знать не обязательно просто потому, что их врядли допустят сходу к управлению инфраструктурой. А так пару неделек на изучение и вперед.
Чтобы проверить/закрепить знания на практике можно участвовать в реальных проектах, опенсорсе, делать тестовые задания. Например тестовые можно взять отсюда https://github.com/Hexlet/ru-test-assignments

Что касается знаний - есть так называемая "база", или общие фундаментальные знания
* Операционные системы и сети. Хотя бы общие вещи. Как работать с линуксом, выполнения команд, чтение логов, несложное администрирование. Понимать, что происходит, Когда вводишь google.ru в адресную строку
* Тестирование. Это в принципе легко делается, тем более в ларавеле. Как тестировать
* Теория множеств, базы данных. Умение писать простые запросы
* Гит, мастхев
* Управление конфигурацией, типа Ansible, мб даже Terraform (хотя бы иметь представление, что это). Знать, что такое деплоить.
* Собственно уметь писать код, хотя бы по ТЗ, хотя бы круды. Ну и тестировать его
* Структуры данных, хотя бы в общих чертах (но это идет в алгоритмах)
Можете провериться еще по чек-лист вот этому https://guides.hexlet.io/ru/check-list-of-engineer...
Если что-то не знаете - рекомендую изучать.
Базово верстку, тк она всегда пригодится. 
Ну и этих знаний достаточно, чтобы быть уверенным джуном.