Skillfactory: Backend-разработчик на Go
На курсе для начинающих вы освоите язык Golang и бэкенд-разработку. Вы научитесь писать код с нуля, использовать REST API, SQL, Git, Docker и многое другое для проектирования сложных многопоточных масштабируемых проектов. По окончании вы получите консультации карьерного центра и сможете гарантированно устроиться на позицию Junior+ Go Developer.

Длительность – 12 месяцев, стоимость – 3629 руб/мес. при рассрочке на 36 месяцев.
Программа: включает в себя 7 модулей и итоговый проект. Вы изучите основы программирования на Go, алгоритмы и структуры данных, инструменты разработчика (Linux, Git, Docker), базы данных и работу с сетью. На последнем модуле освоите архитектуру DevOps.
Чему научитесь:
- Автоматизировать масштабные процессы;
- Создавать высокопроизводительные приложения;
- Разбираться в серверной архитектуре;
- Работать с Linux, БД, API.


Как проходит обучение:
- Курс проходит в видеорежиме без строгого графика.
- Вы смотрите короткие видеолекции и выполняете самостоятельные упражнения.
- Для практики предусмотрены тренажеры, тесты, групповые работы и крупные проекты.
- В качестве практических работ используются реальные кейсы компаний.
- В конце вы защищаете выпускной проект и получаете возможность пройти стажировку в компании-партнере и даже получить оффер.
Бонусы: 3 крупных проекта в портфолио, консультации от центра карьеры, практика на рабочих кейсах, сертификат.
Программа курса
Темы:
- Основы разработки и веб-технологий
- Установка окружения, компиляция и запуск программ на GO
- Основные синтаксические конструкции
- Ветвления, циклы
- Функции и методы
- Обработка ошибок
- Массивы, словари, слайсы
Практика:
- 5 учебных программ на GO
- 10 тренировочных задач для собеседований
- Проект: реализация калькулятора различными способами
Темы:
- Сложность алгоритмов и О-нотации
- Массив, список, очередь, стек
- Алгоритмы сортировки
- Деревья, графы
- Хеш-функции
Практика:
- 10 написанных программ
- 6 тренировочных задач на алгоритмы
Темы:
- Понятие процесса и потока в операционной системе
- Горутины и базовая синхронизация
- Синхронизация с использованием атомиков и каналов
- Основные шаблоны использования горутин
Практика:
- Задачи с горутинами
- Проект: пайплайн для обработки данных
Темы:
- Виртуальная машина, установка Linux
- Управление пользователями, работа с файлами, процессы
- Сетевые интерфейсы Linux
- Работа в Git, Git Flow
- Основы контейнеризации, Docker
Практика:
- Задачи по работе с версиями и ветками в Git
- Проект: упаковка проекта пайплайна в Docker
Темы:
- Реляционные базы данных, проектирование базы данных
- Язык SQL, транзакции
- Работа GO с реляционными базами данных ( MySQL и с нереляционными ( MongoDB )
Практика:
- Задания на проектирование баз данных
- Проект: сервер для агрегатора новостей
Темы:
- Модули, профилирование, отладка
- Тестирование
- Ввод/вывод. Регулярные выражения
- Сетевые приложения
- REST API
Практика:
- 7 написанных программ на GO
- Проект: новостной агрегатор
Темы:
- Архитектурные принципы
- Шаблоны проектирования
- Методы доставки приложений
- Очереди сообщений
Практика:
- 3 написанных программ на GO
- Финальный проект: разделить новостной агрегатор на микросервисы
В финале курса вам предстоит самостоятельно разработать приложение новостного агрегатора на основе микросервисной архитектуры.
Его функционал будет включать такие возможности, как:
- Поиск по названию
- Постраничная навигация
- Сквозной идентификатор запроса
- Журналирование запросов
- Комментирование
- Фильтры новостей
В результате вы научитесь:
- Анализировать потребителей API и выбирать удобные форматы обмена данными
- Быстро создавать заготовки будущих сервисов
- Разрабатывать микросервисы