Курс Golang для розробників: опануйте мову Go | robot_dreams
  • онлайн-курс
  • 21 заняття
  • курсовий проєкт

GOLANG ДЛЯ РОЗРОБНИКІВ

Практичний курс програмування Golang для тих, хто хоче системно перейти на новий стек.

Олександр Кузан

Senior Software Engineer у

Pindrop

Головний банер курсу Golang для розробників від школи robot_dreams

ПІСЛЯ КУРСУ ВИ:

пишете на мові Go

використовуєте 20+ інструментів для створення сервісів на Go, зокрема Rest API, WebSockets, RabbitMQ та Apache Kafka

оптимізуєте обробку запитів з горутинами

використовуєте MongoDB і PostgreSQL, працюєте з фреймворком Fiber для розробки високопродуктивних вебсервісів і знаєте фреймворки Gin та Echo

розробляєте мікросервіси та працюєте з Middleware

знаєте основні принципи архітектури застосунків та їхні характеристики, а ще — основи балансування навантаження та оркестрації

 

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

  • 01 заняття

    Інтро в мову програмування Golang

    • Познайомитеся зі структурою курсу та курсовим проєктом
    • Зрозумієте основні ідеї та філософію Go
    • Порівняєте Go з NodeJS, Java та Python
    • Налаштуєте середовище й базові CLI-інструменти
    • Напишете і запустите першу програму на Go
  • 02 заняття

    Основи синтаксису Golang (Частина 1)

    • Зрозумієте структуру програми на Go
    • Навчитеся працювати зі змінними й константами
    • Опануєте базові типу даних та оператори
    • Зможете реалізувати введення та виведення через пакет fmt
  • 03 заняття

    Основи синтаксису Golang (Частина 2)

    • Навчитеся використовувати умовні конструкції та цикли
    • Розберетеся з масивами, зрізами та їхньою місткістю
    • Зможете зберігати дані в мапах і перевіряти наявність ключів
    • Навчитеся фільтрувати й агрегувати колекції даних
  • 04 заняття

    Робота з функціями та вказівниками

    • Навчитеся створювати функції з кількома результатами
    • Зрозумієте роботу аноніних функцій та замикань
    • Розберетеся з вказівниками та передаванням параметрів
    • Зможете обробляти помилки, паніки та відкладені виклики
  • 05 заняття

    Методи, Інтерфейси та Generics

    • Навчитеся створювати структури та використовувати композицію
    • Зрозумієте різницю між value та pointer receivers
    • Розберетеся з неявними інтерфейсами та приведенням типів
    • Навчитеся працювати з узагальненими типами та обмеженнями
    • Створите структуру store з реалізацією інтерфейсів
  • 06 заняття

    Робота з файлами, I/O та Context

    • Розберетеся з інтерфейсами io.Reader та io.Writer
    • Навчитеся читати, створювати й записувати файли
    • Зможете керувати скасуванням операцій і тайм-аутами через context
    • Збережете дані store у JSON або CSV з урахуванням тайм-аутів
  • 07 заняття

    Логування та основи тестування

    • Навчитеся створювати структуровані логи через log/slog
    • Зможете писати Unit- і Table-Driven Tests
    • Навчитесь оцінювати продуктивність коду за допомогою бенчмарків
    • Покриєте логіку store табличними тестами
  • 08 заняття

    О-нотація та алгоритми сортування

    • Навчитесь оцінювати складність алгоритмів за допомогою Big O
    • Розберете алгоритми Bubble sort, Quick sort і Merge sort
    • Зможете використовувати вбудований пакет sort
    • Реалізуєте пошук і сортування масивів у Go
  • 09 заняття

    Дерева та хеш-таблиці

    • Зрозумієте внутрішню будову хеш-таблиць і механізми колізій
    • Розберетеся з бінарними деревами пошуку
    • Навчитеся реалізовувати обхід дерева за допомогою вказівників
  • 10 заняття

    Основи Concurrency (Горутини та Канали)

    • Зрозумієте різницю між конкурентністю і паралелізмом
    • Розберетеся з процесами, потоками й горутинами
    • Навчитесь обмінюватися даними через канали
    • Зможете керувати кількома каналами за допомогою select
  • 11 заняття

    Синхронізація та розв’язання Deadlocks

    • Навчитеся виявляти стан гонки за допомогою race detector
    • Опануєте Mutex, RWMutex, WaitGroup та Once
    • Зрозумієте причини взаємоблокувань і способи їхнього уникнення
    • Реалізуєте патерни Worker Pool, Pipeline та Fan-in/Fan-out
    • Зробите пакет store потокобезпечним
  • 12 заняття

    Робота з мережею

    • Зрозумієте принципи роботи TCP, UDP та клієнт-серверної архітектури
    • Навчитеся створювати TCP-сервер та клієнт через пакет net
    • Реалізуєте Netcat-подібний TCP-клієнт
    • Налаштуєте graceful shutdown, keep-alive та повторні запити
  • 13 заняття

    Робота з Docker

    • Розберетеся з образами, контейнерами та волюмами Docker
    • Створите оптимізований multi-stage Dockerfile для Go-сервісу
    • Навчитеся безпечно запускати сервіс та керувати конфігурацією
    • Зможете розгортати застосунок і базу даних через Docker Compose
  • 14 заняття

    Інтеграція з Базами Даних (PostgreSQL/MongoDB)

    • Навчитеся виконувати CRUD-запити й керувати транзакціями
    • Розберетеся з пулами з’єднань у PostgreSQL
    • Познайомитеся з GORM та MongoDB Go Driver
    • Підключите пакет store до бази даних у Docker
  • 15 заняття

    Основи HTTP-серверів та екосистема фреймворків

    • Побудуєте базовий HTTP-сервер на net/http
    • Зрозумієте роботу Handler, ServeMux та Middleware
    • Порівняєте standard router, chi, Gin, Echo та Fiber
    • Навчитесь обирати між стандартною бібліотекою та фреймворком
    • Налаштуєте базовий роутинг на Fiber та chi
  • 16 заняття

    Побудова REST API та Swagger-документація

    • Навчитеся проєктувати архітектуру REST API
    • Зможете коректно використовувати HTTP-методи й статус-коди
    • Створите ендпоінти для CRUD-операцій
    • Згенеруєте Swagger-документацію з коментарів у коді
  • 17 заняття

    Валідація та парсинг запитів

    • Навчитеся парсити JSON, query-параметри та параметри URL
    • Зможете перевіряти вхідні дані за допомогою validator
    • Створите централізований обробник HTTP-помилок
    • Навчитеся повертати стандартизовані JSON-відповіді
  • 18 заняття

    Middleware та Авторизація (JWT)

    • Створите Middleware для логування, метрик і Rate Limiting
    • Зрозумієте принцип роботи JSON Web Token
    • Навчитеся безпечно хешувати паролі через bcrypt
    • Реалізуєте логін і захист закритих API-ендпоінтів
  • 19 заняття

    WebSockets у Go

    • Зрозумієте різницю між WebSocket та HTTP
    • Навчитеся налаштовувати WebSocket-сервер
    • Зможете оновлювати HTTP-з’єднання до WebSocket
    • Створите обмін даними між клієнтом і сервером у реальному часі
  • 20 заняття

    Best practices у розробці застосунків на Golang

    • Зрозумієте принципи переходу від моноліту до мікросервісів
    • Порівняєте REST, gRPC та брокери повідомлень
    • Познайомитеся з базовими компонентами Kubernetes
    • Налаштуєте graceful shutdown і глобальне керування тайм-аутами
    • Розберетеся з observability, міграціями та безпекою застосунків
  • 21 заняття

    Підготовка до співбесід і захист проєкту

    • Розберете типові запитання та завдання на Go-співбесідах
    • Підготуєтеся до live-coding інтерв’ю
    • Сформуєте подальший вектор розвитку в DevOps і системному дизайні
    • Презентуєте готовий REST API сервіс з документацією та тестами

лектор

Олександр Кузан, Senior Software Engineer у Pindrop та лектор курсу Golang

Олександр Кузан

Senior Software Engineer у Pindrop

  • Go/Backend Software Engineer із 5+ роками комерційного досвіду в Golang-розробці

  • Пройшов шлях від Junior у Boosty Labs до Middle/Senior-ролей в Agile Fuel та Yalantis

  • Працював із Go, PostgreSQL, Docker, PHP, Amazon ECR і backend-інфраструктурою

  • Пояснює Go через реальні задачі розробки, командну роботу і production-процеси

реєстрація

Долучайтеся до навчання з Golang, щоб створювати високопродуктивні застосунки на Go.

 
 
 
Реєструючись, ви погоджуєтеся з умовами договору-оферти та політикою конфіденційності.