Онлайн-курс «Node.js» | robot_dreams

Онлайн-курс з розробки на Node.js

NODE.JS

Один інструмент, який поєднує універсальність, масштабування та великий вибір готових рішень

  • За 2 місяці навчання на курсі ви:

    - опануєте асинхронне програмування
    - підвищите продуктивність серверних застосунків
    - практикуватимете техніки для безперебійної інтеграції фронтенд- і бекенд-частин на JavaScript
    - будуватимете масштабовані застосунки, які витримуватимуть велике навантаження
    - вивчите ключові бібліотеки та фреймворки Node.js, як-от Express.js

  • В результаті розробите власний застосунок, який зможете додати до свого профілю на GitHub.

ДО ПРОГРАМИ КУРСУ ВХОДЯТЬ:

  1. КОМПЛЕКСНА РОБОТА З NODE.JS

    Протягом курсу ви повністю опануєте Node.js — від знайомства з базовим функціоналом до роботи з фреймворками, серверами та сучасними інструментами.

  2. BEST PRACTICES

    На курсі опануємо найкращі практики розробки на Node.js: приділимо час асинхронному програмуванню, роботі з базами даних та убезпеченню інфраструктури.

  3. КУРСОВИЙ ПРОЄКТ

    Наприкінці курсу презентуєте курсовий проєкт — розробите власний застосунок, який згодом зможете додати до свого профілю на GitHub.

  4. БОНУСНИЙ БЛОК

    Для студентів, які ще не працювали з JavaScript або хочуть освіжити знання цієї мови, ми додали до курсу бонусний блок з основами JS, що складається з 4 занять.

ЛЕКТОР:

Сергій
Ващенко

  • Senior Software Developer в RBC (Royal Bank of Canada)
  • 7+ років досвіду у Fullstack-розробці
  • має сертифікації Stanford, CISCO, Linux, AWS
  • має досвід роботи з highload-проєктами: розробив аналог Jira для децентралізації команд
  • інтегрував Bluetooth із механізмом читання кодів для проєкту на > 1.000.000 юзерів
  • успішно впровадив зміни з використанням Scrum Framework у технологічному стеку, що охоплює Angular, Node.js, Python, GoLang

ПРОГРАМА

  • 00

    Бонусний блок. JavaScript

    Результати: зрозумієте основи JavaScript, типи даних, цикли, умовні конструкції та роботу з об’єктами. Навчитеся використовувати асинхронний код (callback-функції, проміси, async/await) та розберетеся, як працює Event Loop. Опануєте основи ООП у JavaScript, зокрема класи, наслідування та модифікатори доступу.

    • Знайомство з JavaScript. Part 1
    • Знайомство з JavaScript. Part 2
    • Асинхронність. Part 1
    • Класи
  • 01

    Node.js: завдання та основні концепції

    • дізнаєтеся про основні переваги Node.js
    • встановите й налаштуєте робоче середовище Node.js за допомогою JetBrains WebStorm
  • 02

    Архітектура програми Node.js. Початок роботи з Node.js

    • зможете покращити код за допомогою лінтерів JSLint та ESLint
    • дізнаєтеся переваги TypeScript у Node.js
    • вмітимете вмотивовано обирати фреймворк для роботи з огляду на особливості й переваги кожного
  • 03

    Основи роботи із сервером

    • дізнаєтеся про роботу з НТТР та статус-коди
    • навчитеся читати, записувати, змінювати й працювати з директоріями у файловій системі за допомогою модуля fs
    • з’ясуєте, як компоненти взаємодіють між собою в Even-Driven Architecture
  • 04

    Docker для Node.js

    • дізнаєтесь, як Docker ізолює програми із залежностями та забезпечує стабільну роботу в будь-якому середовищі
    • навчитеся створювати власні Docker-образи за допомогою Dockerfile та запускати контейнери на основі готових шаблонів
    • автоматизуєте розгортання багатоконтейнерних застосунків із Docker Compose, яке спростить налаштування складних середовищ
  • 05

    Express.js

    • дізнаєтесь, у чому особливості Express.js, його переваги та обмеження
    • навчитеся працювати з одним із найпопулярніших фреймворків для Node.js та застосовувати його на практиці
    • створите базову структуру застосунків за допомогою Express.js
  • 06

    Вступ до TypeScript та основи NestJS

    • дізнаєтесь, які можливості відкриває TypeScript, його переваги, обмеження та вплив на якість коду
    • навчитеся працювати зі статичною типізацією та використовувати її для запобігання помилок у коді
    • опануєте інтерфейси, generics, enums, utility types та декоратори для побудови гнучкої архітектури
    • застосуєте TypeScript у реальних проєктах і навчитеся працювати з NestJS для бекенд-розробки
  • 07

    Просунутий NestJS: архітектура та оптимізація

    • навчитеся будувати модульну архітектуру, організовуючи логіку на модулі, сервіси та контролери
    • автоматизуєте керування залежностями Dependency Injection (DI) та навчитеся використовувати middleware для обробки запитів перед контролерами
    • реалізуєте Guards для контролю доступу (автентифікація, ролі) й Pipes для валідації та трансформації даних
  • 08

    Антипатерни проєктування

    • дізнаєтесь, як антипатерни впливають на якість коду та як їх уникати, щоб писати чистий і підтримуваний код
    • навчитеся знаходити типові проблеми серверного програмування, як-от неоптимальна передача параметрів, Nested Hell і надмірна кількість логів
    • автоматизуєте процес оптимізації коду, щоб покращити обробку JSON, циклів, SQL-запитів і помилок
    • застосуєте принципи рефакторингу та навчитеся розпізнавати базові практики, яких варто уникати
  • 09

    Асинхронність

    • дізнаєтеся, що таке асинхронність та в яких випадках варто використовувати асинхронний підхід
    • навчитеся керувати подіями за допомогою EventEmitter для ефективної роботи з потоками даних
    • автоматизуєте асинхронні процеси завдяки best practices і уникатимете поширених помилок у коді
  • 10

    Реактивне програмування: WebSocket, модуль fs та Selenium

    • дізнаєтесь, як працює реактивне програмування та коли його варто застосовувати
    • навчитеся користуватися WebSocket для обміну даними в реальному часі
    • автоматизуєте тестування із Selenium та оптимізуєте роботу з файловою системою через модуль fs
    • зможете ефективно керувати подіями за допомогою EventEmitter та працювати з RxJS
  • 11

    Робота з базами даних. Частина 1

    • дізнаєтесь основи реляційних баз даних (RDBMS) та принципи їхньої роботи
    • навчитеся розрізняти SQL та NoSQL і вибирати оптимальний підхід для проєктів
    • розберетесь у концепціях реляцій та базових принципах побудови баз даних
  • 12

    Робота з базами даних. Частина 2

    • дізнаєтесь, як працюють SQL Joins та їхні види для ефективної роботи з пов’язаними таблицями
    • навчитеся використовувати процедури в базах даних для оптимізації запитів
    • розберетесь у нормалізації даних для побудови логічної та ефективної структури баз даних
    • застоїте принципи ACID-транзакцій, що гарантують надійність роботи з даними
  • 13

    Робота з базами даних. Частина 3

    • дізнаєтесь, як працюють транзакції та рівні їхньої ізоляції (Read Uncommitted, Read Committed, Repeatable Read)
    • навчитеся користуватися TypeORM у NestJS для ефективної роботи з базами даних
    • опануєте підхід Code First для створення структур баз даних безпосередньо в коді
  • 14

    Нереляційні бази даних

    • дізнаєтесь, як ефективно використовувати MongoDB, Redis та Cassandra у проєктах на Node.js
    • навчитеся працювати з Mongoose для зручної взаємодії з MongoDB
  • 15

    Message Brokers

    • дізнаєтеся, що таке Message Broker та яку роль він відіграє у системах з високим навантаженням
    • навчитеся працювати з RabbitMQ з використанням обмінників, черг, маршрутизації та підтверджень повідомлень
    • опануєте основи Apache Kafka, зокрема теми, партиції, продюсерів і консумерів
    • зрозумієте, чим відрізняються RabbitMQ та Apache Kafka і де їх варто застосовувати
  • 16

    Розміщення та розгортання програми

    • дізнаєтесь, як влаштований типовий GitHub pipeline і як його налаштувати
    • навчитеся працювати з гілками (branches) і тестувати код у середовищі Node.js
    • опануєте різні методи релізу ПЗ та зрозумієте, який підходить для вашого проєкту
  • 17

    Хмарні технології

    • навчитеся працювати з AWS, зокрема розбиратись у регіонах, зонах доступності та обчислювальних ресурсах
    • опануєте AWS Cognito для управління автентифікацією та авторизацією користувачів, а також AWS для зберігання й обробки файлів
    • з’ясуєте, в чому відмінності AWS, GCP та Azure, та зможете обирати правильну платформу для проєкту
  • 18

    Контейнеризація та DevOps

    • дізнаєтесь, як працює оркестрація контейнерів та які ключові можливості надає Kubernetes
    • навчитесь управляти інфраструктурою через майстер-вузли (АРІ-сервер, контролери, etcd) та робочі вузли (kubelet, kube-proxy)
    • опануєте роботу з Pod і ReplicaSet для масштабування та підтримки потрібної кількості контейнерів
    • з’ясуєте, як працюють Deployment для безперервних оновлень та Service (ClusterIP, NodePort, LoadBalancer) для з’єднання Pod із користувачами
  • 19

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

    • дізнаєтесь, які існують типи тестування та коли їх варто застосовувати
    • навчитеся працювати за підходами TDD (Test-Driven Development) та BDD (Behavior-Driven Development) для покращення процесу розробки
    • опануєте best practices у тестуванні та логуванні, уникаючи поширених помилок
  • 20

    Безпека в серверному програмуванні

    • дізнаєтесь, які принципи безпеки є критичними в серверному програмуванні та як уникати вразливостей
    • розберетесь у функціоналі та особливостях JWT
    • опануєте методи автентифікації та авторизації користувачів для захисту доступу до системи
    • зможете гарантувати безпеку sensitive data завдяки найкращим практикам шифрування та управління доступом
  • 21

    Підготовка до технічної співбесіди

    • дізнаєтесь, як відбуваються технічні співбесіди та які запитання найчастіше ставлять
    • навчитесь ефективно розв’язувати типові live-завдання на кшталт LeetCode Easy
  • 22

    Підсумок курсу

    • навчитеся писати ефективний та оптимізований код
    • зрозумієте принципи CI/CD
  • 23

    Захист курсових робіт

Зареєструватися

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