Golang-разработчик
Рейтинг школы
Описание курса
Курс для повышения навыков разработки и поддержки сервисов на Golang. Изучите тонкости языка, конкурентную модель, работу с базами данных, микросервисами и инструментами DevOps. Соберите рабочий проект для портфолио на максимально приближенных к работе кейсах.
Программа
Основы Go
Сборка и запуск программ, отличия от других языков, структура программы, модули, пакеты, указатели, методы, структуры, массивы, слайсы, maps, строки и руны. Типичные ошибки.
Конкурентность
Горутины и каналы, оператор select, пакет sync, паттерны конкурентной области, типичные ошибки.
Интерфейсы и ошибки
Error wrapping, пакет multierror, Panic/recover, типичные ошибки при работе с errors/interfaces/panic.
Тестирование
Интеграционные тесты, Fuzzy тестирование, библиотеки gomock, testify, ловушки при написании тестов.
Пакет context
Основные концепции, ошибки/проблемы при работе с context.
Проектная работа и оптимизация
Подготовка основы проекта, конфигурация, логирование, профилирование, оптимизация, рекомендации по созданию проекта.
HTTP и базы данных
Кодогенерация, проблемы с HTTP, таймауты, работа с базами данных, подключение БД к проекту.
Микросервисы и GRPC
Разделение сервисов, антипаттерны монолита, GRPC, асинхронная архитектура, брокеры сообщений.
DevOps и деплой
Совместимость контрактов, сборка образов, канарейки, отказоустойчивость, feature toggles, rollback, канареечный деплой.
Observability
Наблюдаемость, метрики, Prometheus, структурированное логирование, трассировки, OpenTelemetry, Spans, Sampling.
Нагрузочное тестирование
Пирамида тестирования, виды нагрузочных тестов, анализ результатов, инструменты, типичные ошибки, SRE.
Формат
Онлайн (видеоуроки, практические задания, онлайн-встречи, чат-группы в Telegram)
Спикеры
- Senior Software Engineer с 9+ годами в коммерческой разработке, ранее работал в Avito. Выступает на конференциях, пишет сложные проекты с нетривиальной бизнес-логикой, строит инфраструктуру в публичных облаках.
Чему вы научитесь
- Разработка приложений на Golang
- Работа с горутинами и каналами
- Обработка ошибок и интерфейсов
- Написание и отладка тестов (Unit, Integration, Fuzzy)
- Работа с пакетом context
- Профилирование и оптимизация кода
- Работа с базами данных
- Проектирование микросервисной архитектуры
- Использование GRPC
- Настройка CI/CD и деплоя (Docker, Kubernetes concepts)
- Наблюдаемость систем (Prometheus, OpenTelemetry)
- Нагрузочное тестирование
Кому подходит
- Разработчики с опытом коммерческой разработки от года
- Специалисты с опытом работы с Docker и Linux
- Разработчики, пишущие конкурентный/многопоточный код
- Те, кто хочет перейти в профессию Golang-разработчика
- Разработчики, желающие расширить стек и систематизировать знания
Требования к кандидату
Понимание работы с базами данных и очередями, опыт работы с Docker, базовое умение работы в консоли, опыт коммерческой разработки от года, опыт работы с Linux, опыт написания конкурентного/многопоточного кода
Выводы о курсе
Возможны неточности
Курс «Разработчик на языке программирования Go» предназначен для опытных разработчиков, желающих углубить знания в Golang и перейти на уровень Senior. Программа охватывает все аспекты от базовых синтаксических конструкций до продвинутых тем: конкурентность, микросервисы, GRPC, DevOps-практики и наблюдаемость. Уникальность курса заключается в практическом подходе: студенты собирают реальный проект для портфолио, решают задачи, максимально приближенные к производственной среде, и получают обратную связь от менторов. Спикер с 9+ годами опыта в Avito гарантирует актуальность материала и понимание реальных бизнес-задач. По завершении курса вы будете готовы к разработке сложных высоконагруженных систем на Go.
Отзывы о школе · 3
Читать всеРекомендованные курсы