Добро пожаловать #
Данный курс является бесплатным ресурсом, цель которого - дать начинающему разработчику чёткий план по развитию своих профессиональных навыков до уровня, позволяющего трудоустроиться на вакансию Python backend Junior developer.
❗️Репозиторий является адаптацией моего https://github.com/zhukovsd/java-backend-learning-course под Python❗️
Курс является воплощением моего опыта менторства начинающих разработчиков (на июль 2023, количество студентов, трудоустроившихся джуниорами с моей помощью - 6).
Важно отметить, что данный курс не стремится быть единственным источником обучающей информации для студента. Предполагается, что курс даёт общую структуру образовательного процесса и практику, а теорию студент осваивает удобным для него способом - видеокурсы, книги. Подробнее об этом ниже, в разделе “как пользоваться курсом”.
Обо мне #
С 2009 года профессионально занимаюсь разработкой, на Java пишу с 2014. Рабочая должность и обязанности находятся где-то на пересечении Architect/Fullstack Dev/Team Lead. Люблю и умею учить и менторить начинающих и развивающихся разработчиков.
Содержимое курса #
План обучения #
Основа курса - последовательность из 7 проектов с возрастающей сложностью, для постепенного охвата необходимых, на мой взгляд, навыков и технологий, требуемых для трудоустройства.
Схема навыков #
Подробно про то как пользоваться роадмапом я рассказывал на стриме.
Матрица навыков и проектов #
Идея матрицы - визуализировать, как проекты охватывают больше и больше сфер знаний.
Проекты с тех.заданиями #
Для каждого из проектов написано техническое задание, содержащее описание проекта, с какими знаниями к нему нужно подойти, на что обратить внимание. При написании тех.заданий я фокусировался на том, чтобы темп возрастания сложности был не слишком высоким, но в то же время, проекты дают конкретные технические навыки, требуемые в работе.
Список реализаций проектов курсов студентами со ссылками на репозитории, авторов, и мои ревью.
Требуемые знания и технологии #
Для колонок из схем выше я написал документы с описанием того, что нужно знать, ссылками с начальной информацией:
- Python
- Backend
- Базы данных
- Управление зависимостями
- DevOps - Git, деплой, CI/CD
- Frontend
- Тестирование
- Контейнеры и микросервисы
Общение #
С появлением карьерных стремлений в направлении IT, важно для своего круга общения найти людей, которые уже прошли предстоящий вам путь.
Частично эту нишу можно заполнить мотивационными YouTube каналами, где опытные и не очень разработчики делятся своими историями. Однако, личное общение решает эту задачу лучше.
Для вопросов по учёбе, проектам, и общения с единомышленниками пишите в чат сообщества студентов, занимающегося по моим материалам - https://t.me/zhukovsd_it_chat.
Также есть формат парное ментарство. Более подробно можно почитать тут, доступные менторы в таблице.
Ревью проектов #
К законченному проекту всегда можно написать ряд замечаний, видимых только с высоты опыта. В рамках менторства я делаю ревью реализованных проектов (в своё свободное время). Процесс схож с моим рабочим взаимодействием с джуниорами, в рамках которого я провожу ревью их работы.
Плейлист с моими публичными ревью - YouTube.
Помощь в выборе учебных материалов #
По всем требуемым технологиям существует множество разнообразных источников знаний, иногда бесплатных. Для каких-то технологий по ссылкам выше я приложил рекомендуемые книги и курсы, но не для всех. Нет универсальных форм подачи материала, подходящих всем, поэтому вы можете на свой вкус искать под себя книги и курсы, а я могу помочь выбрать из них лучшее по качеству материала.
С чем нужно подойти к этому курсу #
Прежде всего, вам потребуются базовые знания по программированию, будет достаточно университетского уровня. Не беда, если такого уровня нет, но придется достичь его по ходу дела.
Второе - время и дисциплина. На учёбу желательно выделять не менее 10-15 часов в неделю или больше, регулярно, сделав это частью своей жизни и привычек, распорядка дня.
Но самое главное - это постановка целей и ваша решимость их достичь. Карьера разработчиком несёт в себе множество плюсов, и если ради реализации своих амбиций вы готовы трудиться, то, надеюсь, этот курс станет для вас подспорьем в достижении целей.
Как пользоваться курсом #
- Определиться со своими целями и возможностями уделять учёбе время
- Начать работу над проектами и изучение необходимой теории
- Поддерживать контакт со мной и другими студентами для тематического общения и менторства
Помощь и поддержка #
Нематериально:
- Сарафанное радио - если я или курс помогли вам, расскажите о нём тем, кто только начинает свой путь по изучению разработки
- Вычитка материалов курса, исправление стилистических и орфографических ошибок, опечаток. Исправления можете отправлять в пул реквестах на GitHub или писать мне в Telegram
- Адаптация материалов курса для других бэкенд платформ - PHP, NodeJS, ASP.NET и других. Для этого можете создать отдельный репозиторий с материалами, и сослаться на оригинальный (данный) репозиторий
- Jekyll тема с дизайном для сайта с материалами курса
- Таймстемпы к YouTube видео
Материально: