
10 октября в последний раз в этом году запускаем новый поток курса, где инженеры и разработчики изучат Go с нуля и научатся применять его в инженерных задачах.
Можно потратить несколько месяцев в поисках документации, информации и ответов на вопросы на форумах, а можно прийти на курс, где мы всё уже сделали за вас: собрали материал, разложили от простого к сложному и подготовили практические задания. А спикеры курса будут ждать вас в закрытом чате и на трех АМА-сессиях, где ответят на те вопросы, что у вас останутся.
К концу обучения: разработаем систему, которая будет собирать состояние других сервисов, сохранять собранное состояние в базу данных и предоставлять WEB API для доступа к сохраненным данным (получится сильно упрощенный аналог Prometheus-a).
Кстати, в курсе мы коснемся тем по Docker и Kubernetes. Если вы до этого никогда не сталкивались по работе с k8s, то специально к запуску этого потока мы снизили цену на Kubernetes База в 2 раза! Так, при покупке комплекта можно сэкономить 25 000 руб.
Программа курса Go для инженеров
Тема №1 Введение и Тема №2 Основы Golang
1.1. Знакомство с курсом
1.2. Как учиться онлайн
1.3. Установочная встреча
1.4. Как выполнять практику
1.5. Философия Go. Для каких проектов он годится, а для каких – нет и почему.
2.1 Переменные и типы данных. Переменные и константы
2.2 Переменные и типы данных. Простые типы
2.3 Переменные и типы данных. Составные типы
2.4 Функции
2.5 Циклы, switch-case, if
2.6 Практика: создаем структуру для хранения результатов проверок внешних отслеживаемых сервисов
ЗАЧЕМ: Узнаем, зачем нужен язык GO, где его лучше применять, рассмотрим основные недостатки, поймем, какие рабочие процессы можно упростить с помощью GO.
Установочная онлайн-встреча (10 октября в 19:00)
ЗАЧЕМ: Познакомимся со спикерами, узнаем о том, как будем проходить курс и определимся с целями.
Тема №3. Погружаемся глубже в основы
3.1. Структуры
3.2. Интерфейсы
3.3. Обобщенное программирование и ООП в Go
3.4. Garbage collector
3.5. Практика: создаем первую имитацию работы нашего сервиса.
ЗАЧЕМ: Подробно разберем, как GO подходит к реализации Объектно-Ориентированного Программирования (ООП) и узнаем, как обрабатывать и комбинировать ошибки GO.
Тема №4. Concurrency
4.1. Многозадачность
4.2. Горутины
4.3. Отработка ошибок
4.4. Каналы
4.5. Инструменты синхронизации
4.6. Практика: пишем функцию, которая запускает несколько горутин и программу, демонстрирующую работу функции. Переходим от синхронных вызовов к асинхронным в микросервисе.
ЗАЧЕМ: Научимся отличать конкурентности от параллелизма, освоим правильную работу с конкурентностью в GO (стандартные подходы и концепции в GO для работы с конкурентностью)
Тема №5 GO на практике 1
5.1. Go modules и структура проекта
5.2. Работа с операционной системой
5.3. Работа с файлами и файловой системой
5.4. Работа с сетью в Golang
5.5 Обзор протоколов и форматов
ЗАЧЕМ: Узнаем, как структурировать свои приложения, как работают зависимости в модулях. Поймем, как использовать флаги env, как запускаются сторонние приложения из Go. Научимся читать и писать файлы и как писать код с основными протоколами.
Тема №6. GO на практике 2
6.1. Как работать с базой данных
6.2. Пакеты для http
6.3. Как писать тесты
6.4. Проверка качества кода
6.5. Кросскомпиляция и build теги
6.6 Чек-лист итоги основного блока
Практика: добавляем метрики, создаем работоспособный Storage, запросы в базу данных, добавляем линтер к проекту.
ЗАЧЕМ: Научимся оперировать стандартной библиотекой языка, создавать сложные программы на GO. Разберем, как тесты структурно работают, поймем, что такое тести и как он организован. Научимся запускать внешний процесс из GO.
АМА-сессия + неформальная встреча (14 ноября в 19:00)
Онлайн-встреча со спикерами, подведение промежуточных итогов, ответы на вопросы.
Тема №7. Работа с Docker из Go
7.1. Docker SDK для Go
7.2. Работаем с докером из Go
7.3. Практические советы для применения
7.4. Практика: закрепляем навыки работы с Docker SDK и делаем свое приложение, создаем Dockerfile для нашего сервиса
ЗАЧЕМ: Поймём, что такое API и как с ним работать, научимся взаимодействовать с Docker из Go. Научимся запускать контейнер и присоединяться к рабочему контейнеру. Определим характер взаимодействия, исходя из рабочих задач.
Тема № 8. Паттерны Kubernetes
8.1. Health probe/Liveness probe
8.2. Periodic job
8.3. Daemon service
8.4. Stateful service
8.5. Service discovery/Service mesh
8.6. Sidecar/Adapter
8.7. Controller/Operator
Практика: реализовываем сохранение проверок в базу данных и предоставление внешнего API для считывания результатов проверок с фильтром по дате и по домену
ЗАЧЕМ: Научимся работать с кастомными операторами. Поймем, зачем нужны паттерны Kubernetes.
Тема № 9. Операторы Kubernetes
9.1. Что такое Kubernetes Operator
9.2. Назначение операторов
9.3. Состав оператора (контроллер, индексер и kube API)
9.4. CRDs (cоздаем, заполняем переменные, генерим CRDs)
9.5. Состав контроллера
9.6. Пишем свой контроллер для деплоймента
9.7. Пишем оператор с помощью kubebuilder
9.8. Собираем проект для ручных тестов в кластере
9.9. Обзор ginkgo (пишем тесты), обзор основных фреймворков для создания операторов, kubeclient, готового http — сервера.
9.10. Пишем тест для валидации контроллера
9.11. Собираем деплой
Практика: разрабатываем оператор Kubernetes содержащий в себе весь тестовый стенд и разворачивающий его в kubernetes.
АМА-сессия + выпускной (5 декабря в 19:00)
Заключительная встреча со спикерами и командой, подведение итогов, ответы на вопросы.
Спикеры курса
Всеволод Севостьянов
Engeneering Manager в HelloFresh
Подробнее о спикере
– Более 10 лет опыта разработки на разных языках (php, java, Go)
– Архитектор и разработчик решений для обеспечения очень высокой пропускной способности (до 30 тысяч запросов в секунду на реальных бизнес кейсах)
– Tech Advisor команды DevOps
– Специализируется на облачных решениях
– Спикер на профильных митапах и конференциях
Тигран Ханагян
Team Lead & Backend Developer в Citymobil
Подробнее о спикере
– Более 7 лет опыта разработки на разных языках (python, php, Go)
– Архитектор высоконагруженных сервисов на Go с нуля, один из которых — сервис программы лояльности в city-mobil.ru
– Автор статей в публичных каналах
– Спикер на профильных митапах и конференциях
Длительность курса: 2 месяца, старт 10 октября, обучение закончится 5 декабря. Занять место: https://slurm.club/3ybSNE4
Понимаем, что сейчас время, когда сложно что-то планировать. В Слёрме есть гибкая система возвратов. По договору в течение 2х недель вы можете отказаться от продолжения обучения, мы сразу же вернем вам деньги. Если у вас произошел форс-мажор по истичении 2х недель и вы не можете продолжать обучение, мы найдем компромисс. У Слёрма нет позиции ни в коем случае не возвращать деньги.
P.S. Если не устраивает цена на обучение, у нас есть бот, обыграв который можно приобрести курс со скидкой до 30%.
ссылка на оригинал статьи https://habr.com/ru/articles/691328/
Добавить комментарий