Найдите свою сладкую парочку
Найдите свою сладкую парочку
Найдите свою сладкую парочку
Golang для инженеров
поток: старт 10 марта
длительность 3 месяца
Best Practies погружения в Go для работы с микросервисами и мониторингом. Научитесь создавать свой API сервер с помощью Golang, запускать контейнеры, взаимодействовать с Docker из Go и работать с кастомными операторами
27 часов теории
система для сбора состояния сервисов — упрощённый Prometheus
4 онлайн-встречи и чат в телеграм со спикерами
от менторов
Упор на практику
39 часов практики
Полноценный проект
Прямое общение со спикерами
Код-ревью практики
Наш курс для IT-специалистов, которые хотят изучить один из самых высокооплачиваемых языков* и повысить свою ценность на рынке труда
*по данным исследования «Хабр Карьеры»
Добавили:
Обновили программу в 2024 году
А вот что исправили:
  • обновили и улучшили формулировки заданий после обратной связи
  • добавили ряд тест-кейсов для проверки домашних заданий в CI
  • практическое задание на использование пакета context
  • теоретические материалы и практику по generic-ам
  • теоретический материал и практику по асинхронному взаимодействию через брокер сообщений
  • список частых ошибок при написании кода
Кому подойдёт курс?
Сможете автоматизировать процесс разработки и ускорить программирование. Повысите уровень администрирования
DevOps-инженерам
Системным администраторам
  • SRE-инженерам
Также
  • Инженерам поддержки
  • Инженерам мониторинга
Освоите новые инструменты и технологии, которые необходимы DevOps-инженерам. Сможете претендовать на более высокооплачиваемую и перспективную позицию DevOps-инженера
А для более глубокого погружения в язык и инфраструктуру Golang рекомендуем присоединиться к потоку курса «Golang-разработчик»
Чему научим
Уверенно писать на Go: переменные, типы данных, функции и структуры
Создавать микросервисы, взаимодействуя с Docker и Kubernetes
Разрабатывать и тестировать API-сервисы на языке Go
Работать с многопоточностью и параллелизмом в Go
Использовать Docker для контейнеризации приложений и управления ими
Работать с Kubernetes, включая создание и использование операторов
Тестировать, оптимизировать и проверять качества кода для устойчивости систем
Понадобятся знания:
Будет большим плюсом:
  • Базовые навыки автоматизации на Bash
  • Опыт работы с GitLab и GitLab CI
  • Базовые навыки администрирования Linux: взаимодействие с процессами, файлами, использование прикладных протоколов передачи данных
  • Основ программирования, понимание основных конструкций и подходов
  • Опыт работы с Git
  • Понимание предназначения Ansible и модулей Ansible
Проверь свои знания!
Главное практика
39 часов практики и сборки собственного полноценного проекта.
Закрепляем новые навыки с помощью практических заданий и переходим к надстройке своей системы. На протяжении всего курса вы будете создавать систему, которая будет собирать состояние других сервисов, сохранять собранное состояние в базу данных и предоставлять WEB API для доступа к сохранённым данным: упрощённый аналог Prometheus-а
Спикеры курса
Всеволод Севостьянов
Staff engineer в Lokalise
  • Более 10 лет опыта разработки на разных языках (php, java, Go)
  • Архитектор и разработчик решений для обеспечения очень высокой пропускной способности
Тигран Ханагян
Senior software engineer HungerStation DeliveryHero
  • Более 10 лет опыта разработки на разных языках (python, php, Go)
Подробнее о спикере
Подробнее о спикере
  • Tech Advisor команды DevOps
  • Специализируется на облачных решениях
  • Спикер на профильных митапах и конференциях
  • Архитектор высоконагруженных сервисов на Go с нуля, один из которых — сервис программы лояльности в city-mobil.ru
  • Автор статей в публичных каналах
  • Спикер на профильных митапах и конференциях
Всеволод Севостьянов
Staff engineer в Lokalise
  • Более 10 лет опыта разработки на разных языках (php, java, Go)
  • Архитектор и разработчик решений для обеспечения очень высокой пропускной способности
  • Tech Advisor команды DevOps
  • Специализируется на облачных решениях
  • Спикер на профильных митапах и конференциях
Тигран Ханагян
Senior software engineer HungerStation DeliveryHero
  • Более 10 лет опыта разработки на разных языках (python, php, Go)
  • Архитектор высоконагруженных сервисов на Go с нуля, один из которых — сервис программы лояльности в city-mobil.ru
  • Автор статей в публичных каналах
  • Спикер на профильных митапах и конференциях
Как проходит обучение
2 часа теории
4
14
онлайн-встречи
практических заданий
приближенных к реальным кейсам
8 модулей + проект
66
часов всего
итоговый сертификат
6
часов в неделю
4 часа практики
код-ревью и общение в телеграм-чате с преподавателями
Шаг 1
Смотрим видеоуроки и читаем теорию
Шаг 2
Шаг 3
Шаг 4
Шаг 5
Делаем практические задания и закрепляем теорию
Обсуждаем задания и задаем вопросы в телеграм-чате с преподавателями
Встречаемся со спикерами на онлайн-встречах и получаем код-ревью
Разрабатываем итоговый проект для получения сертификата
Программа
у вас будет 2 недели на сдачу каждого домашнего задания
Короткий практический курс. Создаём приложение на Golang, способное копировать и анонимизировать данные для prod-like окружений.
Внутри курса:
  • Подключение к базам данных Postgres и MongoDB из своего приложения, выполнение запросов, обновлений и удаления данных, а также работа с транзакциями
  • Разработка методики для анонимизации данных, чтобы защитить конфиденциальность информации при копировании данных между окружениями
  • Основы создания консольных приложений в языке программирования Golang, включая работу с флагами командной строки, обработку ввода-вывода и управление процессами
Блок I.
  • Философия Go. Для каких проектов он годится, а для каких – нет и почему. Зачем Go нужен инженерам.
  • Общее описание задачи на микросервис

Блок II.
  • Переменные и типы данных. Переменные и константы
  • Переменные и типы данных. Простые типы
  • Переменные и типы данных. Составные типы
  • Функции
  • Циклы, switch-case, if
  • Задания для закрепления новых навыков
Разберемся, зачем нужен язык Go и где его лучше применять, рассмотрим основные недостатки, поймем какие рабочие процессы можно упростить с помощью GO.
  • Познакомимся со спикерами
  • Расскажем про курс и программу
  • Обсудим формат обучения
  • Ответим на ваши вопросы
Подробно разберем, как GO подходит к реализации по объектно-ориентированному программированию (ООП), и как обрабатывать и комбинировать ошибки.
  • Структуры
  • Интерфейсы
  • Обобщенное программирование и ООП в Golang
  • Garbage collector
Научимся отличать конкурентности от параллелизма, освоим правильную работу с конкурентностью в GO (стандартные подходы и концепции в GO для работы с конкурентностью)
  • Параллелизм и конгруэнтность. Что это такое и чем они отличаются?
  • Треды vs горутины
  • Обработка ошибок
  • Базовый принципы синхронизации
  • WaitGroup
  • Каналы
  • Select
  • Разбор пакета contex
  • Обсуждение пройденного материала
  • Ответы на вопросы студентов
  • Разбор основных проблем и сложностей
Научимся оперировать стандартной библиотекой языка, создавать сложные программы на GO. Разберем, как тесты структурно работают, поймем, что такое тест и как он организован. Научимся запускать внешний процесс из GO.
  • Go modules и структура пакета
  • Работа с операционной системой
  • Работа с файлами и файловой системой
  • Работа с сетью в Golang
  • Обзор протоколов и форматов
Научитесь оперировать стандартной библиотекой языка, создавать сложные программы на GO. Разберем как тесты структурно работают, поймете что такое тест и как он организован. Научитесь запускать внешний процесс из GO.
  • Как работать с базой данных?
  • Пакеты для http
  • Проверка качества кода
  • Как писать тесты?
  • Кросскомпиляция и build теги
  • Обсуждение пройденного материала
  • Ответы на вопросы студентов
  • Разбор основных проблем и сложностей
Разберемся, что такое API и как с ним работать, научимся взаимодействовать с Docker из GO, запускать контейнеры и присоединяться к рабочим контейнерам. Определим характер взаимодействия, в зависимости от рабочих задач.
  • Докер и сборки
  • Зачем Docker SDK
  • Как работает API докера
  • Скачиваем образ
  • Скачиваем образ с авторизацией
  • Показываем образ
  • Сохраняем образ в файл/Читаем образ из файла
  • Запускаем контейнер
  • Запускаем контейнер в фоне
  • Выводим запущенные контейнеры
  • Останавливаем контейнеры
  • Коммит контейнера
  • Получаем статистику контейнера
  • Создание сети
  • Сигналы системы
  • Структура Kubernetes и где его найти
  • Что там с паттернами + kubectl
  • Probes
  • Jobs
  • DaemonSet
  • StatefulSet
  • Service Mesh
  • Sidecar
  • Operator
Научимся работать с кастомными операторами. Разберемся, зачем нужны паттерны Kubernetes.
  • Что такое оператор Kubernetes?
  • Состав контроллера
  • Обзор kubeclient
  • Деплоим контроллер
  • Обзор основных фреймворков для создания операторов
  • Пишем оператор с помощью kubebuilder
  • Установка и создание проекта
  • Что у нас по умолчанию в проекте и что такое scaffolding
  • Создаем CRDs
  • Пишем код контроллера для деплоймента
  • Собираем проект для ручных тестов в кластере
  • Обзор ginkgo (пишем тесты)
  • Собираем деплой
  • Обсуждение пройденного материала
  • Ответы на вопросы студентов
  • Разбор основных проблем и сложностей
В результате разработаем систему, которая будет:
  • Cобирать состояние других сервисов
  • Cохранять собранное состояние в базу данных
  • Предоставлять WEB API для доступа к сохраненным данным
  • В течение потока студенты выполняют задачи по созданию микросервиса
  • Каждая задача по созданию микросервиса привязана к конкретной теме после заданий на отработку и закрепление знаний
Сертификат
Вся работа проверяется и валидируется специалистами Слёрм. По итогам выдаём свидетельство о прохождении курса, а если выполните 80% заданий, то дополнительно получите номерной сертификат.
Этот курс может оплатить ваша компания
Если вы считаете, что знания, полученные на курсе, могут быть полезными на вашем текущем месте работы, оставляйте заявку с контактами компании в форме ниже или обсудите покупку курса с вашим руководителем. Как это организовать, что говорить и куда идти — написали здесь.
Можно учиться командой
Чем вас больше — тем дешевле
Как купить курс