Комплексный курс: Backend,

|
Быстрый старт: сразу после оплаты 
Откроем глаза

О курсе

rocket

Технологии

  • Backend platform: Node.js
  • Web application framework: Express
  • NoSQL Database: MongoDB
  • Object modeling tool: Mongoose
rocket

Профит курса

Данный курс позволяет в короткий срок освоить навык создания RESTfull API приложений на платформе Node.js. В курсе детально разбираются особенности работы JavaScript на платформе Node.js., а также самая популярная библиотека для создания API приложений Express.js.

В рамках обучения мы детально разбираем работу с нереляционной базой данных MongoDB, а также работу с библиотекой Mongoose. После обучения у вас будет уверенность и опыт правильного применения базы данных MongoDB в реальной жизни.

Материалы

Мы предоставляем неограниченный доступ к учебным материалам курса: записи уроков в видео- и аудио-формате, домашние задания c решениями от преподавателя, исходные коды примеров, которые используются на уроках, а также списки полезных материалов.

С сильной менторской поддержкой

Закрытое комьюнити выпускников в Slack, персональный ментор на время обучения, проверка домашних заданий и даже индивидуальные занятия с экспертом — поддержки вы получите ровно столько, сколько вам нужно.

В комфортном темпе

Мы предоставим вам весь материал по курсу, чтобы вы в своём ритме занимались изучением Node.js, Express, MongoDB, Mongoose. Доступна ежедневная менторская поддержка в чате курса.

Курс будет полезен если вы

  • ✔️ Фронтенд-разработчик двигаетесь в MERN-стек
  • ✔️ Выбрали путь бекенд-разработчика
  • ✔️ Самостоятельно учили Node.js и завалились на собеседовании
  • ✔️ Уже освоили Node.js и хотите эффективно продвигаться в обучении с наставником
  • ✔️ Работаете бекенд-разработчиком и пишите на другом языке
  • ✔️ Хотите закрыть пробелы в знаниях и прокачаться на 100%

Требования к участникам

Вам необходимо иметь уверенные навыки JavaScript и ECMAScript 2015 (ES6), чтобы не возникало сложностей в процессе обучения. Желательно иметь некоторый опыт разработки, возможно на других языках программирования.

Что вы получите после курса

Вы научитесь работать с самыми востребованными инструментами бекенд-разработки. У вас появится уверенность на собеседованиях и реальных проектах.

  • 🔥 Два готовых проекта для портфолио
  • 💪🏼 100% готовность к работе
  • ✈️ Научитесь создавать комплексные и современные приложения на Node.js
  • 👍 Сильно упростите себе жизнь с помощью Express.js
  • 🤓 Научитесь правильно работать с MongoDB
  • 🎥 Неограниченный доступ к материалам
От экспертов своего дела

Мы успешно провели:

19 потоков по React, 12 по Redux, 4 по webpack, а также обучили 5 потоков по JavaScript и 3 по Backend. В 2019 году мы запустили новые курсы по Docker и Redis, а в 2020 году — GraphQL и TypeScript.

Наша оценка от выпускников — 4.9.

интенсивно

Структура курса

  • + 1. Node.js: Node != JavaScript

    • V8 под капотом
    • libuv
    • Фишки JavaScript
    • Node's коммандная строка и REPL
    • Объекты Global, Process, и Buffer
    • Системы модулей: CommonJS и ESM
    • Как require() работает на самом деле
    • Кеширование модулей
    • JSON и C++ аддоны
    • Пакетные менеджеры: NPM и Yarn
  • + 2. Node.js: Concurrency модель и цикл событий

    • Синхронный JavaScript
    • Что такое I/O?
    • Цикл событий и не блокирующее асинхронное выполнение
    • Стек вызовов
    • Обработка медленных операций
    • Работа с колбеками
    • Как колбеки работают на самом деле
    • Работа с таймерами
    • setImmediate и process.nextTick
  • + 3. Node.js: Событийная архитектура

    • Колбеки, промисы, и async/await
    • Работа с событиями
    • Как работает Event Emitter в Node.js
    • Наследование от Event Emitter
    • Аргументы, ошибки, и порядок выполнения слушателей
    • Особенности работы с Event Emitter
  • + 4. Node.js: Работа со стримами

    • Стримы наше всё
    • Streams 101
    • Имплементация Readable и Writable стримов
    • Duplex и Transform стримы
  • + 5. Node.js: Основные встроенные модули Node.js

    • Работа с модулем OS
    • Path: модуль для работы с директориями и путями
    • Process: контроль процесса Node.js
    • Решение задач криптографии с модулем Crypto
  • + 6. Node.js: Работа с файловой системой

    • Получить информацию о файле с fs.Stats
    • Read и Write операции с fs.ReadStream и fs.WriteStream классами
    • Базовые операции с файлами
    • Базовые операции с директориями
    • Постоянный мониторинг с классом fs.FSWatcher
  • + 7. Node.js: Сети в Node.js

    • TCP сеть с модулем net
    • Разница между TCP Socket и WebSocket
    • Работа с множеством TCP сокетов
    • Модуль DNS
    • UDP Datagram сокеты
  • + 8. Node.js: Тестирование, дебаг и логирование

    • Работа с дебаггером
    • Замена console.log пакетом debug
    • Дебаг Node.js приложения при помощи ndb пакета и Chrome DevTools
    • Конифгурация Visual Studio Code для дебага
    • Конифгурация WebStorm для дебага
    • Тестирование производительности при помощи специального инструмента MemoryUsage
    • Тестирование приложения с Jest
    • Что такое логирование приложения?
    • Какие настоящие причины для настройки приложения в логировании?
    • Что нужно логировать?
    • Начало работы с Winston
    • Агрегация логов
    • Подключение Winston к сервису Loggly
  • + 9. Express: REST & маршруты

    • Введение в RESTful API
    • REST API ограничения
    • Лучшие практики при разработке RESTful API's
    • Методы маршрутов
    • Эндпоинты маршрутов
    • Параметры маршрутов
    • Обработчики маршрутов
    • Хедеры Request и Response объектов
    • Методы Request и Response объектов
  • + 10. Express: Middleware

    • Middleware уровня приложения
    • Middleware уровня маршрутов
    • Middleware для обработки ошибок
    • Встроенные middleware
    • Middleware сторонних разработчиков
    • Пользовательские middleware
  • + 11. Express: Обработка ошибок, дебаг и PM2

    • Перехват ошибок в приложении
    • Обработчик ошибок по умолчанию
    • Пользовательский обработчик ошибок
    • Режим debug в Express приложении
    • Продвинутый менеджер процессов PM2
    • Zero downtime при работе с PM2
    • Работа с множеством процессов в PM2
    • Деплой приложения при помощи PM2
    • Пользователськие метрики в PM2
  • + 12. Express: Аутентификация

    • JSON веб токены — JWT
    • Использование JWT в Express приложении
    • Middleware для аутентификации
    • Рабта с Passport.js
    • Рабта с Cookies
    • Рабта с Sessions
  • + 13. Express: Лучшие практики и рекомендации: Безопасность

    • Версии Express которые имеют уязвимости и как это проверить
    • Использование TLS в Express приложении
    • Пакет Helmet
    • Работа с CORS
    • Работа с CSRF
    • Безопасное использование cookies
    • Обеспечение безопасности для зависимостей проекта
    • Проверка пакетов на известные уязвимости
    • Дополнительные рекомендации
  • + 14. Express: Тестирование Express приложения

    • Работа с Jest
    • Создание заглушек Node.js модулей с пакетом mock-require
    • Тестирование API с пакетом supertest
    • Тестирование внешних API запросов с пакетом nock
  • + 15. MongoDB: Оболочка

    • Введение в MongoDB
    • Первый запуск
    • Опции командной строки
    • База данных и неймспейсы
    • Роль оболочки в экосистеме
    • Режимы оболочки
    • Синтаксис вызова оболочки
    • Испоьзование Eval
    • Важные скрипты
    • Выполнение скриптов перед входом в оболочку
    • Многострочное редактирование
    • Интеграция внешних редакторов
    • Загрузка скриптов извне
    • Использование RC файла
    • Основные советы по безопасности
    • Альтернативы дефолтной оболочке
  • + 16. MongoDB: Управление данными

    • Хранилище MongoDB
    • BSON
    • Сохранение документов
    • Коллекции
    • Идентификатор документа — _id
    • ObjectId
    • Вставка данных
    • Вставка данных с указанием _id
    • Сложные докмунты в MongoDB
    • Тип данны — массив
    • Почему метод save опасен
    • Обновлене документов
    • Оператор $set
    • Оператор $unset
    • Оператор $rename
    • Оператор $push
    • Оператор $pull
    • Оператор $pop
  • + 17. MongoDB: Поиск документов

    • find()
    • findOne()
    • sort()
    • limit()
    • skip()
    • Обращение к вложенным полям документа через точку
    • Под-документы
    • Наполнение документов из разных коллекций
    • Сравнение документов
    • Оператор $and
    • Оператор $not
    • Оператор $in
    • Оператор $nin
    • null и оператор $exists
    • Курсор
  • + 18. MongoDB: Индексирование

    • Почему Scan это плохо
    • Индексы в теории
    • Сортировка использует индексы
    • Создание индекса
    • Коллекция system.indexes
    • Метод explain()
    • Свойство nscanned
    • Сложные запросы
    • Количество просканированных и возвращённых документов
    • dropIndex()
    • Вложенные поля
    • Индексация массивов в MongoDB
    • Сортировка
    • Индекс уникальности
    • Частичный индекс — экономим место
    • Составные индексы
    • Направление сортировки
    • Как работает covering индекс
    • Мертвый вес индексов
    • Создание индексов в фоне
    • Имя индекса
  • + 19. Mongoose: Создание схемы и модели

    • Подключение Mongoose к MongoDB
    • Сравнение — RDBMS схем
    • Простая схема
    • Разрешенные типы данных
    • Сложные схемы
    • Наша первая модель
    • Документы
    • Под-документы
    • Сохранение документов и другие действия
  • + 20. Mongoose: Опции

    • autoIndex
    • bufferCommands
    • capped
    • collection
    • minimize
    • read
    • writeConcern
    • safe
    • shardKey
    • strict
    • strictQuery
    • toJSON
    • toObject
    • typeKey
    • validateBeforeSave
    • versionKey
    • collation
    • skipVersioning
    • timestamps
    • selectPopulatedPaths
    • storeSubdocValidationError
  • + 21. Mongoose: Запросы

    • Выборка документов
    • Сортировка документов
    • Лимитирование количества выбранных документов
    • Виртуальные поля
    • Документы и их хелпер методы
    • Преобразование Mongoose документов в обычные объекты
  • + 22. Mongoose: Транзакции

    • Наполнение документов: refs
    • Установка полей для наполнения
    • Наполнение документов: фильтрация полей для наполнения
    • Множественное наполнение полей документа
    • Наполнение документов: дополнительные условия
    • Наполнение документов: Refs к дочерним документам
    • Наполнение существующих документов
    • Наполнение множества существующих документов
    • Наполнение на разных уровнях документа
    • Наполнения документов из разных баз данных
    • Наполнение документов: динамические ссылки с refPath
    • Наполнение виртуальных полей
    • Наполнение в middleware
    • Обзор транзакций
    • Базовые транзакции
    • Транзакции при работе с агрегацией данных
  • + 23. Mongoose: Валидация

    • Встроенные валидаторы
    • Middleware для валидации
    • Пользовательские валидаторы
    • Обработка ошибок валидации
  • + 24. Mongoose: Планины и дискриминаторы

    • Обзор существующих плагинов
    • Пользовательские плагины
    • Discriminators: Обзор наследования схем
    • Discriminators: Расширение базовой схемы
    • Discriminators: Особенности пользовательского интерфейса

весь backendOnline

Куратор программы

Андрей Присняк

Senior Fullstack Developer и преподаватель в компании Lectrum. 7+ лет опыта работы с крупными международными outsource и outstaff компаниями. Менторская поддержка студентов 5+ лет.

Автор курсов Backend, Docker и Redis. Соавтор курсов JavaScript, React & Redux.

профессионалы

Выберите пакет участия

Я сам

  • 24 видеоурока c теорией и практикой (48+ часов полезного контента)
  • Персональный проект с фидбеком
  • Исходные коды и файлы презентаций
  • Список дополнительных материалов для углублённого изучения
  • Финальное тестирование
  • Доступ к закрытому чату бекенд-разработчиков
  • ❌ Персональный ментор (5 часов Zoom-сессий)
  • ❌ Домашние задания с проверой и фидбеками
  • ❌ Исходный код референтного приложения
  • ❌ Онлайн-сертификат

С наставником

  • 24 видеоурока c теорией и практикой (48+ часов полезного контента)
  • Персональный проект с фидбеком
  • Исходные коды и файлы презентаций
  • Список дополнительных материалов для углублённого изучения
  • Финальное тестирование
  • Доступ к закрытому чату бекенд-разработчиков
  • Персональный ментор (5 часов Zoom-сессий)
  • Домашние задания с проверой и фидбеками
  • Исходный код референтного приложения
  • Онлайн-сертификат
Спасибо за участие на воркшопе!  В течение 0 часов несколько секунд для вас действует специальное предложение.
мы открыты вам

Оплата

Участие в пакете «Я сам»
Участие в пакете «С наставником»
Участие в пакете Premium

Ответы на вопросы

Когда я могу начать заниматься?
Мы открываем доступ к видеоурокам, конспекту, презентациям и чату курса с менторами и одногруппниками сразу после оплаты.
Если я оплачу сейчас, то смогу начать позже?
Сразу после оплаты мы предоставим вам доступ к материалам курса. Чтобы поставить обучение на паузу, вам достаточно будет написать нам на электропочту и согласовать дату начала занятий.
Какая информация будет содержаться в сертификате?
Онлайн-сертификат будет с информацией о прослушанном курсе, без оценки.
Я очень хорошо знаю изучаемые технологии и хочу быть у вас ментором.
Обычно, после тестирования оказывается, что вы знаете изучаемые технологии не так уж и хорошо. Это одна из причин, почему мы сделали этот курс. Если чувствуете в себе силы, позвоните нам и мы протестируем вас. Для менторства требуется не только идеальное знание Backend, но и миллион других навыков для профессионального обучения людей.
Могу ли я перейти на более продвинутый пакет, если уже оплатил курс?
Да, для этого нужно обратиться к нам на электропочту и мы пришлём вам счет на доплату.
Чем вы лучше других обучающих компаний?
Во-первых, у нас большая экспертиза в образовании, во-вторых, мы очень фанатично относимся к качеству курса и менторской поддержки, а в третьих, мы не просто учим, а ежедневно пишем на том стеке, которому обучаем. Мы практики, теоретики, а еще идеалисты.
Я могу вернуть деньги за курс?
Да, возврат средств возможен, если вам еще не был предоставлен доступ к материалам курса. После предоставления доступа к материалам, возврат невозможен. Для возврата средств необходимо отправить запрос на нашу электропочту.
У меня остались вопросы/Я всё еще сомневаюсь.
Оставьте заявку на получение бесплатной консультации и мы с удовольствием вас проконсультируем, посоветуем или просто пообщаемся.
мы открыты вам