Программирование
Для продвинутых

Otus: Golang Developer. Professional

На ускоренном курсе вы научитесь основам Golang, созданию микросервисов, взаимодействию со сторонними системами и другим навыкам. Курс предназначен для веб-разработчиков с опытом. Вы освоите Concurrency в Go, работу с SQL, http и gRPC, Docker и создадите итоговый проект для закрепления знаний.

Начало обучения
В любое время
Стоимость обучения
от 143000 р.
Срок обучения
5 (мес.)
Уровень
Для продвинутых

Длительность – 5 месяцев, стоимость – 14300 руб, возможна рассрочка.

Программа: состоит из 6 модулей вместе с проектным. Курс начинается с введения в Go, затем изучается синхронизация, библиотеки, сеть и БД, микросервисы. В финале вы защищаете проектную работу по созданию микросервисов.

Чему научитесь:


  • Писать production-ready код и многопоточные программы;
  • Понимать синтаксис и алгоритмы Golang;
  • Работать с сетью и базами данных;
  • Создавать микросервисы и разворачивать их в Docker.
Otus: Golang Developer. Professional

Как проходит обучение:


  1. Курс проходит в режиме онлайн-вебинаров дважды в неделю, которые сохраняются в личном кабинете.
  2. Сдача домашних работ происходит онлайн, код-ревью дают эксперты-разработчики.
  3. В конце вы защищаете проектную работу, тема которой указывается в сертификате.

Бонусы: сервис на Go в портфолио, комплект учебных материалов, сертификат.

Программа курса

Начало работы с Go
В первом модуле мы посмотрим на Go как на язык программирования. Рассмотрим основные синтаксические конструкции и их выполнение в runtime. Основное внимание уделим конструкциям, уникальным для языка Go, которых нет в другом языке.

Тема 1: Знакомство с курсом / ДЗ

Тема 2: Синтаксис языка

Тема 3: Типы данных

Тема 4: Особенности языка и типовые ошибки / ДЗ

Тема 5: Лучшие практики работы с ошибками / ДЗ

Тема 6: Тестирование в Go

Тема 7: Продвинутое тестирование в Go

Тема 8: Интерфейсы изнутри / ДЗ

Concurrency в Go
Второй модуль мы посвятим одной из самых главных тем Go — конкурентности. Познакомимся с горутинами и каналами, с тем, как устроена память и сборка мусора в Go. Научимся писать конкурентно-безопасные программы.

Тема 1: Горутины и каналы

Тема 2: Примитивы синхронизации в деталях / ДЗ

Тема 3: Дополнительные примитивы синхронизации

Тема 4: Concurrency patterns / ДЗ

Тема 5: Go внутри. Планировщик

Тема 6: Go внутри. Память и сборка мусора

Стандартные библиотеки и практики
В третьем модуле мы познакомимся с основными функциями стандартной библиотеки Golang, а также наиболее популярными open-source библиотеками. Научимся взаимодействовать с операционной и файловой системами из Go, поговорим о понятиях рефлексии и кодогенерации, а также рассмотрим инструменты профилирования программ, написанных на Go.

Тема 1: Работа с вводом/выводом в Go / ДЗ

Тема 2: Конфигурация и логирование

Тема 3: CLI / ДЗ

Тема 4: Рефлексия

Тема 5: Кодогенерация и AST

Тема 6: Дженерики в Go / ДЗ

Тема 7: Профилирование и оптимизация Go программ / ДЗ

Работа с сетью и БД
Go чаще всего используется для написания сетевых сервисов. В четвертом модуле мы изучим, как работать с сетью в языке Go. Рассмотрим стандартные протоколы и форматы, а также напишем простой web-сервер. Отдельное внимание будет уделено обработке ошибок, возникающих при работе с сетью. Дополнительно в данном модуле мы поговорим о работе с SQL и gRPC.

Тема 1: Контекст и низкоуровневые сетевые протоколы / ДЗ

Тема 2: Работа с SQL / ДЗ

Тема 3: Работа с NoSQL

Тема 4: Работа с HTTP

Тема 5: Работа с gRPC

Тема 6: Работа с gRPC ч.2 / ДЗ

Микросервисы
В пятом модуле мы рассмотрим вопросы архитектуры web-сервисов, в частности популярную на данный момент микросервисную архитектуру. Рассмотрим вопросы интеграционного тестирования, развертывания и эксплуатации приложений.

Тема 1: Монолит и микросервисы

Тема 2: Кэширование

Тема 3: Очереди сообщений / ДЗ

Тема 4: Docker

Тема 5: K8s / ДЗ

Тема 6: Helm

Тема 7: Мониторинг / ДЗ

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

Тема 9: System Design

Проект
Проект, разрабатываемый студентами, будет представлять собой реализацию микросервиса с полным набором компонентов, таких как: ядро, работа с хранилищем, конфигурация и логгирование, работа с очередями сообщений, liveness-пробы, Makefile, юнит- и интеграционные тесты, статический анализ кода, файлы для деплоя, Dockerfile'ы и пр.

Тема 1: Проектная работа. Вводное

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

Тема 3: Итоговое занятие

Отзывы

Мария Федорова

Курс по аналитике стал для меня настоящим открытием! Я научилась анализировать данные и делать выводы, которые помогают в работе. Преподаватели - настоящие профессионалы!

Игорь Васильев

Прошел курс по видео-маркетингу и остался в полном восторге. Уроки были насыщенными и информативными. Теперь я увереннее создаю видеоконтент для своих проектов. Спасибо, FireSEO!

Елена Коваленко

Курс по дизайну на FireSEO просто великолепен! Я получила много полезных знаний и навыков, которые сразу же начала применять. Рекомендую всем, кто хочет развиваться в этой области!

Алексей Громов

Курс по личной эффективности на FireSEO изменил мой подход к работе и жизни в целом. Я научился управлять своим временем и достигать целей. Это действительно стоит того!

Светлана Романова

Курс по маркетингу был очень полезным. Я узнала много новых стратегий и инструментов, которые помогли мне в работе. Преподаватели всегда готовы помочь и ответить на вопросы!

Денис Николаев

Курс по программированию - это отличный старт для новичков! Объяснения простые и доступные, а практические задания помогают закрепить материал. Очень рекомендую!

Попробуйте любой формат курса

Всё необходимое, чтобы начать работать junior
18 000 ₽/мес
То же самое + больше навыков, которые помогут найти работу и быстрее
19 000 ₽/мес
Можно быстрее освоить базовую программу, но учёбе нужно уделять
40 000 ₽/мес