Коллеги, привет. Принес вам тут роадмап по бэкенду, то как я вижу КАЧЕСТВЕННЫЙ и долгий путь развития разработчика бэкендера
- Изучите язык программирования
Выберите язык по вашему выбору (например, GO, JS или C#) и тщательно изучите его. Однако помните, что язык не главное, и вам нужно сосредоточиться на развитии широкого понимания технологий, используемых в вебе.
- Понимание работы Интернета
Зайдите на сайт MDN и почитайте их материалы том, как работает Интернет. На сайте представлен список других полезных ресурсов. Развитие широкого кругозора в вебе поможет вам в долгосрочной перспективе.
https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/How_the_Web_works
- Изучите Git
Git — это система контроля версий, используемая при разработке программного обеспечения. Чтобы изучить его, могу посоветовать ресурс https://learngitbranching.js.org/?locale=ru_RU, бесплатный, удобный, прикольный. Вам не нужно быть экспертом в Git; вы узнаете его лучше, когда будете работать над своими проектами.
3.1) Познакомьтесь с Linux
Linux — популярная операционная система которой пользуются многие разрабы. Можно глянуть например вот сюда https://www.youtube.com/watch?v=ROjZy1WbCIA
- Алгоритмы и структуры данных
Кто бы что ни говорил, базовые алгосы - это важно, вы можете не уметь переворачивать красно-черные деревья, но знать чем массив отличается от списка и зачем нужна хэш таблица - вы обязаны. Мой выбор на платные курсы и университетские курсы. Для начала можно почитать «Грокаем алгоритмы».
- Шаблоны проектирования для создания приложений
Предположим что вы уже изучили основы объектно-ориентированного программирования (ООП) при изучении языка. Теперь пришло время изучить паттерны проектирования для создания приложений. Гляньте на SOLID, KISS и YAGNI. Зайдите на метанит, там куча информации
https://metanit.com/sharp/patterns/
- Тестирование и методы тестирования
Теперь, когда вы знаете, как писать код и приложения, пришло время узнать о тестировании и методах тестирования. Эти знания помогут вам когда будете писать уже какой-то реальный год.
7)Базы данных
Изучите основы баз данных Postgres и Mongo. Вам не нужно углубляться, погрузитесь когда будете работать.
😍 REST API, JWT, клиент-сервер, GRPC, GraphQL, монолиты и микросервисы
К настоящему времени вы должны быть сильным джуном. Сосредоточьтесь на изучении REST API, JWT, клиент-сервер, GRPC, GraphQL, монолитах и микросервисах (важно понять разницу), советую еще вот это почитать https://12factor.net/ru/.
- Кэширование и Redis
Узнайте о кэшировании и Redis.
https://habr.com/ru/company/manychat/blog/507136/
- Кафка и обмен сообщениями
Узнайте о Kafka и обмене сообщениями.
https://habr.com/ru/company/maxilect/blog/677128/
- Контейнеризация и развертывание
Узнайте о контейнеризации и развертывании с помощью таких инструментов, как Docker, Docker Compose, Docker Swarm, Kubernetes и GitLab CI/CD. Вам не нужно быть экспертом в этих инструментах, но важно понимать, как они работают и зачем они нужны. У всех этих штук достаточно крутые документации, поэтому просто идем туда и читаем.
- Балансировка нагрузки и проксирование
Узнайте о балансировке нагрузки и проксировании с использованием Nginx и Traefik. Опять же, вам не нужно становиться девопсом, вам нужно просто знать что это такое и с чем его едят
Думаю, что когда вы дошли до этого этапа вам не нужны ссылки, сами нагуглите
- Мониторинг, логгирование и трейсинг
Когда вы придете на любой мало-мальски большой проект, у вас там все это будет. Вам нужно погуглить и узнать зачем нужны все эти слова: Jaeger, ELK (Elasticsearch, Logstash, Kibana), Grafana и Prometheus.