top of page
Live - (16).png

Курс Golang programming

Go: повний посібник розробника (Golang).

Тримісячний курс для вивчення мови програмування Golang з нуля і до впевненого Junior розробника.

Мова програмування Go, або Golang, –– це розробка Google. Цю мову використовують майже в кожному продукті компанії –– від Gmail до Google Pay. Крім того, мова Gо поступово захоплює ринок і дедалі більше компаній потребують спеціалістів із програмування на Gо.

Старт курсу

набір триває

Формат навчання

за вашим графіком

Тривалість

3 місяці / 24 заняття / 36 годин

Підтримка менторів

24 / 7 

Отримати консультацію щодо навчання

ОПИС

Студенти з нуля вивчать Golang (синтаксис, його особливості, вбудовані та розповсюджені модулі) та отримають міцну базу з технологій, хороших практик (архітектура, git, написання коду), порад тощо. Все буде підкріплено практикою та реальними прикладами. Також ми напишемо наш фінальний проєкт, в якому використаємо технології та практики, які будемо розбирати, та оформимо його за всіма правилами (тести, профайлінг тощо). Ці знання дозволять упевнено відповідати на запитання при співбесіді на вашу першу позицію, адже курс враховує всі запитання та приклади з реальних співбесід

 

Технології та практики, які ми розберемо на курсі: Golang, JSON, JWT, HTTP, RESTful API, gRPC, protobuf, protoc, MySQL, PostgreSQL, MongoDB, RedisDB MQTT, NATS, images/files processing, git, GitHub, load balancing, DB replicating, DB table partitioning

Програми, що використовуватимемо: Mqtt Explorer, Visual Studio Code, Postman, command line.

Дизайн без назви.png

ЯК ПРОХОДИТЬ НАВЧАННЯ

Заняття

Заняття проходять в будні дні 2 рази на тиждень. Провідні спеціалісти діляться своїм практичним досвідом.

Теорія

2.png

Вивчаємо теорію на реальних прикладах, вчимо лише основи.

Практика

3.png

Практика є важливим аспектом адже більше уваги ми приділяємо практиці.

Матеріали

4.png

Відеозаписи та інші матеріали доступні протягом всього навчання та після його завершення.

Допомога ментора

Дизайн без назви (1).png

Постійний зв’язок з ментором у вирішенні всіх питань.

Онлайн заняття

Виконання завдання

Зворотній зв'язок

Виправлення помилок

МЕТОДОЛОГІЯ НАВЧАННЯ

Власний кабінет Jungle cloud

Робоче середовище студентів і доступ

до всіх матеріалів програми

Онлайн заняття 

2 онлайн зутрічі на тиждень

з менторами професіоналами

Комунікація в чаті

Група де знаходяться всі ментори
та студенти курсу

Круті ментори

Щоденно з вами на зв’язку кращі спеціалісти

цієї сфери, які допоможуть у всіх моментах

1.png

ПРОГРАМА КУРСУ

Формат навчання 

за власним графіком

Вартість навчання 

24 000 грн

 Курс з нуля - 3 місяці

Кожна тема складається з 80% практики

Тільки програмування Go

2 заняття на тиждень по 1.5-3 години

Introduction 

  1. Meet your mentor

  2. Computer components

  3. About golang

  4. Course plan

  5. Installation

    1. Golang

    2. VScode

  6. Hello world

Результат: Знайомство. Розуміння з чого складається комп’ютер, що таке програма, що таке Golang. Налаштування необхідного середовища (Golang, VScode). Напишемо першу програму Hello world на Golang

Syntax and Structure, Control statements 

  1. Variables, basic types and constants

  2. If / if else / if else if else

  3. Comparison operators

  4. Switch case

  5. Loops

Результат: Вміння роботи зі змінними, константами, базовими типами даних. Розберемо умовні конструкції, оператори порівняння, конструкцію перемикч, цикли

 

Functions, Struct+Methods

  1. Functions

    1. declaration, invocation

  2. Anonymous functions

    1. Closure,

    2. Scope

  3. Defer

  4. Struct+Methods

Результат: Вивчення та робота з функціями (оголошення, виклик, анонімні функції, контекст функції), відкладені виклики. Знання що таке структура та її методи

Advanced types 

  1. Arrays

  2. Slices

  3. Maps

Результат: Навчимося працювати з масивами, слайсами, мапами

Math

  1. Math operators

  2. Round, ceil, floor

  3. Sqrt, pow, trigonometry

  4. PI, E

  5. Inf()

  6. Rand (examples with arrays)

Результат: Розуміння роботи з математикою в Golang. Приклади як використовувати

 

Packages and imports

  1. Project structure, go.mod, import

  2. Source file

  3. Package initialization

  4. Go modules

Результат: Вивчення як впорядковувати файли в проєкті, модулів, пекеджів та розуміння структури файлу та проєкту

 

Interfaces

  1. Interface

  2. Implementation

  3. Method set of an interface

Результат: Вивчимо що таке інтерфейс, методи інтерфейсу, коли їх використовують

 

Errors, Unit Tests, Logging

  1. Error handling

  2. Logging

  3. Test case

  4. Test function

Результат: Вміння обробляти помилки, покривати код юніт-тестами, логувати

 

Pointers, Context

  1. Pointers

  2. Context

Результат: Вивчення поінтерів, вміння правильної роботи з пам’яттю та застосування контексту

Advanced types 

  1. Enum

  2. Iota

  3. Bitmask

  4. Time

  5. Rune

Результат: Розберемо більше типів (аналог enum в Golang, iota, дати й час, руни, bitmask), як з ними працювати та навчимося їх використовувати

 

Concurrency, Channels

  1. Goroutines

  2. Mutex

  3. Wait group

  4. Channels

Результат: Навчимося працювати з горутинами, мютексом, групою очікування та каналів. Розберемо всі їх нюанси та поширені помилки при роботі з ними

 

New Golang features and ok idiom, cgo

  1. Generics

  2. Min, max

  3. Ok idiom

  4. Cgo

Результат: Вивчимо дженеріки, функції мінімального і максимального, ок ідіому. Дізнаємося що таке cgo, як з ним працювати і коли використовувати

 

 Files, Graphics

  1. Files

  2. Image processing

  3. 2D graphics

Результат: Розуміння роботи з файлами різного типу (txt, csv) - як створити, відкрити, змінити, видалити. Розберемо доступи до файлу. Розберемо кольори та їх складові. Навчимося змінювати картинки (jpg, jpeg, png, webp). Розберемо різницю форматів картинок. Попрацюємо з 2D графікою у Golang
 

 API introduction

  1. Postman installation

  2. HTTP, RESTful API

  3. JSON, JWT

  4. Example project

Результат: Встановимо програму Postman і навчимося використовувати базові функції. Вивчимо що таке протокол HTTP і RESTful API. Навчимося роботі з даними у форматі JSON. Дізнаємось що таке JWT і де використовується. Створимо перше API

 

Databases 

  1. About databases (MySQL, PostgreSQL, MongoDB)

  2. MySQL installation

  3. Interaction with MySQL

Результат: Почнемо вивчення баз даних. Поговоримо про їх різновиди, нюанси, переваги та недоліки. Встановимо MySQL та напишемо свою першу квері до неї

 

Databases

  1. MySQL syntax

  2. Tables, columns, types and other

  3. GORM

Результат: Продовжимо роботу з MySQL. Навчимося створювати базу даних, таблиці, колонки. Попрактикуємося в написанні квері до MySQL. Інтегруємо роботу з MySQL в Golang за допомогою GORM

 

gRPC

  1. Protobuf

  2. gRPC

Результат: Вивчимо що таке protobuf і gRPC, їх переваги. Також навчимося працювати з gRPC. Напишемо сервіс з використанням цієї технології

 

Message brokers

  1. NATS installation

  2. Interaction with NATS

  3. About MQTT (just theory and examples, comparing with NATS)

Результат: Поговоримо про брокери повідомлень, обговоримо їх особливості, переваги та недоліки. Встановимо NATS і навчимося його використовувати. Порівняємо його з MQTT

 

Final project 

  1. Architecture

  2. Environmental variables

  3. Middleware

  4. Git

Результат: Почнемо писати фінальний проєкт RESTful API. Розберемо що таке змінні середовища, для чого вони і як з ними працювати. Напишемо мідлвейр для нашого сервісу. Збережемо зміни за допомогою git та навчимося заливати проєкт на GitHub

 

Final project 

  1. Handlers

  2. Service layer

  3. DB layer (GORM)

  4. Swagger

Результат: Напишемо хендлери, сервіси та додамо роботу з базою даних в наш проєкт. Навчимося писати документацію до ендпоінтів нашого апі за допомогою Swagger

 

Final project 

  1. Caching examples in a project

    1. In memory

    2. Redis (installation and interaction)

Результат: Вивчимо для чого потрібне кешування, які є його типи і додамо кешування в пам’яті та в Redis DB

 

Final project 

  1. More about Redis DB

  2. Message broker integration (NATS)

Результат: Поглибимося в Redis DB (вивчимо більше функцій). Додамо  брокер NATS в наш проєкт

 

Final project 

  1. Test coverage

  2. Benchmarks

  3. Profiling

Результат: Покриємо наш проєкт юніт-тестами. Вивчимо що таке бенчмарки і профайлінг програми, застосуємо їх на практиці

Optimization strategy

  1. Load balancing

  2. DB replications

  3. DB table partitioning

  4. Final info

Результат: На прикладі нашого готового проєкту розберемо різні стратегії оптимізації сервісів: розподілення навантаження, реплікація бази даних, розділення таблиці бази даних. Підведемо підсумки, поговоримо про співбесіди

Ваш сертифікат після закінчення курсу

Certificate of completion (1).png

МЕНТОРИ

Адреса

З будь-якої точки світу​

Телефон

Email

Connect

  • Instagram
  • Facebook
bottom of page