Go Роадмап Сергея Жукова #

Данный роадмап является ресурсом, цель которого - дать начинающему разработчику чёткий план по развитию своих профессиональных навыков до уровня, позволяющего трудоустроиться на вакансию Go backend Junior developer.

❗️Репозиторий является адаптацией моего https://github.com/zhukovsd/java-backend-learning-course под Go❗️

Важно отметить, что данный роадмап не стремится быть единственным источником обучающей информации для студента. Предполагается, что здесь можно найти общую структуру образовательного процесса и практику, а теорию студент осваивает удобным для него способом - видеокурсы, книги. Подробнее об этом ниже, в разделе “как пользоваться роадмапом”.

Адаптации роадмапа для других языков программирования:

Обо мне #

С 2009 года профессионально занимаюсь разработкой, на Java пишу с 2014. Рабочая должность и обязанности находятся где-то на пересечении Architect/Fullstack Dev/Team Lead. Люблю и умею учить и менторить начинающих и развивающихся разработчиков.

Содержимое роадмапа #

Общий план от начала учёбы до трудоустройства.

Основа роадмапа - последовательность из 7 проектов с возрастающей сложностью, для постепенного охвата необходимых, на мой взгляд, навыков и технологий, требуемых для трудоустройства.

Схема навыков #

Go Backend developer roadmap

Подробно про то как пользоваться роадмапом я рассказывал на стриме.

Матрица навыков и проектов #

Screenshot 2024-10-06 at 23 33 30

Идея матрицы - визуализировать, как проекты охватывают всё больше и больше сфер знаний.

Проекты с тех.заданиями #

Для каждого из проектов написано техническое задание, содержащее описание проекта, с какими знаниями к нему нужно подойти, на что обратить внимание. При написании тех.заданий я фокусировался на том, чтобы темп возрастания сложности был не слишком высоким, но в то же время, проекты дают конкретные технические навыки, требуемые в работе.

  1. Виселица
  2. Симуляция
  3. Обмен валют
  4. Табло теннисного матча
  5. Погода
  6. Облачное хранилище файлов
  7. Планировщик задач

Список реализаций проектов роадмапа студентами со ссылками на репозитории, авторов, и мои ревью.

Требуемые знания и технологии #

Для колонок из схем выше я написал документы с описанием того, что нужно знать, ссылками с начальной информацией:

Общение #

С появлением карьерных стремлений в направлении IT, важно для своего круга общения найти людей, которые уже прошли предстоящий вам путь.

Частично эту нишу можно заполнить мотивационными YouTube каналами, где опытные и не очень разработчики делятся своими историями. Однако, личное общение решает эту задачу лучше.

Для вопросов по учёбе, проектам, и общения с единомышленниками пишите в чат сообщества студентов, занимающегося по моим материалам - https://t.me/zhukovsd_it_chat.

Также есть формат парное менторство. Более подробно можно почитать тут, доступные менторы в таблице.

Лекции #

Для помощи студентам, работающим над проектами, записываю и публикую лекции, объясняющие технологии и идеи, актуальные в контексте проектов роадмапа.

Плейлист с лекциями.

Ревью проектов #

К законченному проекту всегда можно написать ряд замечаний, видимых только с высоты опыта. В рамках менторства я делаю ревью реализованных проектов (в своё свободное время). Процесс схож с моим рабочим взаимодействием с джуниорами, в рамках которого я провожу ревью их работы.

На июль 2024, студентами написано более 380 реализаций, к которым сделано более 90 открытых видео и текстовых ревью.

  • Коллекция реализаций проектов роадмапа студентами, и мои ревью к ним
  • Плейлист с моими публичными ревью - YouTube.

Помощь в выборе учебных материалов #

Для всех требуемых технологий в посвященных им страницах роадмапа представлен список избранных учебных материалов.

С чем нужно подойти к роадмапу #

Прежде всего, вам потребуются базовые знания по программированию, будет достаточно университетского уровня, а язык не обязательно должен быть Go. Не беда, если такого уровня нет, но придется достичь его по ходу дела.

Второе - время и дисциплина. На учёбу желательно выделять не менее 10-15 часов в неделю или больше, регулярно, сделав это частью своей жизни и привычек, распорядка дня.

Но самое главное - это постановка целей и ваша решимость их достичь. Карьера разработчика несёт в себе множество плюсов, и если ради реализации своих амбиций вы готовы трудиться, то, надеюсь, этот роадмап станет для вас подспорьем в достижении целей.

Как пользоваться роадмапом #

  • Определиться со своими целями и возможностями уделять учёбе время
  • Начать работу над проектами и изучение необходимой теории
  • Поддерживать контакт со мной и другими студентами для тематического общения и менторства

Расширенные материалы #

Итогом полутора лет развития роадмапа стали 270 реализаций проектов, 80 ревью. Видя, что проект приносит пользу, я хочу продолжать его развивать, полностью сохранив бесплатность и доступность тех материалов, что уже созданы.

Логичным развитием проекта стали расширенные материалы. Что внутри для каждого проекта:

  • Эталонная реализация по шагам.
  • Лекция по каждому шагу, включая деплой (20-30 минут на лекцию).
  • Разбор типовых ошибок (пример такого списка) - демонстрация в одной из студенческих реализаций, объяснение проблемы и того, как стоило сделать, на примере эталонной реализации (40-60 минут).

Подробнее про материалы, какую проблему решают и из чего состоят.

По состоянию на январь 2025:

Помощь и поддержка #

Материально:

Нематериально:

  • Сарафанное радио - если я или мои материалы помогли вам, расскажите о нём тем, кто только начинает свой путь по изучению разработки
  • Вычитка материалов, исправление стилистических и орфографических ошибок, опечаток. Исправления можете отправлять в пул реквестах на GitHub или писать мне в Telegram
  • Адаптация материалов для других бэкенд платформ - PHP, NodeJS, ASP.NET и других. Для этого можете создать отдельный репозиторий с материалами, и сослаться на оригинальный (данный) репозиторий
  • Таймстемпы к YouTube видео

Жду вашу обратную связь, идеи по улучшению и исправлению ошибок - чат сообщества.