Kail
Организатор
Проверенный
Организатор
- Регистрация
- 09.04.2020
- Сообщения
- 353 752
- Реакции
- 32 696
- Монеты
- 1 191
- Оплачено
- 0
- Баллы
- 0
- #SkladchinaVip
- #1
Микросервисы, как в BigTech [Олег Козырев]
- Ссылка на картинку
Научись разрабатывать высокопроизводительные, масштабируемые микросервисы, как в ВК Yandex OZON Avito СБЕР Тинькофф, и увеличь свои шансы на трудоустройство в BigTech или повышения грейда
Обучение подойдет для Junior и Middle backend-разработчиков/ Для курса нужно:
На обучении ты глубоко погрузишься в микросервисы
ПРОГРАММА.Беспощадно кодим микросервисы на протяжении 8 недель
Cодержание
Результат
Результат
Неделя3. Cодержание
Результат
Неделя 4.
Cодержание
Результат
Неделя 5.
Cодержание
Результат
Cодержание
Результат
Неделя 7.
Cодержание
Результат
Неделя 8.
Cодержание
Результат
А потом бесплатно учимся хорошо устраиваться в BigTech
Бонус №1 Составишь резюме, после которого приглашают на собеседование.
Бонус №2 Научишься при трудоустройстве поднимать оффер на 30 000−70 000 рублей. Максим Фатин. Эксперт по ведению переговоров, Senior Developer
Олег Козырев Преподаватель, Senior Engineer в Avito Tech. Поболтаем за жизнь, о работе, решим карьерные трудности или глубже разберем темы с курса 1 на 1. А еще можем провести mock-собеседование — погоняю тебя по позиции, на которую хочешь устроиться, и поделюсь фишками прохождения реального собеса
Преподаватель — Олег Козырев
AvitoSenior Engineer
разрабатываю BaaS-платформу (Backoffice as a Service)
Ozon Tech: ЛогистикаSenior Engineer
разрабатывал сервисы организации перевозок товаров продавца на склад
Ozon Tech: МоментыSenior Engineer
разрабатывал систему модерации «рилсов» внутри приложения Ozon
Ozon Tech: МаркетплейсSenior Engineer
разрабатывал сервис, который отслеживает своевременность доставки посылок
Route 256Ex-преподаватель и тьютор
менторил и преподавал курсы по построению микросервисов в школе Ozon Tech
YaTalksВедущий конференции
вел второй день конференции по программированию от Яндекса
Тариф Бес Проверки
Обучение подойдет для Junior и Middle backend-разработчиков/ Для курса нужно:
- Знать основы Golang - все практические примеры будут на нем
- Уметь пользоваться git, чтобы качественно работать с кодовой базой
На обучении ты глубоко погрузишься в микросервисы
ПРОГРАММА.Беспощадно кодим микросервисы на протяжении 8 недель
Cодержание
- Что такое протокол http
- Напишем http-сервер
- Что такое REST
- Чем плох json
- Что такое protobuf
- Чем плох http 1.1
- Что такое gRPC?
- Пишем первый proto-файл
- Генерируем proto-файл
- Реализуем простую логику ручек
- Поднимем gRPC-сервер со своим API
- Реализуем gRPC-клиент
Результат
- Создашь два рабочих микросервиса с gRPC-серверами внутри, которые поддерживают базовый API
- Регистрируемся в Selectel и покупаем свой сервер
- Собираем приложение и запускаем его на сервере
- Что такое Docker
- Разберемся, в чём суть контейнеризации, какая разница между ней и виртуализацией
- Пишем Docker файл для приложения и собираем его
- Создаем registry для docker образов в Selectel и загружаем наш образ
- Устанавливаем docker на наш сервер
- Запускаем приложение из нашего образа
- Что такое GitHub Actions
- Пишем actions для деплоя и запуска нашего приложения
- Что такое config и почему их бывает несколько
- Пишем config’и для разных сред
- Пишем обработчик config’а
- Что такое Postgres
- Запуск Postgres в Docker Compose
- Что такое миграции
- Пишем миграции и накатываем их с помощью утилиты goose
- Простые запросы в Postgres с помощью pgx
- Пишем запросы с помощью билдера squirrel
- Заворачиваем накатку миграций в отдельный Docker контейнер
Результат
- Разработаешь базовую бизнес-логику созданных ранее API с использованием базы данных PostgreSQL
Неделя3. Cодержание
- Что такое слои и зачем они нужны
- Пишем repo-слой
- Пишем сервисный слой
- Пишем модели и конверторы
- Пишем инициализацию всех зависимостей
- Что такое DI контейнер
- Пишем свой DI контейнер
- Недостаток работы с pgx напрямую
- Пишем свою обертку над клиентом к БД
- Что такое транзакции
- Недостаток работы с транзакциями через pgx
- Пишем свой transaction manager
- Встраиваем transaction manager в свою обертку над клиентом к БД
Результат
- Научишься рефакторингу и сделаешь удобную, расширяемую и гибкую
Неделя 4.
Cодержание
- Зачем нужны тесты
- Какие виды тестов бывают
- Пишем юнит-тесты для простого кода
- Пишем юнит-тесты для кода с моками зависимостей
- Что такое платформенная библиотека
- Создаем свою платформенную библиотеку
Результат
- Покроешь функционал своих сервисов unit-тестами и создашь собственную платформенную библиотеку, состоящую из общих компонентов твоих проектов
Неделя 5.
Cодержание
- В чем проблема gRPC
- Что такое grpc-gateway
- Описываем опции gateway в proto-файле
- Генерируем proto-файл с gateway
- Поднимаем http-сервер для работы с gateway
- Что такое proto-валидация
- Описываем опции валидации в proto-файле
- Генерируем proto-файл с валидацией
- Применяем сгенерированную валидацию
- Что такое интерцептор?
- Пишем валидационный интерцептор
- Что такое swagger
- Генерируем proto-файл со swagger и используем результат в Postman
- Что такое CORS
- Поднимаем отдельный swagger-сервер
Результат
- В одном из сервисов поднимешь свой gRPC-Gateway, который позволит обрабатывать http-трафик
Cодержание
- Что такое TLS
- Генерируем сертификаты
- Подключаем сертификаты на сервере
- Подключаем сертификаты на клиенте
- Что такое JWT
- Описываем контракты аутентификационного API
- Пишем генерацию access токена
- Пишем генерацию refresh токена
- Пишем проверку валидности токена
- Учимся передавать и принимать токен через контекст
- Пишем серверный и клиентский интерцепторы для работы с токеном
Результат
- Обеспечишь транспортную безопасность взаимодействию твоих сервисов друг с другом
- Создашь систему аутентификации и авторизации для своих проектов средствами JWT
Неделя 7.
Cодержание
- Что такое логи
- Zap-логгер
- Пишем обертку над zap-логгером
- Что такое метрики
- Разворачиваем prometheus в Docker-compose
- Поднимаем сервер для метрик и организуем их сбор
- Смотрим метрики и интерпретируем их на примере RPS
- Что такое Grafana
- Разворачиваем Grafana в Docker-compose
- Импортируем метрики из prometheus в Grafana
- Что такое трейсинг
- Разворачиваем Jaeger в Docker сompose
- Организуем сбор трейсов
Результат
- На примере одного из сервисов добавишь грамотное логгирование о различных событиях, метрики, сигнализурующие о важных показателях системы, а также организуешь сбор трейсов
Неделя 8.
Cодержание
- Что такое timeout
- Применяем timeout через контекст
- Что такое Rate Limiter
- Пишем свой Rate Limiter
- Что такое Circuit Breaker
- Подключаем готовую реализацию Curcuit Breaker
- Система ошибок в gRPC
- Обсуждаем дизайн системы ошибок для бизнес логики
- Пишем реализацию валидатора бизнес логики
- Пишем обработчик ошибок
- Пишем интерцептор для конвертации бизнес ошибок в транспортные
- Что такое стриминговые ручки в gRPC
- Добавляем стриминговую ручку в API
- Что такое cli-утилита
- Пишем свою cli-утилиту для связи с сервером
Результат
- Умеешь применять паттерны отказоустойчивости и работать со стриминговыми ручками в gRPC. Кроме этого, ты разработаешь свою cli-утилиту в качестве чат-клиента
А потом бесплатно учимся хорошо устраиваться в BigTech
Бонус №1 Составишь резюме, после которого приглашают на собеседование.
- Как на самом деле правильно составлять резюме?
- Какие главные ошибки айтишников при поиске работы?
- Красные флаги в резюме, которые не любят рекрутеры
Бонус №2 Научишься при трудоустройстве поднимать оффер на 30 000−70 000 рублей. Максим Фатин. Эксперт по ведению переговоров, Senior Developer
- Стоит ли говорить рекрутеру ожидания по зарплате?
- Как тимлид может влиять на твой оффер?
- Механики и лайфхаки – как поднять финальный оффер?
Олег Козырев Преподаватель, Senior Engineer в Avito Tech. Поболтаем за жизнь, о работе, решим карьерные трудности или глубже разберем темы с курса 1 на 1. А еще можем провести mock-собеседование — погоняю тебя по позиции, на которую хочешь устроиться, и поделюсь фишками прохождения реального собеса
Преподаватель — Олег Козырев
AvitoSenior Engineer
разрабатываю BaaS-платформу (Backoffice as a Service)
Ozon Tech: ЛогистикаSenior Engineer
разрабатывал сервисы организации перевозок товаров продавца на склад
Ozon Tech: МоментыSenior Engineer
разрабатывал систему модерации «рилсов» внутри приложения Ozon
Ozon Tech: МаркетплейсSenior Engineer
разрабатывал сервис, который отслеживает своевременность доставки посылок
Route 256Ex-преподаватель и тьютор
менторил и преподавал курсы по построению микросервисов в школе Ozon Tech
YaTalksВедущий конференции
вел второй день конференции по программированию от Яндекса
Тариф Бес Проверки
- 18 практических уроков
- Бессрочная запись курса
- Домашние задания после лекций
- Дипломный проект
- Q&A-сессии и live-разборы домашек
- Доп.модуль от HR-специалиста
- Доп.модуль по торгу за зарплату
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.