Длительность
4 месяца
Язык обучения
русский
Возраст
16 лет и старше
Формат обучения
оффлайн
О профессии:
Изучите компилируемый статически типизированный язык программирования от компании Google вместе с Алиф Академией. Научитесь разрабатывать back-end веб-приложения с профессиональным преподавателем, который будет помогать вам на протяжении всего курса.
Выполните выпускной проект, который сможете включить в своё портфолио. Получите шанс стать Go разработчиком в передовых компаниях.
Чему научитесь
Особенности и синтаксис Go
Изучите основы языка, синтаксис, работу с типами данных и уникальную систему интерфейсов для создания гибкого кода.
Многопоточность и конкурентность
Освоите работу с Goroutines и Channels главными инструментами Go для высокопроизводительных вычислений.
Работа с данными в PostgreSQL
Научитесь проектировать сложные схемы баз данных, писать SQL-запросы и интегрировать их в Go-приложения.
Разработка микросервисной архитектуры
Поймете принципы разделения монолита на сервисы и организуете их взаимодействие через gRPC и REST.
Тестирование и надежность кода
Научитесь писать Unit-тесты и интеграционные тесты для обеспечения стабильности вашего продукта.
Безопасность и криптография
Освоите методы аутентификации (JWT,OAuth2), авторизации и способы защиты данных с помощью криптографических алгоритмов.
Программа курса
Базовые основы
- Установка окружения и настройка рабочей среды (Go SDK, IDE).
- Понимание системы модулей (go mod) и структуры проекта.
- Работа со встроенными типами данных и управляющими конструкциями.
- Основы работы с указателями и структурами.
- Идиоматичная обработка ошибок (Error handling) в Go.
Специализированные модули:
- Глубокое изучение модели OSI и протоколов TCP/UDP.
- Работа со стандартной библиотекой net/http.
- Реализация клиент-серверного взаимодействия.
- Понимание работы сокетов и жизненного цикла запроса.
- Проектирование архитектуры API и методов ресурсов.
- Работа с форматами обмена данными JSON и XML.
- Реализация Middleware (промежуточного ПО) для логов и защиты.
- Документирование API с помощью Swagger/OpenAPI.
- Работа с Goroutines: создание и управление легковесными потоками.
- Синхронизация данных через каналы (Channels).
- Использование пакета sync: Mutex, WaitGroup и Once.
- Паттерны конкурентности: Worker Pool, Fan-in/Fan-out.
- Работа с драйверами баз данных (PostgreSQL) в Go.
- Использование SQL-запросов, транзакций и уровней изоляции.
- Версионирование схем данных и миграции (Goose/Migrate).
- Интеграция и настройка ORM (GORM) для быстрой разработки.
- Определение контрактов через Protocol Buffers.
- Генерация кода и создание gRPC сервисов.
- Стриминг данных и бинарная сериализация.
- Преимущества gRPC перед REST в высоконагруженных системах.
- Написание Dockerfile и создание образов для Go-приложений.
- Многоэтапная сборка (Multi-stage build) для уменьшения веса образа.
- Основы CI/CD: автоматизация тестирования и сборки.
- Подготовка приложения к запуску в облачных окружениях.
Как проходит обучение
Посещаете лекции и участвуете в практических занятиях
Выполняете домашние задания и закрепляете знания через практические кейсы
Получаете обратную связь от преподавателей и участвуете в обсуждениях на живых сессиях
Защищаете итоговый проект перед экспертами и получаете сертификат о завершении курса




Резюмепосле обучения
Должность
Backend разработчик на Go
Навыки
- Разработка масштабируемых систем.
- Написание чистого и идиоматичного кода на Go.
- Оптимизация производительности приложений.
- Проектирование реляционных баз данных.
- Создание REST и gRPC сервисов.
- Работа с Git и командная разработка.
- Настройка аутентификации пользователей.
- Контейнеризация приложений.
- Профилирование и отладка программ.
- Написание технической документации (Swagger/OpenAPI).
