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

23 занятия

фидбек

курсовой проект

Node.js

Научитесь разрабатывать быстрые и масштабируемые веб-приложения с Node.js, чтобы увеличить свою ценность на рынке труда

photo

Лектор: Сергей Ващенко

Senior Software Developer в

RBC (Royal Bank of Canada)

Этот курс для вас, если вы:

  • имеете практический опыт программирования и готовы освоить серверную разработку

  • планируете переходить с Frontend-разработки в Backend или Fullstack

  • уже программируете на Node.js, но хотите улучшить знания и овладеть best practices

  • хотите повысить конкурентоспособность благодаря новым навыкам, научиться асинхронному программированию и работе с фреймворками

В программу курса входят:

 
icon
Фреймворки и библиотеки
 Ознакомитесь с платформой и ее основными фреймворками Express.js и NestJS
 
 
icon
Best practices
 Освоите асинхронное программирование, поработаете с базами данных и гарантированием безопасности инфраструктуры
 
 
icon
Курсовой проект
 Разработаете собственное приложение и сможете добавить его в свой профиль на GitHub
 
 
icon
Бонусный блок
 Если не работали с JavaScript или хотите освежить знания — сможете освоить язык благодаря бонусному блоку
 

О курсе

  • Продолжительность:

    23 занятия

  •  

    2 месяца

  •  

    Бонусный блок

Node.js идеально подходит для клиент-серверных приложений, ведь обрабатывает миллионы запросов каждую секунду. Эта платформа создана на втором по популярности языке программирования, а Frontend-разработчики, которые пишут бэкенд на Node.js, зарабатывают на 15 % больше. На курсе разберетесь с возможностями Node.js и научитесь применить их в своей работе.

лектор

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

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

Программа

  • Бонусный блок. JavaScript

    • Знакомство с JavaScript. Part 1
    • Знакомство с JavaScript. Part 2
    • Асинхронность
    • Классы

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

  • 01 занятие
    14.05.25 17:30

    Node.js: задачи и основные концепции

    • узнаете об основных преимуществах Node.js
    • установите и настроите рабочую среду Node.js с помощью JetBrains WebStorm
  • 02 занятие
    19.05.25 17:30

    Архитектура программы Node.js. Начало работы с Node.js

    • сможете улучшить код с помощью линтеров JSLint и ESLint
    • узнаете преимущества TypeScript в Node.js
    • будете уметь мотивированно выбирать фреймворк для работы, учитывая особенности и преимущества каждого
  • 03 занятие
    21.05.25 17:30

    Основы работы с сервером

    • узнаете о работе с НТТР и статус-кодах
    • научитесь читать, записывать, изменять и работать с директориями в файловой системе с помощью модуля fs
    • выясните, как компоненты взаимодействуют между собой в Even-Driven Architecture
  • 04 занятие
    26.05.25 17:30

    Docker для Node.js

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

    Express.js

    • узнаете, в чем особенности Express.js, его преимущества и ограничения
    • научитесь работать с одним из самых популярных фреймворков для Node.js и применять его на практике
    • создадите базовую структуру приложений с помощью Express.js
  • 06 занятие
    02.06.25 17:30

    Введение в TypeScript и основы NestJS

    • узнаете, какие возможности открывает TypeScript, его преимущества, ограничения и влияние на качество кода
    • научитесь работать со статической типизацией и использовать ее для предотвращения ошибок в коде
    • освоите интерфейсы, generics, enums, utility types и декораторы для построения гибкой архитектуры
    • примените TypeScript в реальных проектах и научитесь работать с NestJS для бэкенд-разработки
  • 07 занятие
    04.06.25 17:30

    Продвинутый NestJS: архитектура и оптимизация

    • научитесь строить модульную архитектуру, организуя логику на модули, сервисы и контроллеры
    • автоматизируете управление зависимостями Dependency Injection (DI) и научитесь использовать middleware для обработки запросов перед контроллерами
    • реализуете Guards для контроля доступа (аутентификация, роли) и Pipes для валидации и трансформации данных
  • 08 занятие
    09.06.25 17:30

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

    • узнаете, как антипаттерны влияют на качество кода и как их избегать, чтобы писать чистый и поддерживаемый код
    • научитесь находить типичные проблемы серверного программирования, такие как неоптимальная передача параметров, Nested Hell и чрезмерное количество логов
    • автоматизируете процесс оптимизации кода, чтобы улучшить обработку JSON, циклов, SQL-запросов и ошибок
    • примените принципы рефакторинга и научитесь распознавать базовые практики, которых стоит избегать
  • 09 занятие
    11.06.25 17:30

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

    • узнаете, что такое асинхронность и в каких случаях стоит использовать асинхронный подход
    • научитесь управлять событиями с помощью EventEmitter для эффективной работы с потоками данных
    • автоматизируете асинхронные процессы благодаря best practices и будете избегать распространенных ошибок в коде
  • 10 занятие
    16.06.25 17:30

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

    • узнаете, как работает реактивное программирование и когда его стоит применять
    • научитесь пользоваться WebSocket для обмена данными в реальном времени
    • автоматизируете тестирование с Selenium и оптимизируете работу с файловой системой через модуль fs
    • сможете эффективно управлять событиями с помощью EventEmitter и работать с RxJS
  • 11 занятие
    18.06.25 17:30

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

    • узнаете основы реляционных баз данных (RDBMS) и принципы их работы
    • научитесь различать SQL и NoSQL и выбирать оптимальный подход для проектов
    • разберетесь в концепциях реляций и базовых принципах построения баз данных
  • 12 занятие
    23.06.25 17:30

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

    • узнаете, как работают SQL Joins и их виды для эффективной работы со связанными таблицами
    • научитесь использовать процедуры в базах данных для оптимизации запросов
    • разберетесь в нормализации данных для построения логической и эффективной структуры баз данных
    • освоите принципы ACID-транзакций, гарантирующие надежность работы с данными
  • 13 занятие
    25.06.25 17:30

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

    • узнаете, как работают транзакции и уровни их изоляции (Read Uncommitted, Read Committed, Repeatable Read)
    • научитесь пользоваться TypeORM в NestJS для эффективной работы с базами данных
    • освоите подход Code First для создания структур баз данных непосредственно в коде
  • 14 занятие
    30.06.25 17:30

    Нереляционные базы данных

    • узнаете, как эффективно использовать MongoDB, Redis и Cassandra в проектах на Node.js
    • научитесь работать с Mongoose для удобного взаимодействия с MongoDB
  • 15 занятие
    02.07.25 17:30

    Message Brokers

    • узнаете, что такое Message Broker и какую роль он играет в системах с высокой нагрузкой
    • научитесь работать с RabbitMQ с использованием обменников, очередей, маршрутизации и подтверждений сообщений
    • освоите основы Apache Kafka, в частности темы, партиции, продюсеров и консумеров
    • поймете, чем отличаются RabbitMQ и Apache Kafka и где их стоит применять
  • 16 занятие
    07.07.25 17:30

    Размещение и развертывание приложения

    • узнаете, как устроен типичный GitHub pipeline и как его настроить
    • научитесь работать с ветками (branches) и тестировать код в среде Node.js
    • освоите различные методы релиза ПО и поймете, какой подходит для вашего проекта
  • 17 занятие
    09.07.25 17:30

    Облачные технологии

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

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

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

    Логирование и тестирование

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

    Безопасность в серверном программировании

    • узнаете, какие принципы безопасности являются критическими в серверном программировании и как избегать уязвимостей
    • разберетесь в функционале и особенностях JWT
    • освоите методы аутентификации и авторизации пользователей для защиты доступа к системе
    • сможете гарантировать безопасность sensitive data благодаря лучшим практикам шифрования и управления доступом
  • 21 занятие
    23.07.25 17:30

    Подготовка к техническому собеседованию

    • узнаете, как проходят технические собеседования и какие вопросы чаще всего задают
    • научитесь эффективно решать типичные live-задачи вроде LeetCode Easy
  • 22 занятие
    28.07 25 17:30

    Итог курса

    • научитесь писать эффективный и оптимизированный код
    • поймете принципы CI/CD
  • 23 занятие
    30.07.25 17:30

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

Узнать больше

Оставляйте заявку, чтобы освоить Node.js и повысить конкурентоспособность на рынке трудоустройства.

 
 
 
Регистрируясь, вы соглашаетесь с условиями договора-оферты и политикой конфиденциальности.