Сделал себе список того, что нужно выучить.
Не понятно в каком порядке и как учить, то есть с теорией проблем не будет, а вот с практикой, непонятно какие проекты делать.
Список:
- PHP ( OOP, MVC )
- SOLID, DRY, KISS принципы
- Doctrine ORM
- Docker
- REST API
- Laravel, Symfony
- MongoDB, PostgreSQL, NoSQL
- Git
- PHPUnit
- JavaScript -> Vue JS
Хочу стать хорошим backend'ером, а не сайти на CMS писать.
Какие есть ресурсы, чтобы вместе с практикой, можно даже за небольшие деньги ( по типу подписки )
Спасибо!
Docker это Docker. Контейнеры и всё такое. Devops это набор практик по взаимодействию команд разаботчиков и администраторов.
Docker в списке автора есть, devops нету и не нужно.
Программист не обязан настраивать Docker окружение и всё с этим связанное.
А код свой он запускать как будет?
Настраивать окружение нужно уметь. Бегать показывать новому разработчику как docker exec сделать - смешно же. Это учится за пол часа чтения документации. Хотя в целом тут больше речь про знание конкретно linux.
Глубоко лезть конечно джуну не нужно, но так в списке выше половина терминов в которых "Сеньор" то разбирается один из десяти, по очень оптимистичным прикидкам.
работа с Docker - это часть работы devops инженера.
Перейдите по ссылке выше и почитайте что такое devops.
Devops про взаимодействие разработчиков и админов, как раз если применяется devops, разработчики должны быть в курсе того как происходит деплой и поддержка инфраструктуры.
А если у вас есть "devops-инженер" который docker настравает, значит devops у вас не применяется, а "devops-инженер" это админ криво названный.
sergeyiljin, Ну и к чему тут это?
На Хабре чуши разной навалом, верным оно от этого не становится.
Обозвать команду админов командой "devops-инжинеров" это конечно же "стильно модно молодёжно", и определённо стоит того чтобы идти вещать об этом на Хабр, на радость местным джунам, чтобы повосхищались модными словечками и компанией работающей на пике последних технологий, но я предпочитаю называть вещи своими именами.
sergeyiljin, посмотрите вакансии на hh. Там для backend-разработчиков требования включают Docker. Не знать Docker и не уметь докеризировать свое приложение в 2019 году - это уже моветон.
Там для DevOps инженеров те же требования, включая Docker. Что, в компаниях тоже тупые сидят?
Не тупые, просто много людей в изучении чего нового не заходят дальше статеек на Хабре, и изучению DevOps должного внимания не уделили, просто потому что нет нужды.
И ещё по поводу
Что, в компаниях тоже тупые сидят?
Посмотрите на этот замечательный твит - https://twitter.com/fielding/status/324448353180061696
Кратко для случайных читателей: на равне с devops/mvc/agile/oop etc. очень много заблуждений витает вокруг термина REST, и дабы не углубляться в детали, которые вы можете почитать загуглив "REST fielding dissertation" или хотя бы тут, во всем нам известном (о боже!) Google повелись на популярные заблуждения, на что сам автор термина REST(Рой Филдинг) сделал замечание в twitter`е о том что термин REST-endpoint, они используют не корректно
screen
p.s. конечно дока гугла с того времени уже менялась, дока того времени - тут
p.p.s. Но да, людям проще у гугла скопировать чем разобраться.
так можно сказать про всё и пытаться оспорить всё. Есть люди, которые до сих пор доказывают, что земля квадратная и у них есть армия своих поклонников. Или что конкатенация строк в ПХП через точку более логична, чем через плюс в др. языках. Оставьте это! Будем считать, что девопсами сейчас многие компании считают продвинутых сисадминов. Ошибочно это или нет, но факт в том, что настоящих, как вы указали, девопсов почти нигде нет. Есть сисадмин и на этом точка. Он делает всю работу, которую я привёл выше.
Ну так раньше большинство считало что земля квадратная, так же как сейчас большинство считает что devops=admin, а с позицией "будем считать так потому что большинство считает так", мы до сих пор бы в средневековье жили :)
На самом деле речь о целесообразности применения технологий, есть 5% кому нужен devops, и они знают что это такое, а есть остальные 95% которым не нужен, но раз технология хайповая, пытаются и себе прикрутить под любым предлогом
Ну так докажите куче компаний, что они ошибаются. Напишите статью на Хабре. Съездите на конференции, выступите.
Зачем? Им же и так норм.
Да и я нового то ничего не ввожу и не придумываю, лишь уже изобретённые умными людьми инструменты использую.
Пока рынок всё устраивает, увы, ничего не поменять, а большинство проектов на рынке таковы что им все-равно как дела делать.
Или вы только так, на словах ПРАВИЛЬНЫЙ?
Нет, ещё и в делах стараюсь правильным быть. В меру и исходя из текущих задач и потребностей.
А двигать такие штуки на конференциях, кстати, это не то же самое "только на словах"?
Да и есть люди которые вещают за эти вещи на конференциях, это ваши проблемы что вы из не замечаете.
так вы определитесь уже. Девопсы в компаниях - это сисадмины или девопсы? Если девопсы - это девопсы, то тогда ошибаетесь вы, а если девопсы - это сиадмины, то компании ошибаются, но считают что не ошибаются. Значит, утверждение
Devops - это не должность, повторяю это вам снова и надеюсь последний раз, что считает и называет этим словом то подмножество компаний которое вы подразумеваете под словом "компании" меня слабо интересует, смысл слова то не меняется.
sergeyiljin, причём тут это? Взлетел и взлетел. Как, на чём, почему и что было до него значения особого не имеет. На данный момент он дефакто стал стандартом и навыки работы с ним не делают из вас DevOps инженера. Те же вакансии на hh тому пример. Зачем закрывать для себя все эти вакансии, когда можно просто изучить основы и применять, углубляясь по необходимости?
работа с Docker - это часть работы devops инженера. Программист не обязан настраивать Docker окружение и всё с этим связанное.
Из-за таких как вы, контейнеры раз за разом падают в продакшене.
Работа девопса не настроить ВАМ окружение, а автоматизировать сборку и деплоймент.
Настроить окружение, в котором запускается приложение - работа программиста, потому что именно он знает, из чего он собирает свой софт и как он должен работать.
Программист не обязан поднимать кластер кубернетеса и разворачивать десятки нод для билд системы.
Но написать докерфайл для СВОЕГО приложения и поднять докер контейнер на своей гребаной девелоперской машине - он уметь должен.
Вы еще скажите, что девопсы вам должны IDEA тюнить и сопли подтирать.
Там так прямо и написано DevOps инженер с опытом работы с Docker.
А Девопс с опытом работы в Линукс для вас означает, что программист вообще не должен иметь представление о том, что такое Линукс, так как ему девопс все настроит?
Вы путаете название технологии и уровень знаний для работы с этой технологией.
sergeyiljin, Вы еще скажите что программист не должен разбираться в бизнес задачах, которые он решает?
Если вы не понимаете разницу между написанием dockerfile и запуском приложения в контейнере, и между разворачиванием кубернетес/опенщифт кластера и написанием пайплайна для деплоя в прод, то вы видимо совершенно не понимаете что такое программист и что такое девопс.
И если появляется проблема, требующая глубоких знаний, то ваша команда садится в лужу и начинает задавать вопросы на тостере или рыскать по гуглу.
Вы часто кидаетесь фразами неподумав. Например вот эта ваша фраза про тостер и гугул. И взять ваш профайл на тостере, в котором вопросов в 5-6 раз больше, чем ответов. О чем это говорит? Что вы плохой программист? Или что все-таки гуглить и лазить по тостеру - это норма?
Saboteur, Гуглить - норма, спрашивать что-то серьёзное на Тостере - гиблое дело, поэтому если человек задающий вопросы на Тостере позиционирует себя выше чем Джун, у меня к нему будет очень предвзятое отношение
Евгений Ромашкан, На тостере достаточно неплохих вопросов. Не вина тостера, что англоязычные ресурсы появились раньше и следовательно уже есть ответы на большинство популярных задач.
Но также нужно понимать, что мир не стоит на месте и развивается. Тостер - вполне популярный и крупный ресурс, и он уже состоялся как довольно крупный ИТ ресурсом вопросов-ответов в русскоязычном интернете. Его можно развивать.
Ну а предвзятое отношение - это уже личные проблемы.
На тостере достаточно неплохих вопросов. Не вина тостера, что англоязычные ресурсы появились раньше и следовательно уже есть ответы на большинство популярных задач.
Но также нужно понимать, что мир не стоит на месте и развивается. Тостер - вполне популярный и крупный ресурс, и он уже состоялся как довольно крупный ИТ ресурсом вопросов-ответов в русскоязычном интернете. Его можно развивать.
Тостер развивается исключительно в сторону вопросов в стиле "войти в айти" и "неосилил документацию", интересных вопросов остаётся лишь меньше, и если раз в месяц таковой вдруг появится, в ответах всё-равно будет чушь.
Сам ресурс создан не для обсуждений каких-то сложных тем, а для схемы вопрос-ответ, где вопрос должен иметь однозначный ответ, по этому какого-то адекватного диалога тут в принципе быть не может.
Нужно понимать, что от новичка (да даже откровенно говоря и от профи), знание вот этого всего не требуется. Поэтому условно делает свой новостной сайт на symfony + html+css+js + БД. Как его доделали, можно идти уже устраиваться на работу.