Golang, также известный как Go, является относительно новым языком программирования, разработанным в Google. Он был создан с целью обеспечения более простого и эффективного способа написания программного обеспечения. Golang используется для создания высокопроизводительных систем и сетевых приложений.
На курсах Golang можно научиться разрабатывать быстрые, эффективные и надежные программы. Вы научитесь использовать синтаксис языка Golang и его стандартную библиотеку, а также изучите основные концепции языка, такие как указатели, структуры, интерфейсы и горутины. Кроме того, вы научитесь создавать сетевые приложения с помощью Golang и использовать его для работы с базами данных.
1 место. Курс «Профессия Go-разработчик от Skillbox»
Цена курса: Рассрочка на 22 месяца — 5 677 ₽ / мес
Ссылка на сайт: https://skillbox.ru/course/profession-godev/
Язык программирования Go от Google — прост, универсален и эффективен. Вы с нуля научитесь создавать на нём приложения с микросервисной архитектурой. За Go-разработчиков конкурируют такие компании, как Google, Dropbox, SoundCloud, Ozon, Yandex, Mail.ru и Twilio.
- Длительность – 12 месяцев
- 5 курсов в одном комплекте
- Гарантируем трудоустройство — или вернём деньги
- Доступ к курсу навсегда.
Go — молодой и востребованный язык программирования, который создали для разработки высоконагруженных приложений. Его редко выбирают новички. А зря — синтаксис Go прост и лаконичен, поэтому язык легко и быстро освоить даже людям без опыта.
Кому подойдёт этот курс:
- Новичкам в программировании
Вы освоите востребованную профессию с нуля: поймёте принципы работы с операционными системами и обменом данными, научитесь создавать и оптимизировать приложения на языке Go. Сможете начать карьеру программиста. - IT-специалистам
Вы расширите свои компетенции и выучите новый язык системного программирования. Научитесь писать поддерживаемые приложения, работать с микросервисной архитектурой и высоконагруженными системами. Сможете решать больше задач и стать специалистом широкого профиля.
Чему вы научитесь:
- Разрабатывать приложения на Go
- Работать с файловой системой
- Работать с алгоритмами поиска и сортировки
- Понимать принципы работы операционных систем и обмена данными по сети
- Программировать многопоточные распределённые системы для высоконагруженных проектов
- Собирать, тестировать и развёртывать готовые приложения
- Работать с системой контроля версий Git
- Делать код-ревью
- Прокачаете soft skills программиста.
Содержание курса:
Вас ждут вебинары и практика на основе реальных кейсов.
40 тематических модулей, 167 видеоматериалов
Основные курсы
- Разработчик на Go
- Вводный модуль. Первая программа
- Базовые типы. Целочисленные типы. Данные и вычисления
- Строки
- Условный оператор if
- Логические операторы и составные условия
- Введение в циклы: for как единая точка входа
- Вложенные циклы
- Оператор switch
- Диапазоны значений
- Числа с плавающей запятой. Математические вычисления
- Комплексные типы данных. Строки.
- Работа с файлами
- Функции в программировании
- Функции, возвращающие результат
- Композитные типы данных. Одномерные массивы. Базовые алгоритмы на массивах
- Настройка JetBrains GoLand, создание проекта на JetBrains GoLand
- Отладка и логирование
- Breakpoints
- Простые алгоритмы на массивах
- Двумерные массивы
- Анонимные функции
- Продвинутые алгоритмы на массивах. Поиск.
- Сортировка с пониженной алгоритмической сложностью
- Композитные типы данных. Срезы. Динамическое выделение памяти
- Подмножества и работа со срезами
- Строки и текстовые данные. Базовые алгоритмы со строками
- Композитные типы данных. Карты и структуры
- Переиспользование кода, модульность
- Многопоточность, работа с каналами
- Обмен данными по сети
- Микросервисная архитектура
Бонусные курсы
- Язык запросов SQL
- Универсальные знания программиста
- Система контроля версий Git
- Английский для IT-специалистов
- Карьера и развитие программиста
Итоговый проект
- Сетевой многопоточный демон
Вы разработаете демона на Golang. Он должен принимать запросы по сети, распределять их по нескольким микросервисам в режиме многопоточной работы. Вы определите архитектуру микросервисов, связь между ними, протоколы обмена данными, организуете процесс параллельной работы, потенциального горизонтального масштабирования и балансировки.
Спикеры (учителя/преподаватели) курса:
Кирилл Просвиров
Technical Marketing Engineer в компании Cisco
Алексей Лосев
Главный архитектор в АНО ЭИСИ
Антон Жуков
Highload Engineer. Area Tech Leader
Александр Соколов
Integration Development Teamlead в Ostrovok
Владимир Паценко
Senior golang developer, работал в SberDevices, на данный момент — golang-разработчик в vivid.money.
Отзывы об обучении в Skillbox доступны на сайте.
Сертификат Skillbox
Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.
Плюсы курса:
- Обучение на практике
- Подробная программа обучения
- Итоговый проект в портфолио
Минусы:
- Не найдено
2 место. Курс «Профессия Разработка на Go от GeekBrains»
Стоимость курса: Рассрочка до 36 месяцев — от 3 066 ₽ / мес
Ссылка на сайт: https://gb.ru/professions/go-developer
Научитесь создавать приложения, безопасные и масштабируемые сервисы на современном языке от Google. Его используют IT-гиганты IBM, Intel и Adobe, а в России — ВКонтакте, Avito и Ozon.
- 12 месяцев, 2 занятия в неделю
- Свидетельство, 5 работ в портфолио
- Помощь в трудоустройстве.
Кому подойдет курс:
- Новичкам
Golang отлично подходит в качестве первого языка программирования. У него простой синтаксис и короткая документация. Чтобы его освоить, не нужен технический бэкграунд. - Разработчикам с опытом
Многие компании переходят на Go и ищут специалистов со знанием двух языков. Если знаете PHP, C/C++, JavaScript, Ruby или другие языки, сможете зарабатывать больше.
Наши студенты достигают успеха
Никита Ермаков
Junior Java-разработчик в EPAM Systems
«Мне 26 лет. Раньше я жил в Старом Осколе Белгородской области и работал резчиком металла на металлургическом комбинате. Перемены в жизни я планировал долго: записался на курс в GeekBrains и собирался после него начать искать вакансии. Но меньше, чем через год после старта учебы, я нашел работу в IT и переехал в Москву.
Сейчас я Junior Java-разработчик в EPAM Systems. Это крупнейший производитель заказного ПО в мире.»
Программа курса:
- Основы программирования
- Программа, переменные и типы данных
- Блок-схемы и ветвления
- Циклы
- Функции
- Массивы
- HTML/CSS. Интерактивный курс
Познакомитесь с веб-технологиями и создадите простой сайт.
- Основные понятия в веб-разработке
- Основы языка разметки документов HTML
- Основы языка оформления стилей документа CSS
- Псевдоклассы и псевдоэлементы, табличная верстка
- Формирование блочной модели, блочная верстка
- Работа с макетом дизайна в формате PSD
- Разметка сайта и знакомство с Bootstrap
- Стандарты web и вспомогательные инструменты
- Базовый видеокурс по Git
Познакомитесь с Git — системой контроля версий, которую программисты активно используют в учебных и коммерческих проектах.
- Введение в Git
- Установка и настройка Git
- Основные команды терминала
- Работа с репозиториями
- Управление файлами репозитория
- История изменений
- Работа с ветками репозитория
- Публикация репозитория
- Слияния веток
- Управление версиями
- Создание pull-request
- Сложные операции
- Работа с Fork-репозиториями
- Базовый курс Javascript
Познакомитесь с программированием на JavaScript, чтобы создавать простые веб-страницы.
- Основы языка JavaScript
- Основные операторы
- Циклы, массивы, структуры данных
- Объекты
- Введение в DOM
- Обработка событий
- Урок-практикум
- Анонимные функции, замыкания
- Рабочая станция
Бэкенд-приложения на Go часто разворачивают на Linux. Вы познакомитесь с особенностями Linux и сможете эффективнее вести разработку.
- Установка операционной системы Linux
- Настройка интерфейса командной строки
- Управление пользователями и группами
- Процессы, загрузка операционной системы
- Устройство файловой системы. Файл и каталог
- Введение в скрипты bash. Планировщики задач crontab и at
- Управление пакетами и репозиториями. Основы сетевой безопасности
- Введение в docker
- Go. Уровень 1
Познакомитесь с основными инструментами и главными типами данных Go и научитесь создавать простые консольные приложения.
- Особенности и история появления языка Go. Работа с плейграундом и основы тулчейна.
- Базовые типы данных. Основы работы с подсистемой ввода-вывода операционной системы. Основы структурирования Go-приложений
- Операторы и управляющие конструкции, базовые функции
- Сложные типы данных: массивы, слайсы и мапы
- Сложные типы данных: структуры, функции и методы
- Сложные типы данных: указатели
- Интерфейсы. Ошибки. Основы обработки ошибок
- Основы конфигурирования приложений
- Работа с файловой системой
- Основы тестирования Go-приложений
- Финальная консультация по курсу. Ответы на вопросы
- Go. Уровень 2
Познакомитесь с вариантами реализации параллельных вычислений в конкурентной модели, научитесь управлять зависимостями и писать простые асинхронные приложения.
- Продвинутая генерация и обработка ошибок, и работа с panic. Отложенный вызов функций
- Кросс-компиляция в Go и более глубокое погружение в тулчейн
- Работа с внешними зависимостями
- Concurrency, часть 1. Горутины и каналы
- Concurrency, часть 2. Основы типов данных из пакета sync
- Concurrency, часть 3. Планировщик горутин, race condition и проверка на его наличие
- Рефлексия и кодогенерация в языке Go.
- Основы работы со стандартной библиотекой Go. Подготовка к курсовому проекту
- Лучшие практики разработки Go-приложений
Познакомитесь с современными практиками разработки на Go и научитесь их внедрять в свои проекты. Они пригодятся в разработке любых приложений: от простых утилит до высоконагруженных сервисов.
- Обработка ошибок сторонних сервисов и сигналов операционной системы
- Логирование
- Продвинутые практики тестирования
- Консультация
- Принципы структурирования Go-приложений
- Линтеры: продвинутый уровень
- Сборка приложений и автоматизация повторяющихся действий
- Backend-разработка. Уровень 1
Научитесь разрабатывать приложения на Go, проектировать и поддерживать их бэкенд. В конце курса создадите проект — сокращатель ссылок.
- Основы сетевого взаимодействия
- HTTP и проектирование RESTful API
- Реализация и тестирование HTTP-хендлеров
- Выбор роутера и библиотек. Middleware. Контекст запроса.
- Практика, часть 1. Реализация сервера
- Практика, часть 2. Реализация веб-приложения
- Особенности докеризации Go-приложений.
- Сборка и развёртывание приложения. CI/CD
- Базы данных
Узнаете, как работают реляционные базы данных, сможете создавать свои, модифицировать их структуру и управлять данными с помощью SQL.
- Введение в теорию реляционных баз данных
- Базовые понятия структуры базы данных
- Определение данных, базовые операции с данными
- Выборка данных, агрегация данных
- Вложенные запросы и объединение UNION
- Объединение JOIN
- Расширенные возможности SQL
- Оконные функции, индексы, работа в графическом клиенте
- Postgres для Go-разработчиков
Попробуете себя в роли администратора баз данных, научитесь работать с системой управления PostgreSQL и внедрять её в свои проекты.
- Начало работы с PostgreSQL: базовые инструменты, сравнение с другими СУБД
- Работа со структурой базы, CTE, анализ требований при поиске данных
- Анализ выполнения запросов и индексация данных
- Использование PostgreSQL из Go-приложения
- Структура приложения, тестирование, миграции, ORM
- Уровни изоляции, конкурентный доступ, очистка, репликация
- Наблюдаемость (observability) и оптимизация
Узнаете, как анализировать производительность программ и оптимизировать их с помощью профилирования, трейсинга и кеширования.
- Monitoring + alerting
- Logging + Error handling
- Профилированиеитрейсинг
- Оптимизация и кэширование
- Backend-разработка. Уровень 2
Научитесь разворачивать приложения в Kubernetes и управлять ими, познакомитесь с различными API-протоколами и принципами проектирования микросервисов.
- Принципы взаимодействия микросервисов
- JSON-RPC и gRPC
- GraphQL
- Запуск Go-приложений в Kubernetes. Конфигурирование. Мониторинг. Отладка.
- Kubernetes-кластер
- Очереди
- Функциональное тестирование/BDD
- Основы безопасности Go-приложений
- Подготовка к собеседованию Go-разработчика
Создадите привлекательное резюме и подготовитесь к техническому собеседованию. Сможете собрать собственное GitHub-портфолио из своих проектов.
- Создание GitHub-портфолио
- Гибкие навыки Go-разработчика
- Прохождение технического собеседования
- Консультация по портфолио
- Командная разработка микросервисного проекта
Узнаете, как вести разработку в быстро изменяющейся среде: научитесь работать с большими задачами от заказчиков, разбирать их на части правильно приоритизировать. Реализуете собственные микросервисы в командной работе.
- Совместная работа по проектированию сервисов. RFC и дизайн-документы
- Практики совместной работы с Git. Код-ревью
- Совместное тестирование и развёртывание сервисов
- Ответственность разработчика. Чек-листы готовности к продакшену
- Практика oncall-дежурств. Инциденты и постмортемы
- Три консультации по вашему проекту.
Вас будут обучать топовые эксперты
Елена Граховац
Engineering Manager в GetYourGuide, автор программы «Разработка на Go»
Дмитрий Шеламов
Middle GoLang Developer в Dr.Cash
Сергей Яныкин
Team Lead в Delivery Club.
И др.
3 место. Курс «Golang Developer. Professional от OTUS»
Цена: 65 900 ₽
Ссылка на сайт: https://otus.ru/lessons/golang-professional/
От основ языка до создания собственного микросервиса на Go. Для тех, кто хочет углубиться во внутреннее устройство Golang и его взаимодействие с другими системами.
- Длительность обучения: 5 месяцев, 4 ак. часа в нед.
- Формат: Online.
При переходе на Go люди зачастую сталкиваются с различными неудобствами, вызванными непохожестью Go на другие языки программирования. В этом курсе мы хотели бы объяснить, что такое Go-way, рассказать про идиомы языка и помочь избежать типичных ошибок. Программа курса позволит погрузиться в разработку на Go для решения практических задач, углубления знаний в языке и сопутствующем технологическом стеке.
Первые занятия посвящены основам Golang. Таким образом программа подходит для тех, у кого есть опыт программирования на других языках, чтобы быстро перейти к углубленным темам. Для тех, кто уже знаком с Go, начало курса позволит систематизировать и освежить базовые знания.
Этот курс подойдет для:
- web-разработчиков, которые хотят переквалифицироваться в Go и расширить свой уровень мастерства;
- всех тех, кто уже разобрался с основой Go и хочет начать применять язык правильно.
Выпускники смогут:
- писать production-ready код, многопоточные и конкурентные программы;
- понимать синтаксис и внутреннее устройство языка Go;
- понимать особенности сетевого программирования;
- уметь создавать микросервисы с помощью Go;
- разворачивать микросервисы с помощью docker.
Программа курса:
- Начало работы с Go
- Инструментарий и начало работы с Go
- Тестирование в Go. Часть 1
- Элементарные типы данных в Go
- Массивы, слайсы и словари
- Структуры
- Функции и методы
- Интерфейсы. Часть 1
- Интерфейсы. Часть 2
- Обработка ошибок. Понятие паники
- Тестирование в Go. Часть 2.
- Concurrency в Go
- Горутины и каналы
- Примитивы синхронизации. Часть 1
- Примитивы синхронизации. Часть 2
- Concurrency patterns
- Go внутри. Планировщик
- Go внутри. Память и сборка мусора
- Разбор домашних заданий и ответы на вопросы. Ч.1.
- Стандартные библиотеки и практики
- Работа с вводом/выводом в Go
- Форматирование данных
- Взаимодействие с OS
- Рефлексия
- Кодогенерация в Go
- Файлы конфигурации и логирование
- Профилирование и оптимизация Go программ.
- Работа с сетью и БД
- Контекст и низкоуровневые сетевые протоколы
- Работа с SQL
- Работа с HTTP
- Работа с gRPC
- Разбор домашних заданий и ответы на вопросы. Ч.2.
- Микросервисы
- Монолит и микросервисы
- Очереди сообщений
- Docker
- Тестирование микросервисов
- Мониторинг.
- Проект
- Проектная работа. Вводное
- Консультация по проектам
- Итоговое занятие.
Выпускной проект
В завершении курса студентам будет предложено выполнить один из трех проектов на выбор:
- Микросервис для борьбы с брут-форсом.
- Сервис для подготовки превью изображений.
- Простейшая система сбора данных.
После обучения Вы получите сертификат о прохождении курса.
Преподаватели:
Артем Желтак
Teamlead в inDriver
Алексей Бакин
Enapter
Олег Венгер
Avito, внутренняя разработка
Александр Воробьев
Ведущий бэкенд разработчик Golang
Семен Шаплыгин
Ads Platform от SberMarket.
И др.
Отзывы:
Марат
«Очень сильный курс! Отлично структурированный и детально проработанный. Преподаватели — действующие разработчики, которые делятся своим опытом во время обучения. Большой плюс курса — наличие достаточно сложных домашних заданий. Для их выполнения нередко приходилось потратить несколько дней. Из этого следует и одно пожелание для улучшения курса — сократить время проверки домашних заданий.»
Равиль Галактионов
«В целом я доволен курсом. В процессе изучения я уже начал на работе применять всё то чему научился, и уже большую часть времени пишу на Go и планирую полностью перейти на данный язык. Курс дал мотивацию в изучении языка и все необходимые материалы для старта. Спасибо команде Отуса за проделанную работу.»
Курс «Backend- разработчик на Go от SkillFactory »
Цена курса Go: Рассрочка на 36 месяцев — 2 933 ₽ / мес
Ссылка на сайт: https://skillfactory.ru/backend-razrabotchik-na-golang
Вы изучите программирование на Go с нуля.
- Мышление программиста
Мы поможем развить «мышление программиста»: вы начнете думать алгоритмически и станете эффективно раскладывать в уме даже сложные задачи - Теория и практика
Обучение Go-разработчиков состоит из сотен маленьких шагов и ориентировано на закрепление практических навыков. У нас есть тренажеры, мини-проекты, интерактивные вебинары, сквозные проекты и командный проект - Ментор и сообщество
Вы не останетесь один на один с новым. Мы организуем Q&A-сессии с ведущими экспертами, персональную обратную связь по всем вопросам от менторов и поддержку кураторов, которые помогут вам дойти до конца.
Краткая программа:
1 блок. Основы Go и Computer Science
- Вводный блок
- Ключевые понятия в IT области
- Классификация языков программирования
- Современные технологии и работа интернета
- Архитектура компьютера и операционных систем
- Основы языка Go
- Установка окружения, компиляция и запуск программ на Go, основные синтаксические конструкции (пакеты, переменные и типы данных, константы, введение в строки)
- Ветвления, циклы
- Функции и методы, структуры
- Обработка ошибок и паник, интерфейсы, рекурсия
- Массивы, словари, слайсы, строки, руны и слайсы байт
- + 1 неделя практики
- Алгоритмы и структуры данных на Go
- Введение, сложность алгоритмов и О-нотации
- Массив, список, очередь, стек. Представление в памяти
- Алгоритмы сортировки
- Деревья, графы, алгоритмы поиска
- Хэш-таблицы, Хэш-мапы, Хэш-функции
- Основы Многопоточности
- Понятие процесса и потока в операционной системе
- Горутины и базовая синхронизация
- Синхронизация с использованием атомиков и каналов
- Wait group, основные шаблоны использования горутин
- Выполнение проекта: собрать пайплайн обработки данных
2 блок. Инструменты разработчика
- Основы Linux
- Установка Linux, работа с графической оболочкой
- Управление пользователями, работа с файлами, процессы
- Сетевые интерфейсы Linux
- Знакомство с Git
- Основы систем контроля версий, инициализация репозитория, синхронизация изменений, запись изменений в репозиторий
- Ветвление, Git Flow
- Docker
- Основы Docker, Запуск приложений в контейнере
- + 1 неделя практики по GIT, Docker и Linux
- Базы данных и SQL
- Реляционные базы данных, проектирование базы данных
- Язык SQL, Транзакции
- Индексы, триггеры, представления, хранимые процедуры
- Работа с SQL базой данных в Go
- Базы данных NoSql
- Документные базы данных, отличие от SQL
- Введение в Mongo DB и Redis
- + 1 неделя практики по работе с базами данных
- Углубленное изучение GO
- Модули, профилирование, отладка
- Тестирование
- Ввод/вывод. Регулярные выражения
- Сетевые приложения
- Web-приложения
- Выполнение проекта: разработка новостного агрегатора
3 блок. Архитектура, DevOps, очереди
- Основы архитектуры
- Архитектурные принципы
- Шаблоны проектирования
- Методы доставки приложений
- Очереди сообщений.
Итоговый проект
- Разделение монолита на микросервисы
Цель практики:
Научиться делить или «пилить» монолитное приложение — разработанный ранее агрегатор новостей — на три микросервиса с их доработкой.
Результаты проекта для студентов:
- Разработка трех микросервисов: агрегатор новостей, API Gateway и сервис модерации комментариев
- Сравнение монолитной и микросервисной архитектуры на практике
- Пополнение портфолио на GitHub полноценным проектом.
Эксперты курса:
Илья Ибрагимов
Backend Golang Developer в Simplinic.
Опыт в программировании более 6 лет.
Ещё работал в: IQ Option, Noveo, 101 Media, Поинт-it.
Валентин Матвейчик
Разработчик на Go в SoftSwiss
Опыт в программировании более 7 лет.
Последние несколько лет писал бэкенд для криптобиржи и другие приложения на основе блокчейна, а также бэкенд для спортсбука.
Максим Пикалов
Go freelancer, Backend разработка
Преподавательский стаж более двух лет.
И др.
Курс «Golang-разработчик от Центр компьютерного обучения «Специалист» при МГТУ им.Н.Э.Баумана»
Цена: 119 890 руб. — 173 290 руб.
Ссылка на сайт: https://www.specialist.ru/track/dp-golang
- Длительность: 400+ часов
- Документ об окончании: Диплом.
Golang (Go) — популярный язык программирования, разработанный в 2009 году компанией Google. Он востребован у всех разработчиков — от новичков до опытных специалистов: Go уже теснит PHP, Ruby и Python за счёт высокой эффективности и понятного синтаксиса. На Golang разрабатывают сложные веб-сервисы и облачные решения: на нём уже написаны Docker, Project Mobi, система кластеризации Kubernetes.
Дипломная программа даст необходимые знания для трудоустройства?
Да. Помимо самого языка Go, Вы получите знания и навыки о других инструментах, языках и сферах, которые сделают Вас востребованным среди работодателей:
- HTML — язык гипертекстовой разметки, который при помощи тегов и других элементов передаёт информацию о том, как построен текст и как он должен выводиться на экран.
- CSS — язык каскадных таблиц, позволяющий оформить веб-страницу, задав необходимые цвета, шрифты и другие элементы стиля.
- Операционную систему Linux, особенности её установки, настройки и администрирования.
- Git — распределённую систему управления версиями (VCS).
- Важные темы современной веб-разработки — CRUD, модели, ресурсы и сценарии тестирования.
- Python — мощный высокоуровневый язык программирования, идеально подходящий для разработки самостоятельных программ и сценариев.
- Разработку серверных приложений PostgreSQL.
Обучение построено на практике: практические задания в каждом модуле и итоговые проекты. Также в программах курсов предусмотрено выполнение домашних заданий и контроль знаний в виде тестирования. По окончании программы у Вас будет портфолио, практические навыки и диплом.
Программа предназначена как для новичков в программировании, которые хотят получить новую профессию, так и для программистов, уже имеющих базовые, но не систематизированные знания.
В программу включены курсы:
- Программирование на языке Python. Уровень 1. Базовый курс
- HTML и CSS. Уровень 1. Создание сайтов на HTML 5 и СSS 3
- Уровень 1. Основы администрирования систем Debian, Ubuntu, CentOS
- Система управления версиями Git
- Программирование на языке Go. Уровень 1. Основы языка Go
- Программирование на языке Go. Уровень 2. Проектирование REST API
- Программирование на языке Go. Уровень 3. Разработка веб-приложений
- Разработка серверной части приложений PostgreSQL 12. Базовый курс.
Курс «Golang-разработчик от Nordic IT School»
Цена: 78 100 руб.
Ссылка на сайт: https://inordic.ru/courses/golang
На курсе по разработке на Golang вы изучите:
- Основы языка и разработки сервисов с помощью Go
- Научитесь создавать сайты и ботов на Golang
- Управлять с их помощью компьютерами и серверами
- Познакомитесь с Linux и PostgreSQL.
По окончанию курса сможете программировать многопоточные распределенные системы для высоконагруженных проектов.
Курс предназначен для новичков и опытных специалистов.
Разработка на golang будет интересна программистам, которые хотят познакомиться с микросервисной архитектурой, многопоточностью, научиться создавать высоконагруженные приложения.
Для новичков язык GO будет интересен из-за низкого порога входа: у него несложный синтаксис и он отлично подходит в качестве первого языка программирования.
Golang-разработчики востребованы на рынке из-за своей редкости и новизны. Зарплаты, кстати, у них больше, чем у остальных разработчиков.
На курсе по разработке на Golang вы изучите:
- Основы языка и разработки сервисов с помощью Go
- Научитесь создавать сайты и ботов на Golang
- Управлять с их помощью компьютерами и серверами
- Познакомитесь с Linux и PostgreSQL
Программа курса:
- Введение в Golang
- Основные понятия
- Основы настройки серверов Linux
- Работа с консолью
- Объявление типов
- Структуры
- Методы
- Введение в интерфейсы
- Полиморфизм
- Параллельное программирование
- Golang для веб
- Создание telegram ботов
- Базы данных
- Совместная разработка
- Основы GIT
- Github
- Автоматическое тестирование.
Преподаватель – Житков Тимофей
Senior Fullstack разработчик в Московской Бирже и Team Lead в Nordic IT School.
Курс «Профессия Go-разработчик от АНО ДПО «ШАД»»
Цена: 76 000 ₽ — 156 000 ₽
Ссылка на сайт: https://practicum.yandex.ru/promo/go-profession
Научитесь программировать на Golang при поддержке опытного ментора. Курсы для разработчиков с опытом.
Go-разработчик создаёт высоконагруженные сервисы в сферах онлайн-ретейла, доставки, финтеха, интернета вещей. Язык программирования Go хорошо для этого подходит, так как нативно поддерживает многопоточность, собирается и исполняется с высокой скоростью.
В профессии три курса: основы Go, программа обучения до уровня junior+ и программа обучения до уровня middle. В зависимости от вашего опыта и целей вы можете выбрать тот, что подходит вам больше всего. Обратите внимание, эти курсы не подойдут людям без опыта разработки.
После прохождения основной программы у вас будет время написать выпускной проект для вашего портфолио. Вы сможете объединиться в команды или работать самостоятельно, реализовать свою идею или взять за основу один из предложенных вариантов.
У вас будет ментор — действующий senior Go-разработчик, который будет помогать находить ответы на вопросы, проверять ваш код, проводить вебинары для разбора задач. И главное — раз в две недели у вас будет встреча один на один с ментором, на которой вы обсудите ваш прогресс в обучении и написании проекта.
Курсы:
- Основы Go
1 месяц
Вы получите представление о Go и его экосистеме, выучите синтаксис и будете готовы к прохождению основных программ в профессии.
На этом курсе нет сопровождения. Вы можете начать учиться в любой момент. - Go-разработчик
3 месяца
Вы прокачаете навыки, которые понадобятся каждому, кто пишет на Go. На выходе вы сможете самостоятельно выполнять задачи Go-разработчика уровня junior+.
На курсе вас будут сопровождать ментор и куратор. - Продвинутый Go-разработчик
6 месяцев
Вы пойдёте дальше: освоите архитектурные паттерны и узнаете больше о возможностях Go. Вы получите навыки и знания для выполнения задач Go-разработчика middle-уровня.
На курсе вас будут сопровождать ментор и куратор.
Менторы:
Георгий Зуйков, техлид
Старший разработчик в «Едадиле». Программирует 10 лет, из них последние 5 — на Go. Разрабатывает архитектуру высоконагруженных систем. Входит в Go-комитет Яндекса.
Александр Демиденко, техлид
Старший разработчик в Яндекс.Облаке, в команде Cloudgate. Строит масштабируемую систему доставки трафика. Имеет многолетний опыт работы в телекоме (VoIP).
Дмитрий Шеламов, ментор
Старший разработчик в SoftSwiss. Начал преподавать Go, ещё будучи мидлом. Интересный факт: в 16 лет выпустил игру под Android с 10 000 установок.
И др.
Курс «Программирование на golang learn go от Be Geek»
Бесплатный курс Go (Golang)
Ссылка на сайт: https://www.youtube.com/playlist?list=PLQuaNOtBP3TpjiROGjy3-hEr5xL0fN9bX
Видеоуроки:
- Типы и переменные в Golang. Программирование на Go #1
- Переменные и ошибки с ними. Программирование на Go #2
- Циклы в Go. Программирование на Go #3
- Массивы и срезы в Go. Программирование на Go #4
- Карты в Go. Maps in Go. Программирование на Go #5
- Функции в Go. Программирование на Go #6
- Структуры в Go. Программирование на Go #7
- Организация кода в Go. Программирование на Go #8
- Какие книги читать по Golang???
- Библиотека Sort. Программирование на Go #9
- Парсер на Golang. Telegram и Go. Программирование на Go #10
- Telegram bot на Используем webhook. Программирование на Go #11
- Telegram bot на Собираем данные пользователей. Программирование на Go #12
- Фильтр сообщений для Telegram на Go. Программирование на Go #13
- Telegram bot на Go. Отправляем фото из облачного хранилища. Программирование на Go #14
- Go with Docker. Упаковываем приложение Go в Docker. Изучаем Golang #15
- Переменные окружения в Golang. Программирование на Go #16
- Golang ищем заказы на фриланс #4. Go http, telegram, api
- Пишем Mysql Exporter для Prometheus на Golang
- ошибки новичков #2 (язык программирования Go)
- простая веб форма авторизации (golang, templates, шаблоны, web)
- Интерактивный CLI на Go [язык программирования Go]
- Модуль md5. Сравниваем файлы на Go с помощью md5sum [язык программирования Go]
- Query vs Exec vs Prepare в Функции для работы с базой данных в Go.
Преимущества:
- Бесплатный курс
- 24 урока
Недостатки курса:
- Нет обратной связи
- Мало практики
Курс «Программирование на Golang от Stepik»
Бесплатно
Ссылка на сайт: https://stepik.org/course/54403/promo?amp&
Курс посвящен основам языка программирования Golang. Курс будет полезен тем, кто уже имеет базовый опыт в программировании. На курсе будет рассмотрена теория, подкрепленная практикой.
- нагрузку вы ставите самостоятельно
- Сертификат.
Курс подходит тем, кто имеет знания о базовом программировании. Курс не предполагает каких-либо специальных знаний по информатике, но для понимания курса желательно знать основы одного из языков программирования и уметь достаточно свободно пользоваться компьютером.
Преподаватели:
- Семён Новиков
Golang developer and teacher (Stepik and JetBrains Academy)
Golang разработчик и начинающий преподаватель, на stepik чтобы получить новые знания и поделиться своими 😉 Создатель курса по Go на stepik. - Александр Ципорин
- Валентин Казанцев
18 y.o Developer
Shopify Fullstack Developer, участвовал в разработке SpeedBoostr, как со стороны сервера, так и со стороны клиента. В данный момент независимый разработчик в поисках вкусных предложений 🙂
И др.
Программа курса:
30 уроков, 63 теста, 86 интерактивных задач
- Введение в основы
- О курсе
- О Go
- Первая программа
- Типы данных
- Переменные и ариф. операции, ввод/вывод данных
- Комментарии
- Константы
- Условные выражения
- Условные конструкции
- Циклы
- Форматированный вывод
- Массивы и срезы
- Решение задач.
- Функции, структуры, указатели и другое
- Функции
- Пакеты
- Указатели
- Структуры
- Строки
- Обработка ошибок
- Решение задач.
- Map, файлы, интерфейсы, многопоточность и многое другое
- Отображения (map)
- Преобразование типов данных
- Анонимные функции
- Интерфейсы
- Работа с файлами
- JSON
- Работа с датой и временем
- Параллелизм ч.1
- Параллелизм ч.2
- Заключение.
Отзывы о курсе Golang (Go):
Вячеслав Трофимов
«Возникали некоторые трудности, но курс отличный для новичков!»
Дмитрий Бойко
«быстро и по делу».
Курс «Golang от ITVDN»
Стоимость курса Go: 14.99 USD
Ссылка на сайт: https://itvdn.com/ru/video/golang
- Длительность: 5 ч 51 м
- Уроков: 8.
Golang (Go) — компилируемый язык программирования, разработанный компанией Google. Отличается своим минимализмом, прозрачностью кода, строгой типизацией, богатой стандартной библиотекой и высокой производительностью.
Курс призван обучить новичков основам языка Go. После прохождения курса вы будете знать основные понятия и конструкции языка, правильно писать код на Go, а также уметь использовать инструментарий, описанный в курсе.
Чему вы научитесь:
- Создавать простые приложения на Go
- Работать со стандартными библиотеками и утилитами Go
- Применять методы и функции
- Работать с массивами, срезами, словарями и оператором range
- Писать многопоточные приложения
- Тестировать код и измерять производительность функций.
Видеоуроки:
- Введение. Основные понятия языка, стиль написания, пакеты и типы.
- Первая программа. Утилиты Go.
- Массивы, срезы, словари, оператор range.
- Структуры и интерфейсы. Интерфейсный тип данных.
- Многопоточность. Горутины, каналы, оператор select.
- Пакеты. GoDoc
- IO, пакет bytes, буферы.
- Тестирование. Измерение производительности функций.
Отзывы о курсе доступны на сайте.
Курс «GO-разработчик от ООО «ФРОО»»
Цена: 45 000 р.
Ссылка на сайт: https://golangcourse.ru/
Пиши производительные веб-сервисы с простым кодом за пару дней. Освой профессию на уровне middle-специалиста.
Курс подойдет тем, кто пишет на PHP, Python, C/C++, JavaScript, Ruby.
На курсе ограниченное количество мест. Это дает возможность выстроить качественную коммуникацию между слушателями и преподавателем курса.
Финальные проекты
Итоговые финальные проекты подготовили ведущие компании индустрии. Успешное выполнение проектов не только прокачает вас и ваше резюме, но и увеличит шанс попасть на собеседование после окончания обучения.
Слушатели, которые успешно выполнят задания на курсе, смогут попасть на собеседования в компании.
Во время обучения вы:
- изучите основы языка и разработки веб-сервисов с помощью Go
- запустите свое приложение
- узнаете типичные проблемы, с которыми сталкиваются разработчики любых веб-сервисов и научитесь их устранять
- прокачаетесь в веб-программировании и пополните свое резюме.
Программа курса:
1 неделя. Введение в Golang
Разберетесь с основами языка:
- Переменные, базовые типы данных
- Переменные, составные типы данных
- Управляющие конструкции
- Основы функций
- Функция как объект первого класса, анонимные функции
- Отложенное выполнение и обработка паники
- Основы работы со структурами
- Методы структур
- Пакеты и область видимости
- Основы работы с интерфейсами
- Пустой интерфейс
- Композиция интерфейсов
- Написание программы уникализации
- Написание тестов для программы уникализации
2 неделя. Асинхронная работа
Освоите главную особенность языка. Асинхронность и простота — вот что делает Go таким мощным инструментом.
- Методы обработки запросов и плюсы неблокирующего подхода
- Горутины — легковесные процессы
- Каналы — передаём данные между горутинами
- Мультиплексирование каналов через оператор select
- Таймеры и таймауты
- Пакет context и отмена выполнения
- Асинхронное получение данных
- Пул воркеров
- Waitgroup — ожидание завершения работы
- Ограничение по ресурсам
- Ситуация гонки на примере конкурентной записи в map
- Mutex для синхронизации данных
- Atomic
3 неделя. Работа с динамическими данными и производительность
Научитесь обращаться с динамическими данными и работать с JSON.
- Распаковываем JSON
- Нюансы работы с JSON
- Пакет reflect — работаем с динамикой в рантайме
- Кодогенерация — программа пишет программу
- Система бенчмарков Go
- Профилирование через pprof
- Pool
- Покрытие кода тестами
- XML
4 неделя. Основы HTTP
Запустите веб-сервер, обработаете запросы и получите данные. А еще научитесь собирать метрики производительности с работающего сервера.
- Слушаем TCP-сокет с использованием пакета net
- Обслуживание HTTP-запросов
- Работа с параметрами запросов
- Обслуживание статичных данных
- Загрузка файлов формы
- HTTP-запросы во внешние сервисы
- Тестирование HTTP-запросов и ответов
- Inline-шаблоны и шаблоны из файлов
- Вызов методов и функций из шаблонов
- Профилирование через pprof
- Поиск утечки горутин
- Трассировка поведения сервиса
- Пример с telegram-ботом
5 неделя. Анатомия веб-сервиса
Познакомитесь с самыми распространенными компонентами при разработке веб-сервисов: роутеры, веб-серверы, фреймворки и утилиты.
- Основные компоненты веб-сервиса
- Основы middleware для HTTP
- Context value
- Обработка ошибок
- Роутеры — gorilla/mux, httprouter
- Производительный веб-сервер fasthttp
- Парсинг параметров в структуру и валидация
- Фреймворк Beego
- Фреймворк Gin
- Стандартный пакет log, zap, logrus
- gorilla/websocket
- Компилируемые шаблоны
- Утилита dep
6 неделя. SQL и NoSQL
Научитесь работать с основной функцией веб-сервера — извлечение и загрузка данных.
- database/sql и mysql
- GORM — применение reflect’а для SQL
- sql-injection
- Memcached — пример с тегированным кешем
- Redis
- Message broker — RabbitMQ
- Document store — MongoDB
7 неделя. Микросервисы
Микросервисы – популярный паттерн борьбы со сложностью. В Go микросервисы можно делать сразу из коробки. А еще вы познакомитесь с фреймворком gRPC.
- Что такое микросервис, плюсы и минусы
- Микросервисы внутри монолита
- net/rpc и формат gob
- net/http/jsonrpc
- Формат сериализации protobuf
- Делаем сервис на gRPC
- Продвинутая работа с gRPC
- Стриминг сообщений
- Балансировка нагрузки и использование Consul
- grpc-gateway — получаем доступ к grpc-сервисам через HTTP
- Swagger — генерируем клиент и сервер из документации к апи
8 неделя. Сервис в работе
Поймете, как конфигурировать и мониторить сервисы, а также интегрируете код на C в Go.
- Локальный конфиг — flags, json, ldflags
- Удалённый конфиг, используем Consul
- Зачем нужен мониторинг и что мониторить
- Отправка таймингов во внешнюю систему
- Пакет Unsafe
- cgo — интеграция кода на cи
- go vet, gometalinter
9 неделя. Мок-тесты, JWT и CSRF-токены
- Архитектура приложения, паттерн репозиторий.
- Тестирование репозиториев и баз. Sqlmock и gomock.
- Хеширование паролей.
- CSRF-токены — на основе хеша, шифрования и JWT
- Сессии. Stateful и stateless сессии. Подводные камни сессий на основе JWT.
10 неделя. Oauth и проектирование API
- Oauth
- Горячая перезагрузка кода через Air
- Встраивание статики через vfsgen
- Проектирование API
11 неделя. GraphQL
- GraphQL — получение данны, мутаторы, сложность запросов, проблема N+1 запросов, директивы, загрузка файлов.
- Встраивание GraphQL в демонстрационный проект
- Структура приложения
12 неделя. Контейнеры, S3 и трейсинг
- Docker и golang
- Оптимизация сборки докер-контейнера, многошаговая сборка
- Docker-compose
- Объектное хранилище S3, Minio
- Организация ACL-доступа к картинкам
- Конфигурирование через Viper
- RequestID, трейсинг в GraphQL
- Распределенный трейсинг с Jaeger.
Курс «Golang для инженеров от ООО «Слёрм»»
Цена: 45 000 ₽ — 60 000 ₽
Ссылка на сайт: https://slurm.io/go-for-ops
Golang уже называют многообещающим — он простой в изучении, быстрый, эффективный и точно останется с нами надолго.
На курсе мы научим вас создавать свой API сервер с помощью Golang, запускать контейнеры, взаимодействовать с Docker из Go, работать с кастомными операторами и многим другим приятным и полезным штукам.
Кому будет полезен курс:
- DevOps-инженерам
Сможете автоматизировать процесс разработки и ускорить программирование. Повысите уровень администрирования. - Разработчикам
Научитесь работать с микросервисной архитектурой и высоконагруженными системами. Сможете решать больше задач и повысите свою ценность как специалиста. - Новичкам в программировании
Разберетесь в принципах работы с операционными системами и обменом данных. Научитесь создавать и оптимизировать приложения на языке Go.
Перед прохождением курса рекомендуем проверить и систематизировать ваши знания Git.
Программа:
- Введение. Основы Golang
- Знакомство с курсом
- Как учиться онлайн
- Установочная встреча
- Как выполнять практику
- Философия Go. Для каких проектов он годится, а для каких – нет и почему. Зачем Go нужен инженерам
- Переменные и типы данных. Переменные и константы
- Переменные и типы данных. Простые типы
- Переменные и типы данных. Составные типы
- Функции
- Циклы, switch-case, if
- Практика
- Дополнительные материалы
- Установочная онлайн-встреча
Познакомимся со спикерами, узнаем о том, как будем проходить курс и определимся с целями. - Погружаемся глубже в основы
- Структуры
- Интерфейсы
- Обобщенное программирование и ООП в Go
- Garbage collector
- Практика
- Дополнительные материалы
- Concurrency
- Многозадачность
- Горутины
- Отработка ошибок
- Каналы
- Инструменты синхронизации
- Практика
- Дополнительные материалы
- GO на практике 1
- Go modules и структура проекта
- Работа с операционной системой
- Работа с файлами и файловой системой
- Работа с сетью в Golang
- Обзор протоколов и форматов
- GO на практике 2
- Как работать с базой данных
- Пакеты для http
- Как писать тесты
- Проверка качества кода
- Кросскомпиляция и build теги
- Чек-лист итоги основного блока
- АМА-сессия + неформальная встреча
Онлайн-встреча со спикерами, подведение промежуточных итогов, ответы на вопросы. - Работа с Docker из Go
- Docker SDK для Go
- Работаем с докером из Go
- Практические советы для применения
- Практика — пишем приложение деплоящее контейнер и тестирующее его
- Паттерны Kubernetes
- Health probe/Liveness probe
- Periodic job
- Daemon service
- Stateful service
- Service discovery/Service mesh
- Sidecar/Adapter
- Controller/Operator
- Операторы Kubernetes
- Что такое Kubernetes Operator
- Назначение операторов
- Состав оператора (контроллер, индексер и kube API)
- CRDs (cоздаем, заполняем переменные, генерим CRDs)
- Состав контроллера
- Пишем свой контроллер для деплоймента
- Пишем оператор с помощью kubebuilder
- Собираем проект для ручных тестов в кластере
- Обзор ginkgo (пишем тесты), обзор основных фреймворков для создания операторов, kubeclient, готового http — сервера.
- Пишем тест для валидации контроллера
- Собираем деплой
- АМА-сессия + выпускной
Заключительная встреча со спикерами и командой, подведение итогов, ответы на вопросы.
Спикеры курса:
Всеволод Севостьянов
Tech Lead в проекте vene.io
– Более 10 лет опыта разработки на разных языках (php, java, Go)
– Архитектор и разработчик решений для обеспечения очень высокой пропускной способности (до 30 тысяч запросов в секунду на реальных бизнес кейсах)
– Tech Advisor команды DevOps
– Специализируется на облачных решениях
– Спикер на профильных митапах и конференциях.
Тигран Ханагян
Team Lead & Backend Developer в Citymobil
– Более 7 лет опыта разработки на разных языках (python, php, Go)
– Архитектор высоконагруженных сервисов на Go с нуля, один из которых — сервис программы лояльности в city-mobil
– Автор статей в публичных каналах
– Спикер на профильных митапах и конференциях.
Курс «Golang для начинающих от golangify»
Бесплатно
Ссылка на сайт: https://golangify.com/go/kurs-izucheniya-golang-dlya-nachinayuschih
Полный курс изучения программирования на Golang для начинающих. Примеры кода на Go с полным описанием. Изучение основ языка программирования Golang.
Содержание:
- Начало программирования в Go — что нужно знать?
- Что такое Go? Go Playground, пакеты, функции и скобки в Golang
- Основы: Работа с числами, форматирование строк, переменные и константы
- Цикл for, if-else-switch, True-False и операторы сравнения в Golang
- Оператор switch в Golang
- Область видимости переменных в Golang
- Создание программы для покупки билетов в Golang
- Вещественные числа в Golang — float64 и float32
- Целые числа integer в Golang — выбор верного типа
- Пакет Big — Крупные числа в Golang и примеры их использования
- Работа со строками в Golang
- Конвертирование типов данных в Golang
- Создаем Шифр Виженера на Golang
- Функции в Golang на примерах
- Методы в Go — Создание и использование методов в Golang
- Функции первого класса, замыкания и анонимные функции в Golang
- Программа для перевода температуры из Цельсия в Фаренгейты
- Создание и итерация массива в Golang
- Срез массива в Golang
- Работа с массивами и срезами в Golang — append() и make()
- Карта — ассоциативный массив в Golang
- Создание игры «Жизнь» в Golang
- Структуры в Golang — Экспорт структур в JSON
- Структуры и методы — объектно-ориентированный подход в Golang
- Композиция и встраивание методов в Golang
- Интерфейсы в Golang
- Создание игры-симулятора фермы в Golang
- Указатели в Golang
- Значение nil в Golang
- Обработка ошибок в Golang
- Создание игры Судоку в Golang
- Горутины и конкурентность — Многопоточность в Go
- Изучаем конкурентность и параллелизм в Golang
- Конкурентность в Go на примере создания игры для изучения Марса
- JSON в Golang — сериализация и десериализация
- Редактирование видео в Golang.
Курс «Golang-разработчик от CloudMTS»
Бесплатно
Ссылка на сайт: https://www.teta.mts.ru/golang
Изучение языка на реальных задачах и подготовка к собеседованию.3 месяца погружения
в разработку на Go.
Занятия проходят онлайн. Лекции будут доступны в виде записи трансляций. После каждой темы практическое домашнее задание с ревью от опытного разработчика.
Что нужно для курса?
- Знание синтаксиса и базовых конструкций Go
- Навык написания базовых SQL-запросов
- Знание основ работы с базами данных и брокерами сообщений
- Иметь от полугода опыта коммерческой разработки.
Программа:
- Архитектура, шаблоны проектирования и инструменты разработки
- SOLID-принципы в Go
- Монолит и микросервисы
- Способы взаимодействия REST и gRPC
- Паттерны Two-phase commit и Saga
- Асинхронное взаимодействие
- Docker и K8s для разработчиков
- CI/CD. Линтеры кода, секьюрити чеки, подключение тестов
- Основы Go
- Slice & map
- Горутины
- Каналы
- Контекст
- Интерфейсы
- и многое другое
- Concurrency в Go
- Примитивы синхронизации
- Горутины и каналы
- Concurrency patterns
- Планировщик
- Память и сборка мусора
- Поиск утечки горутин
- Документация и тестирование
- OpenAPI Swagger (Swaggo)
- Unit-тесты
- Mock
- Интеграционное тестирование (с помощью контейнеров)
- Тестирование конкурентного кода
- Работа с базами данных: PostgreSQL
- Проектирование баз данных. Модификация и выборка данных
- Транзакции. Триггеры и функции
- Индексы. Профилирование и оптимизация запросов
- Репликация. Полнотекстовый поиск. JSON
- Работа с базами данных: MongoDB
- CAP / PACELC теорема
- Построение запросов
- Индексирование
- Конфигурирование
- Работа с геоданными в MongoDB
- Очереди данных
- Основные концепции и архитектура Apache Kafka
- Topic, partition и offset в Apache Kafka
- Producer и consumer API
- Command Sourcing
- Event Sourcing
- Новые фичи Go
- Дженерики.
Преподаватели:
Сергей Парамошкин
Технический менеджер Яндекс.Поиск
Работал в эксплуатации, аналитиком, архитектором, руководителем.
Больше 10 лет опыта в IT, опыт в разработке на Go 7 лет.
Роман Цованян
Старший Архитектор автоматизации бизнес-процессов МТС
Более 30 лет опыта в IT, опыт в разработке на Go 6 лет.
Максим Сёмочкин
Руководитель направления в отделе автоматизации бизнес-процессов МТС
Прошёл путь от DevOps инженера до ведущего архитектора.
Опыт в разработке на Go 6 лет.
О прошлом курсе:
Виталий Попов
Golang-разработчик в CloudMTS
«От курса по языку программирования я ждал не только введения в основы языка, но и плотной работы с экосистемой и инструментами, использования подходов к разработке, максимально приближенных к реальной работе. И на курсе от МТС я получил нечто похожее: сквозной проект на курсе — почти боевое приложение. Преподаватели и менторы рассказывали, как применять современные подходы к разработке на Golang. При этом на курсе дается информация небольшими порциями, успеваешь всё изучить и закрепить на практике.
Очень хороший курс, рекомендую!»
Герман Лепин
Golang-разработчик в CloudMTS
«Обучение на курсе MTS Teta позволило мне накопить большой объем знаний, которым я сейчас активно пользуюсь в своих рабочих задачах.
Курс наполнен качественными теоретическими материалами и практическими заданиями. Помимо развития технических скилов, также прорабатываются навыки работы в команде, умение договариваться и разделять ответственность. Если качественно изучать материал и ответственно подходить к выполнению задания по курсу, то за три месяца можно добиться отличного результата и устроиться на работу в MTS Cloud.
Всем, кто принимал участие в создании и ведении курса, выражаю огромную благодарность за их титанический труд!»
Курс «Golang от ITEA»
Цена: 280 EUR
Ссылка на сайт: https://onlineitea.com/course/go-course/
Пройди Golang обучение с нуля, чтобы понять основы одного из ведущих языков программирования 2021 года, изучить его идиомы и разобраться, как избежать типичных ошибок айтишника. Образовательная программа академии позволит полноценно погрузиться в разработку на Go для решения практических заданий и прокачки навыков в языке и технологическом стеке.
- 12 занятий / 2 месяца.
Для кого этот курс:
- Ты находишься в поиске своего предназначения и хочешь освоить высокооплачиваемую профессию разработчика, в которой можно быстро расти и развиваться
- Ты имеешь опыт работы в IT-сфере, но продолжаешь прокачивать умения и дополнять персональное портфолио
- Ты мечтаешь сменить карьерное направление и начать заниматься делом, которое приносит удовольствие и стабильный заработок.
Обучение программированию проводится в онлайн-формате. Если у тебя возникнут вопросы, не получится разобраться в материале или потребуется помощь с домашним заданием, коуч обязательно поможет и объяснит сложную тему. Ментор консультирует студентов по вопросам разработки как во время, так и после занятий. Пройдя обучение, тебе потребуется выполнить курсовой проект, чтобы доказать уровень своих знаний. В дальнейшем ты сможешь добавить его в персональное портфолио.
На курсе ты научишься:
- Писать консольно-сервисные приложения
- Разрабатывать консольное ПО на языке Go, под разные ОС и разные архитектуры.
План обучения:
- Введение
- Что такое Go
- История
- В чем преимущество Go над другими языками
- Какие задачи язык Go позволяет решать очень эффективно
- Современность языка Go
- Основы Git
- Настройка среды Go
- Установка Go
- Установка дополнительных инструментов для эффективной работы с языком Go
- Разбор основных утилит для работы с Go
- Быстрая настройка среды Go на примере Visual Studio Code
- Первая программа
- Самый простой Web Server на Go за 1 минуту
- Основы
- Типы данных
- Переменные
- Константы
- Указатели
- Пакеты и импорт
- Область видимости
- Основные операции языка
- Логические операции
- Арифметические операции
- Поразрядные операции
- Инкремент и декримент
- Управление ходом программы (Control flow)
- Оператор if
- Оператор цикла for
- Оператор switch
- Составные типы
- Массивы
- Slice
- Тип map
- Структуры
- Range
- Функции в Go
- Базовые понятия функций
- Определение функции
- Передача параметров в функцию
- Множественный возврат значений с функции
- Функции с переменным числом параметров
- Рекурсия
- Работа с файлами
- Обработка ошибок в Go
- Возврат ошибки из функции
- Deferred функции
- Panic и Recover
- Более сложные возможности Go
- Методы в Go
- Интерфейсы в Go как простой подход реализации полиморфизма
- Рефлексия
- Пакеты
- Низкоуровневое программирование
- Параллелизм в Go
- Goroutines и каналы
- Разделяемые переменные (мьютексы)
- Обзор стандартной библиотеки
После курса Golang у тебя будет:
- Сертификат после окончания обучения в соответствии с успеваемостью
- Доступ к материалам и записям занятий в течение года в личном кабинете на удобной платформе
- Возможность присоединиться к ITEA community
- Портфолио с проектами и работами
- Поддержка с трудоустройством
- Яркий опыт работы с профессиональными инструментами.
Отзывы студентов:
Максим Левин
«Рекомендую академию! Высокий уровень подготовки выпускников, которые могут занять лидирующие позиции на рынке труда Украины. Нескольких ребят удалось трудоустроить в продуктовую компанию».
Игорь Кубицкий
«Проходил несколько курсов в ITEA Львов. Хорошая организация курсов и подбор учителей. Хорошо объясняют материал. В ITEA приветливый коллектив и дружеская атмосфера. Рекомендую их обучающие курсы!»
Курс «Продвинутая разработка микросервисов на Go от Ozon Tech»
Бесплатно
Ссылка на сайт: https://route256.ozon.ru/go-developer
- Два месяца теории и практики
- Менторство от экспертов и тьюторов.
Твой путь в дикий мир e-com:
- Первый модуль
Изучение языка Go и дизайна приложений. Создание своего бота для мессенджера, использующего gRPC для управления и базу данных для хранения. Асинхронные обработчики с паттернами проектирования и юнит-тестами. - Второй модуль
Создание распределённых приложений, observability, SRE, очереди, большие данные, большая нагрузка, Machine learning и опыт разработчиков Ozon.
А что еще?
- Синтаксис Go и создание ПО
- Асинхронное программирование и gRPC
- Postgres и его внутреннее устройство
- Очереди сообщений и паттерны проектирования сложных систем
- Observability и SRE
- Шардирование и кэширование
- Хранение файлов и специальные типы баз данных
- Высоконагруженный Machine learning.
Эксперты и тьюторы:
- Кирилл Шматов
Старший разработчик в команде «Платформа коммуникаций» - Леонид Могучев
Разработчик в команде «Тарификации» - Евгений Гуров
Руководитель отдела «Билетные витрины, Маркетинг и SEO» - Вадим Дмитриев
Тимлид команды «ЖД»
И др.
Приглашенный эксперт – Алексей Шаграев
IT-предприниматель.
По окончании курса ты сможешь:
- Писать на Golang
- Разрабатывать надёжный и поддерживаемый код
- Проектировать сложные распределённые системы
- Обеспечивать мониторинг и поддержку созданных тобою систем
- Работать в самой быстрорастущей отрасли
- Разбираться в системе лифтов «Москва-Сити»
- Показать три репозитория на GitHub со своими разработками во время курса.
Курс «Go программирование от Академия IT»
Бесплатно
Ссылка на сайт: https://academiait.ru/course/izuchaem-go-programmirovanie-na-golang-learn-go/
Видеоуроки:
- Типы и переменные в Golang.
- Переменные и ошибки с ними.
- Циклы в Go.
- Массивы и срезы в Go.
- Карты в Maps in Go.
- Функции в Go.
- Структуры в Go.
- Организация кода в Go.
- Какие книги читать по Golang???
- Библиотека Sort.
- Парсер на Telegram и Go.
- Telegram bot на Go. Используем webhook.
- Telegram bot на Golang. Собираем данные пользователей.
- Фильтр сообщений для Telegram на Go.
- Telegram bot на Go. Отправляем фото из облачного хранилища.
- Golang ищем заказы на фриланс #4. Go http, telegram, api
- Go with Docker. Упаковываем приложение Go в Docker.
- Пишем Mysql Exporter для Prometheus на Golang
- Ошибки новичков #2
- Простая веб форма авторизации (golang, templates, шаблоны, web).
Курс «Golang-разработчик. Advanced от Rebrain»
Цена: 35 000 руб.
Ссылка на сайт: https://rebrainme.com/golang-advanced/
- 90% практики
- 25+ заданий.
Кому подойдет практикум:
- Разработчики
- Специалисты по тестированию
- Системные архитекторы и аналитики
- DevOps-инженеры.
Программа:
- Работа с БД
- Конфигурирование подключения к БД (postgres)
- Работа с БД (postgres)
- Миграции (goose)
- Работа с базой на примере использования GORM
- Работа с NoSql (Mongo)
- Сервер на Go (обработка запросов, context, middleware)
- Поднимаем сервер, роутинг, первый handler
- Работа с параметрами
- Роутер Gorilla
- Роутер Chi
- Middleware
- Контекст запроса
- fasthttp
- WebSockets
- Низкоуровневость + продвинутая сборка
- Продвинутая работа с модулями
- Сборка с использованием Idflags
- Сборка для разных ОС
- Пакет unsafe
- Cgo
- Микросервисная архитектура
- Заворачиваем наш сервис в образ
- Продвинутая сборку образа
- Подтягиваем конфигурации из key-value store (consul)
- Межсервисное взаимодействие
- Синхронное взаимодействие через REST
- gRPC взаимодействие
- Interceptors
- Асинхронное взаимодействие (kafka) и pub-sub
- Работа с GraphQL в Go
- Оптимизация
- in-memory хранение
- Redis
- Самописный LRU cache
- Работа сервиса в кластере
- Формат логов и уровни логирования
- Пишем логи (Greylog)
- Сквозное логирование
- Метрики (Prometheus + Grafana)
- graceful обработка сигналов.
- healthcheck
По окончании практикума вам выдается электронный именной сертификат, подтверждающий, что вы успешно прошли все задания. Также, вы получите Hard Skills Card. Карта компетенций отражает все ваши показатели по прохождению заданий и освоению технологического стека.
Hard Skills Card — ваша техническая карточка специалиста.
Отзыв участника:
Юрий Медведев, 28 лет
До практикума: Digital Marketing
После практикума: Junior DevOps
«До практикума я работал в сфере Digital Marketing — удаленно занимался рекламой, маркетингом. Ранее работал инженером связи, от механика и до ведущего инженера, поэтому IT мне близко, и я всегда хотел развиваться в этом направлении и вернуться в профессию. Потому заинтересовался открытым практикумом по DevOps, который предложила мне таргетная реклама. После него желание изучать DevOps усилилось — привлекли перспективы и сложная, но интересная работа. Так я решил пойти дальше на практикум. И уже в середине него устроился в аутсорсинговую компанию по администрированию инфраструктуры и дорос до Junior DevOps.
Сам практикум — бомба! Намного круче классического формата с лекциями. Когда есть лекции, ты привязан к группе, ко времени. Здесь же отстать невозможно: включайся, когда удобно, и получай на любом этапе быструю обратную связь по всем заданиям. Выходит, как формат индивидуального обучения, но только еще и с возможностью постоянно находиться в сообществе — общаться, развивать кругозор.
После практикума меня позвали в команду REBRAIN как одного из лучших выпускников. И это тоже очень крутой опыт. Сейчас я курирую практикум — отвечаю на вопросы ребят, вместе разбираем задачи, что помогает укреплять знания и разбираться в нюансах.
Сам формат практикума с упором именно на выполнение заданий — именно то, что нужно, чтобы сформировать достаточный кругозор и базис для развития. Так что, если тема DevOps или развития Operations вам близка — практикум это именно то, что нужно!»
Курс «Go от Microsoft »
Бесплатно
Ссылка на сайт: https://docs.microsoft.com/ru-ru/learn/paths/go-first-steps/
«Хотите изучать язык программирования, но не знаете, с чего начать? Начните отсюда! Узнайте о базовом синтаксисе и направлении мыслей для создания простых программ с помощью Go.»
Содержание этой схемы обучения:
- Установка средств, необходимых для написания первых строк кода на Go
- Использование потоков управления в Go
- Типы данных в Go
- Обработка ошибок
- Использование методов и интерфейсов
- Параллелизм в Go
- Написание и тестирование программы.
Предварительные требования – общие знания основ программирования; Знакомство как минимум с одним языком программирования.
Модули, включенные в эту схему обучения:
- Начало работы с языком Go
В этом модуле вы совершите первые шаги в освоении Go. - Принципы использования пакетов, переменных и функций в языке Go
Узнайте о базовых типах данных в Go, а также о том, как объявлять переменные, писать функции и использовать пакеты. - Использование потоков управления в Go
Узнайте, как использовать потоки управления в Go. - Использование типов данных и структур, массивов, срезов и карт в Go
Сведения о структурах, массивах, срезах и картах. Узнайте, в чем заключается различие между этими типами данных и когда следует предпочесть один тип другому. - Реализация обработки ошибок и ведения журнала в Go
Узнайте, как обрабатывать ошибки и записывать полезные сведения в журнал в программах Go. - Использование методов и интерфейсов в языке Go
Ознакомьтесь с рекомендациями по написанию методов и интерфейсов на языке Go. - Параллелизм в Go
Узнайте больше о параллелизме, одной из самых уникальных возможностей в Go. - Написание и тестирование программы на языке Go
Напишите и протестируйте полноценную программу, используя все сведения, которые вы узнали о Go.
Курс «Введение в программирование на Go от Caleb Doxsey»
Бесплатно
Ссылка на сайт: http://golang-book.ru/
Содержание:
- Приступая к работе
- Ваша первая программа
- Типы
- Переменные
- Управление потоком
- Массивы, срезы, карты
- Функции
- Указатели
- Структуры и интерфейсы
- Многопоточность
- Пакеты и повторное использование кода
- Тестирование
- Стандартная библиотека
- Дальнейшие шаги.
Курс «Golang от Miralabs»
Цена: 23 700 RUB
Ссылка на сайт: https://iteacorp.com/course/golang/
- Длительность — 36 ч.
После курса вы сможете:
- Разрабатывать консольное ПО на языке Go, под разные ОС и разные архитектуры
- Писать консольно-сервисные приложения.
Занятия — это не запись, а прямое общение студентов с тренером. Как и в офлайн-формате, студенты могут задать вопрос тренеру и тут же получить обратную связь. Таким образом, онлайн-занятия практически не отличаются от аудиторных, но при этом вы можете учиться в комфортной обстановке — дома, в кафе или коворкинге.
План обучения на курсе:
- Введение
- Что такое Go
- История
- В чем преимущество Go над другими языками
- Какие задачи язык Go позволяет решать очень эффективно
- Современность языка Go
- Основы Git
- Настройка среды Go
- Установка Go
- Установка дополнительных инструментов для эффективной работы с языком Go
- Разбор основных утилит для работы с Go
- Быстрая настройка среды Go на примере Visual Studio Code
- Первая программа
- Самый простой Web Server на Go за 1 минуту
- Основы
- Типы данных
- Переменные
- Константы
- Указатели
- Пакеты и импорт
- Область видимости
- Основные операции языка
- Логические операции
- Арифметические операции
- Поразрядные операции
- Инкремент и декримент
- Управление ходом программы (Control flow)
- Оператор if
- Оператор цикла for
- Оператор switch
- Составные типы
- Массивы
- Slice
- Тип map
- Структуры
- Range
- Функции в Go
- Базовые понятия функций
- Определение функции
- Передача параметров в функцию
- Множественный возврат значений с функции
- Функции с переменным числом параметров
- Рекурсия
- Работа с файлами
- Обработка ошибок в Go
- Возврат ошибки из функции
- Deferred функции
- Panic и Recover
- Более сложные возможности Go
- Методы в Go
- Интерфейсы в Go как простой подход реализации полиморфизма
- Рефлексия
- Пакеты
- Низкоуровневое программирование
- Параллелизм в Go
- Goroutines и каналы
- Разделяемые переменные (мьютексы)
- Обзор стандартной библиотеки.
Курс «Разработка веб-сервисов на Golang от VK Образование»
Бесплатно
Ссылка на сайт: https://education.vk.company/curriculum/program/discipline/1285/
Освой в теории и на практике один из самых востребованных языков программирования.
- 13 занятий, 52 ак.часа.
Что даёт курс?
- Сможешь ориентироваться во всех необходимых компонентах в современной веб-системе;
- Станешь разбираться в темах асинхронного программирования, оптимизации производительности, кодогенерации;
- Будешь работать с базами данных и микросервисами;
- Научишься разрабатывать веб-сервисы на языке Go.
Онлайн-интенсивы проходят один раз в неделю в вечернее время. Запись занятия доступна на портале вместе с домашними заданиями на закрепление пройденных тем.
Преподаватели:
Антон Сулаев
Руководитель команды backend-разработки Почты Mail.ru.
Никита Алтунин
Разработчик Почты и Календаря Mail.ru.
Вероника Персиянова
Разработчик Почты Mail.ru.
Программа:
- Асинхронное программирование
- Основы работы с HTTP 1 и 2, разработки веб-приложения
- Работа с системами хранилищ и базами данных
- Обеспечение безопасности веб-приложений
- Микросервисы, конфиги, мониторинг
- Continuous integration & deployment.
Курс «Cовременная разработка на Go от Hardcode.Dev»
Цена: 42 000 руб.
Ссылка на сайт: https://hardcode.dev/golang
Курс для backend-разработчиков, которые хотят освоить Golang, чтобы расширить или сменить свой технологический стек.
- Продолжительность — 12 недель.
Цель курса: освоить язык Go и его экосистему, научить создавать сервисы на нем, показать лучшие подходы и практики, подготовить участников к работе в реальных проектах.
На курсе Вы:
- Научитесь создавать production-ready приложения на Go
- Освоите экосистему и стандартную библиотеку языка
- Освоите правильную архитектуру Go-приложений и познакомитесь с лучшими практиками и реальным опытом применения языка в проектах
- Научитесь тестировать, профилировать и отлаживать Go-приложения
- Научитесь проектировать и создавать REST API на Go, познакомитесь с микросервисной архитектурой
- Освоите concurrency и go routines
- Разберетесь с высокими нагрузками и масштабированием и с тем, как Go здесь вам поможет
- Научитесь проектировать и создавать API на Go, работать с сетью и базами данных, вебсокетами и RPC
- Расширите свой кругозор и увеличите свою стоимость как специалиста на рынке труда.
Программа:
- Программа и цели курса. Введение в Go
- Особенности синтаксиса Go
- Алгоритмы в Go
- Структуры данных в Go
- Ввод-вывод
- ООП в Go
- Тестирование
- Benchmarks и отладка
- Профилирование приложения
- Интерфейсы
- Конкурентное программирование
- Сетевое программирование
- Веб-приложения
- Прикладной интерфейс разработки (API)
- Удалённый вызов процедур (RPC, gRPC).
- Реляционные БД
- Приложения баз данных
- Архитектура Go-приложения
- Микросервисы
- Очереди сообщений и нереляционные БД.
- Финальный проект.
Автор – Дмитрий Титов
Старший Go-разработчик в МТС Банк.
Более 15 лет в ИТ из них 7 лет — в разработке
Fullstack-разработчик, архитектор и руководитель группы разработки
Разрабатывает на Golang с 2016 года.
Курс «Go от metanit»
Бесплатно
Ссылка на сайт: https://metanit.com/go/tutorial/
Содержание:
Глава 1. Введение в язык Go
- Что такое Go
- Первая программа
- Go в LiteIDE
- Go в Visual Studio Code
Глава 2. Основы языка Go
- Структура программы
- Переменные
- Типы данных
- Константы
- Арифметические операции
- Условные выражения
- Поразрядные операции
- Массивы
- Условные конструкции
- Циклы
- Функции и их параметры
- Возвращение результата из функции
- Тип функции
- Анонимные функции
- Рекурсивные функции
- defer и panic
- Срезы
- Отображения
Глава 3. Указатели
- Что такое указатели
- Указатели и функции
Глава 4. Производные типы
- Объявление типов
- Структуры
- Вложенные структуры
- Методы
- Методы указателей
Глава 5. Пакеты и модули
- Пакеты и их импорт
- Введение в модули
Глава 6. Интерфейсы
- Введение в интерфейсы
- Соответствие интерфейсу
- Полиморфизм
Глава 7. Параллельное программирование. Горутины
- Горутины
- Каналы
- Закрытие канала
- Синхронизация
- Передача потоков данных
- Мьютексы
- WaitGroup
Глава 8. Потоки и файлы
- Операции ввода-вывода. Reader и Writer
- Создание и открытие файлов
- Чтение и запись файлов
- Стандартные потоки ввода-вывода и io.Copy
- Форматированный вывод
- Вывод на консоль
- Форматируемый ввод
- Чтение с консоли
- Буферизированный ввод-вывод
Глава 9. Сетевое программирование
- Отправка запросов
- Сервер. Обработка подключений
- Взаимодействие клиента и сервера
- Установка таймаута
- Отправка запросов по HTTP
- Client
Глава 10. Базы данных
- Работа с реляционными база данных
- MySQL
- PostgreSQL
- SQLite
- MongoDB