Стань GO-разработчиком
Пиши производительные веб-сервисы с простым кодом за пару дней.
И получай GOры денег.
Курс начинается 13 мая
Осталось 17 мест
На рынке востребованы специалисты со смежной экспертизой
Курс подойдет тем, кто пишет на PHP, Python, C/C++, JavaScript, Ruby.

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

Курс не рассчитан на людей без опыта программирования.


Зарплата от 130 000 рублей
Эффективный, как С++
Это средняя зарплата начинающего разработчика Gо по версии Мой круг.
Go — компилируемый язык, а это значит, что он производительный. А ещё он имеет свой сборщик мусора для распределения и удаления объектов.
Через месяц вы уже сможете писать приложения, которые можно смело выпускать в продакшн.
Разработан и поддерживается Google
Google специально создал свой язык, чтобы тысячи людей могли делать проекты одновременно. Это основа большого сообщества и развития языка.
Понятный и стабильный код
Go отлично подходит для командной разработки. Если вы не понимаете код, значит, он плохо написан.
Идеален для микросервисов
Go — идеальный язык для создания микросервисов, и поэтому он становится стандартом среди DevOps.
Простота вхождения в язык
Ведущие компании различных индустрий активно внедряют Go в свою работу и набирают специалистов в команды
Во время обучения вы
  • изучите основы языка и разработки веб-сервисов с помощью Go;

  • запустите свое приложение;

  • узнаете типичные проблемы, с которыми сталкиваются разработчики любых веб-сервисов и научитесь их устранять;

  • прокачаетесь в веб-программировании и пополните свое резюме.

За 2 месяца вы освоите профессию на уровне
middle-специалиста
Мы даем много материала и сложные домашки, которые ощутимо поднимут ваш уровень и помогут уверенно использовать язык в работе.
1 неделя. Введение в Golang
Разберетесь с основами языка:

• Переменные, базовые типы данных
• Переменные, составные типы данных
• Управляющие конструкции
• Основы функций
• Функция как объект первого класса, анонимные функции
• Отложенное выполнение и обработка паники
• Основы работы со структурами
• Методы структур
• Пакеты и область видимости
• Основы работы с интерфейсами
• Пустой интерфейс
• Композиция интерфейсов
• Написание программы уникализации
• Написание тестов для программы уникализации
2 неделя. Асинхронная работа
Освоите главную особенность языка. Асинхронность и простота — вот что делает Go таким мощным инструментом.

• Методы обработки запросов и плюсы неблокирующего подхода
• Горутины - легковесные процессы
• Каналы - передаём данные между горутинами
• Мультиплексирование каналов через оператор select
• Таймеры и таймауты
• Пакет context и отмена выполнения
• Асинхронное получение данных
• Пул воркеров
• sync.Waitgroup - ожидание завершения работы
• Ограничение по ресурсам
• Ситуация гонки на примере конкурентной записи в map
• sync.Mutex для синхронизации данных
• sync.Atomic
3 неделя. Работа с динамическими данными и производительность
Научитесь обращаться с динамическими данными и работать с JSON.

• Распаковываем JSON
• Нюансы работы с JSON
• Пакет reflect - работаем с динамикой в рантайме
• Кодогенерация - программа пишет программу
• Система бенчмарков Go
• Профилирование через pprof
• sync.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
Преподаватель курса – практикующий разработчик
Василий Романов
Технический менеджер проекта Почта@Mail.ru
Долгое время был фрилансером. За это время понял, что работа программиста заключается в создании ценности для бизнеса, а не в написании кода. Последние 5 лет делаю лучше Почту Mail.Ru. В 2016 году мы с командой запустили первый веб-апи на Go, который сегодня уже стал самым нагруженным апи-сервисом почты. Познакомившись с языком Go, проникся его ценностями и в 2017 году начал преподавательскую деятельность. Читаю лекции в Технопарке (МГТУ им. Баумана) и Техносфере (МГУ им. Ломоносова).
Стань Go-разработчиком
Или купите место за 30 000 р.
25 000 р. до 12 апреля
Чтобы купить курс в рассрочку или задать вопросы, оставьте телефон
На курсе всего 20 мест.
Забронируйте место за 5000 р.
Курс начинается 13 мая и продлится 2 месяца.