Микросервисы на Go

Освойте разработку микросервисов на Go: от основ до сложных архитектурных решений для высокой производительности

23 июля

3 месяца

Онлайн

Для кого этот курс?

  • Go-разработчиков, с опытом от 2-х лет, стремящихся углубить знания в микросервисной архитектуре и применении языка Go
  • Архитекторов работающих с микросервисной архитектурой, с опытом проектирования от 2-х лет, желающих освоить современные подходы к проектированию микросервисов и улучшить управление распределенными системами
  • Выпускников курсов System Design, которые хотят расширить своим компетенции и улучшить качество работы и которые обладают необходимыми навыками, для успешного освоения программы

Необходимые знания

  • Уверенное знание Go
  • Понимание микросервисной и монолитной архитектур, взаимодействия между отдельными компонентами
  • Понимание работы с СУБД и Брокерами сообщений
  • Навыки работы с git и linux
  • Опыт разработки от 2-3 лет

Вы освоите:

  • Применение микросервисной архитектуры: Освоение применения принципов проектирования и разработки микросервисов через практические кейсы, включая чистую архитектуру
  • Инструменты CI/CD: Навыки работы с инструментами непрерывной интеграции и доставки, такими как GitHub и GitLab, для автоматизации процессов разработки
  • Мониторинг и логирование: Отточите умение внедрять и настраивать механизмы наблюдения за работой микросервисов и анализа их производительности
  • Сетевое взаимодействие: Применение различных технологий для общения между микросервисами, таких как HTTP/2, gRPC и REST в реальных проектах
  • Обработка данных: Знания и навыки работы с различными системами хранения и обработки данных, такими как PostgreSQL, MongoDB, Apache Kafka и RabbitMQ в контексте микросервисной архитектуры
  • Системный дизайн: Освоение применения паттернов системного дизайна для проектирования устойчивых и масштабируемых приложений.

После обучения вы сможете:

  • Проектировать микросервисные архитектуры: Умение разрабатывать и внедрять микросервисы, основываясь на лучших практиках и рекомендациях
  • Автоматизировать процессы разработки: Использовать инструменты CI/CD для автоматизации сборки и доставки приложений на рабочие серверы
  • Внедрять систему мониторинга: Настраивать логи и мониторинг микросервисов для улучшения их надежности и быстрого реагирования на проблемы
  • Разрабатывать API: Создавать и поддерживать RESTful и gRPC API для взаимодействия между микросервисами
  • Работать с различными базами данных: Умело взаимодействовать с реляционными и NoSQL СУБД для устойчивого хранения данных
  • Применять системный дизайн: Реализовывать паттерны системного дизайна для разделения монолитов на микросервисную архитектуру, оптимизируя бизнес-процессы.

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в Telegram, сдача домашних работ и получение обратной связи от преподавателя.

Оптимальная нагрузка

Возможность совмещать учебу с работой

Портфолио

Индивидуальная разработка итоговой проектной работы 

Перспективы

 

Получите знания, которые помогут повысить вашу востребованность и доход

Партнеры

Многие студенты еще во время прохождения первой части программы находят или меняют работу, а к концу обучения могут претендовать на повышение в должности. Мы оказываем помощь в вопросах карьеры на протяжении всего обучения и спустя полгода после его завершения.

  • Получите помощь с оформлением резюме, портфолио и сопроводительного письма
  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
  • Пройдете карьерную консультацию с нашим HR-специалистом
  • Получите рекомендации, как искать работу, и советы по прохождению собеседования
Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда

Обратная связь


Домашние задания с поддержкой и обратной связью наших преподавателей помогут освоить изучаемые технологии

Активное комьюнити


Чат в Telegram для общения преподавателей и студентов

Программа

Архитектура приложения

Рассмотрим подходы к чистой архитектуры приложения на Go.

Тема 1: Чистая архитектура приложения

Тема 2: Доменная модель и Агрегаты

Тема 3: Репозитории и адаптеры

CI/CD, совместная работа

Рассмотрим механику совместной работы и публикацию работы на рабочие сервера.

Тема 1: Совместная работа с Github, Gitlab

Тема 2: Публикация приложений

Тема 3: Модульное тестирование и профилирование

Тема 4: Тестирование микросервисов

Observability (Мониторинг, логирование, трассировка)

Разберем механику наблюдения и реагирования на работу микросервисов

Тема 1: Логирование

Тема 2: Мониторинг

Тема 3: Трассировка

Сетевое взаимодействие

Разберем как микросервисы общаются между собой

Тема 1: HTTP/х и WebSockets

Тема 2: gRPC

Тема 3: REST

Тема 4: Раскрываем горизонты REST

Тема 5: TLS

Хранение данных

Рассмотрим как работать с разными вариантами хранения данных при взаимодействии с микросервисами

Тема 1: PostgreSQL

Тема 2: NoSQL (MongoDB)

Тема 3: InMemory DB

Тема 4: RabbitMQ

Тема 5: Apache Kafka

Тема 6: Распределенные хранилища

Системный дизайн

Рассмотрим реализацию паттернов системного дизайна

Тема 1: Domain-Driven Design

Тема 2: Разделение монолита на микросервисы

Тема 3: Дизайн микросервисов - Event sourcing

Тема 4: Дизайн микросервисов - CQRS

Тема 5: Отказоустойчивость микросервисов

Проектная работа

Тема 1: Выбор темы и организация проектной работы

Тема 2: Консультация по проектам и домашним заданиям

Тема 3: Защита проектных работ

Тема 4: Подведение итогов курса

Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит

Выпускной проект


Каждый курс завершается финальным проектом, который предстоит защитить перед преподавателями и командой. Вам будет, что обсудить на собеседовании!

Вы сможете объединиться по группам и разрабатывать один масштабный проект. А ваши домашние задания станут частью проектной работы.

Корпоративное обучение для ваших сотрудников

OTUS помогает развивать высокотехнологичные команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Подтверждение знаний и навыков

OTUS осуществляет лицензированную образовательную деятельность.
В конце прохождения специализации вы получите сертификат OTUS и официальный диплом о получении новой специальности

После обучения:

  • Удостоверение о повышении квалификации: если вы успешно защитили выпускной проект
    и готовы предоставить копию документа о высшем или среднем профессиональном образовании

  • Доступ к учебным материалам курса

  • Ваш личный проект, который поможет проходить собеседования

Частые вопросы

Что, если в середине курса я не смогу продолжать обучение?
У вас есть право одного бесплатного трансфера в другую группу
Обязательно ли защищать выпускной проект?
Для получения сертификата OTUS необходимо сдать проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем.
С какого момента я смогу заниматься трудоустройством?
Получить карьерную консультацию вы сможете уже в начале обучения. Остальные опции: помощь с резюме, добавление резюме в нашу базу специалистов и т.д. будут доступны после окончания обучения.
Я могу вернуть деньги?
Да, вы можете сделать возврат средств пропорционально оставшимся месяцам обучения.