Последний поток Golang для инженеров в 2022

—

от автора

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/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *