Онлайн‑курс Node.js. Разработка серверов приложений и API в асинхронном формате

Начните обучение, когда удобно вам

Курс разработан для тех, кто хочет сменить профессию и стать высокооплачиваемым профессионалом. Он подойдёт для работающих людей, у которых мало времени.

Запишитесь на консультацию

Оставьте свои контакты, мы свяжемся с вами и ответим на все вопросы.

*Обязательное поле
Записаться на консультацию

Почему курс профессиональный

На этом курсе вы научитесь делать настоящие проекты, такие же по уровню сложности, как в индустрии. И будете делать их правильно, чтобы после обучения выдавать результат высокого уровня, за который компании готовы платить.

Чтобы добиться такого качества обучения, мы используем профессиональную триаду «критерии-проекты-наставники»:

НаставникиПроверкой ваших проектов на соответствие критериям качества занимаются наставники, которые являются профессиональными разработчиками.

Критерии качестваПрофессиональные критерии качества мы разрабатываем совместно с компаниями и профессиональным сообществом.

Настоящие проектыВ течение обучения вы выполняете настоящие проекты.

Настоящие проекты

В течение обучения вы выполняете настоящие проекты.

Как проходит
обучение на курсе

Что вас ждёт на обучении

Подходит ли вам этот курс

Учим делать правильно

Ориентировочная зарплата выпускника

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

100 000

Медианное значение зарплаты фулстек-разработчика по исследованию компании «Мой круг» в Москве во втором полугодии 2018 года.

Записаться на курс

Консультация по телефону 8 800 555-86-28.

Наставники — это опытные профессионалы, работающие в индустрии

Профессиональный наставник

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

Чтобы отбирать таких специалистов, мы построили уникальную систему привлечения и фильтрации.

Вместе с наставником вы будете разрабатывать проект в экосистеме, привычной профессионалам. Рабочий процесс мало отличается от реальной разработки в больших компаниях.

Процесс отбора наставника

  1. Формальные требования

    Проверяем, кем и где кандидат в наставники работал, какой у него опыт, а также смотрим на его код.

  2. Собеседование

    Проводим часовое собеседование, на котором проверяем знание предметной области, а также умение понятно объяснять и другие человеческие качества.

  3. Регулярная обратная связь

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

Процесс работы с наставником

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

Привет. У меня последний блок с товарами почему-то выравнивается неправильно, всё перепробовала. Взглянешь?
Давай сегодня созвонимся и разберёмся вместе?
Голосовая консультация с наставником

Детальная обратная связь

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

Голосовые консультации

А когда ревью кода недостаточно, наставники используют голосовые консультации, зачастую с демонстрацией экрана. На таких консультациях разбирают сложные вопросы или демонстрируют нетривиальные приёмы. Во время курса предусмотрено 5 часов голосовых консультаций.

Учебный проект

В каждом разделе вы будете выполнять задания по учебному проекту. Над учебным проектом вы будете работать самостоятельно для закрепления пройденного материала.

Проект уже свёрстан. В течение курса вы сфокусируетесь на главном: проектировании и программировании.

Учебный проект «Куплю. Продам»

«Куплю. Продам»

Интернет-сервис, упрощающий продажу или покупку любых вещей. Всё, что требуется для покупки: найти подходящее объявление и связаться с продавцом по email. Продать ненужные вещи ничуть не сложней: зарегистрируйтесь и заполните форму нового объявления.

Личный проект

В каждом разделе вы будете выполнять задания по личному проекту. Над ним вы будете работать и самостоятельно, и в паре с наставником.

Проект уже свёрстан. В течение курса вы сфокусируетесь на главном: проектировании и программировании.

Личный проект «Типотека»

«Типотека»

Приложение для быстрого создания персональных блогов. Несколько простых шагов и вы автор современной площадки для публикации заметок. «Типотека» — это не только создание контента. Любой желающий читатель может зарегистрироваться и оставить комментарии. Создавайте заметки, общайтесь с читателями, модерируйте контент вместе с «Типотека».

Отзывы компаний

Мы давно зарекомендовали себя в профессиональном сообществе. Нас и наших выпускников знают не только разработчики, но и крупные компании. Вот несколько отзывов от компаний о наших курсах и выпускниках.

В Авито нет верстальщиков, только фронтенд-разработчики разных уровней. Чтобы попасть к нам на работу младшим разработчиком, человек должен обладать определёнными навыками. Это уверенное владение базовыми технологиями: HTML, CSS и JavaScript, понимание того, как работает браузер, знание, как делать проекты кроссбраузерными, как работает API, DOM и другие важные основы. Кроме этого мы ценим ответственность, умение играть в команде, желание развиваться и инициативность.

Мне, как наставнику на курсах и бывшей студентке, известны стандарты качества Академии и то, как строится работа. Всё максимально приближено к реальным условиям — используется система контроля версий Git, есть разбивка проекта на этапы (своеобразные итерации), обязательное ревью кода наставниками и неумолимый дедлайн. Большое внимание уделяется доступности интерфейсов, а это полезно для всей отрасли.

В целом программа обучения в Академии построена грамотно для старта. Она помогает подготовить универсального бойца, который сможет качественно заниматься разработкой и в студии, и в крупной продуктовой компании. Если человек защитился на 100%, то это показатель, что у него всё в порядке с обучаемостью, мотивированностью и личными качествами, которые понадобятся в будущем на работе. А дальше уже всё зависит от активности и способности доказать свои умения делом.

Яна Крикливая разработчик клиентской части, Авито

Авито

Авито Интернет-сервис для размещения объявлений о товарах, услугах, вакансиях и резюме на рынке труда.

Что касается вёрстки и создания веб-страниц, мы в команде трепетно относимся к семантической разметке и её пониманию, умению писать на чистом CSS и системному мышлению у разработчика. Страницы должны быть не только красивыми для пользователя, но и быстро загружаться, быть структурированными и, конечно, удобными для работы в команде. При нашем объёме проектов уделять этому внимание очень важно.

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

В этом смысле, подход Академии к обучению кажется адекватным: кодревью от опытного разработчика хорошо подготавливает к работе. Особенно ценно, что вся работа над проектами сразу идёт через Git — у нас также вся работа в компании проходит через обязательные ревью.

Сейчас в команде работает выпускник Академии Павел и я им доволен. Необходимые базовые навыки, понимание семантики, работа с чистым CSS — всё это на хорошем уровне, а что касается JavaScript — он быстро ориентируется, если делал что-то похожее — вспоминает. Он был сразу готов взять и начать работать.

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

Мне, как руководителю не важны сертификаты и дипломы, я смотрю на код, который пишет человек, что им движет работать в этой сфере, почему он выбрал именно фронтенд. Поэтому если я вижу, что человек самостоятельно развивается, проходит курсы и целеустремлён — для меня это хороший показатель его заинтересованности.

Сергей Чикирев Wrike Website Team Lead

Wrike

Wrike Популярный сервис для управления проектами и совместной работы.

Мы в Ostrovok.ru постоянно ищем талантливых ребят: наш продукт быстро развивается и лишние фронтендерские руки (желательно «золотые») нужны всегда. Хорошего специалиста найти не так просто, поэтому мы уже несколько раз обращались к Академии, когда подбирали джуниоров.

Ребята приходили с хорошей базой и горящими глазами, быстро вливались в процессы и команду. Сейчас в Ostrovok.ru работают три выпускника Академии — все на позиции джунов и отлично справляются.

Спасибо Академии за хорошо подготовленных специалистов.

Ostrovok.ru

Ostrovok.ru Интернет-сервис по бронированию более 900 000 отелей.

Мы регулярно отправляем своих сотрудников на тренинги, семинары, интенсивы и всячески открыты к образовательным программам, так мы и познакомились с HTML Academy.

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

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

Валерия Шемякина Менеджер по обучению Ozon.

Ozon

Ozon Крупнейший российский интернет-магазин.

HTML Академия — лучшее, что происходило с ИТ-образованием в России.

Если вы боитесь, что не разберётесь или «программирование — это не для вас», то HTML Академия подойдёт вам идеально. Всегда будет у кого спросить и кто вас поддержит.

Они много работали с сообществом, чтобы понять какие именно знания нужны на работе. Круто насколько всё приближено к реальной разработке.

Андрей Ситник

Андрей Ситник Автор множества проектов с открытым исходным кодом. Создатель PostCSS, Autoprefixer и Logux_io.

К нам на вакансию фронтенд-разработчика пришёл выпускник Академии. Знания, полученные на интенсивах по JavaScript и вёрстке помогают ему решать задачи с минимальными трудозатратами.

В целом, именно обучение на курсах Академии дало нашему сотруднику возможность развиваться как хорошему разработчику и профессионально подходить к решению проблем в работе.

ГиперМетод

ГиперМетод Ведущий разработчик решений для организации дистанционного обучения, управления знаниями и учебным процессом, развития и оценки персонала в компаниях и учебных заведениях.

Огромное спасибо HTML Academy за крутых выпускников! Три человека брали к себе на стажировку, в последующем два из них остались у нас на постоянной работе. Классные ребята с хорошим бэкграундом! Академия обучает сильных специалистов!

NORDMOUNT

NORDMOUNT Внедрение, кастомизация и интеграция Salesforce на рынках США и западной Европы.

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

Раздел 1

Знакомство с платформой

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

Основы Node.js.

Модули.

  • Введение в модули.
  • Встроенные модули.
  • Менеджер пакетов npm.

Command Line Interface.

Отладка приложения.

  • Отладка в редакторе.
  • Отладка в консоли.
Раздел 2

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

Продолжим знакомиться с платформой Node.js. Разберём на практике как работает Event Loop и асинхронность. Узнаем как правильно писать и управлять асинхронным кодом. Познакомимся с протоколом HTTP и напишем первый сервер.

Асинхронное программирование.

  • Колбэк-функции.
  • Промисы.
  • Async и Await.

Event Loop.

  • Стэк вызовов.
  • Порядок выполнения асинхронного кода.
  • setImmediate, process.nextTick, setTimeout.

Протокол HTTP.

  • Знакомство с протоколом.
  • Встроенный модуль http.
  • Разработка первого сервера.
Раздел 3

Express.js

В этом разделе мы начнём проектировать API. Обсудим теоретическую часть проектирования API: что следует учитывать во время проектирования, примеры плохого и хорошего API, версионирование API. Затем обсудим как Node.js может выступать в роли веб-сервера и обрабатывать запросы от клиентов. Подключим фреймворк Express.js и узнаем как он может упростить задачу разработки API.

Обмен данными с клиентом.

Express.js.

  • Создание сервера.
  • Обработка запросов.
  • Маршрутизация.
  • Middleware.
  • Обработка форм.

Шаблонизация.

  • Pug.
  • Server Side Rendering.

REST API.

  • Методы протокола HTTP.
  • Проектирование API.
Раздел 4

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

В этом разделе мы поговорим о тестировании приложений на Node.js. Узнаем, что следует тестировать и какие есть особенности тестирования приложений, созданных на платформе Node.js. Подготовим окружение для тестирования и попрактикуемся в написании тестов.

Логирование.

  • Какие задачи решает логирование.
  • Pino.

Автоматизированное тестирование.

  • Виды автотестов.
  • Unit-тесты.
  • Тестирование REST.
  • Jest.

Переменные окружения.

Модуль debug.

Раздел 5

Введение в базы данных. PostgreSQL

Любому приложению требуется где-то хранить данные. Они могут храниться в разных источниках: файлы, базы данных и т.д. Базы данных применяются особенно часто. В этом разделе разберём какие бывают базы данных, чем они отличаются. Научимся проектировать структуру базы данных и познакомимся с языком запросов (SQL).

Базы данных.

  • Хранение данных.
  • Проектирование схемы базы данных.

PostgreSQL.

  • Установка.
  • pgAdmin.
  • psql.

SQL.

  • Выборка данных (SELECT).
  • Изменение данных (UPDATE).
  • Удаление данных (DELETE).
  • Соединение запросов (LEFT JOIN и RIGHT JOIN).
  • Объединение результатов запросов (UNION и UNION ALL).
  • Ограничение выборки (WHERE).

Практика написания запросов.

Раздел 6

PostgreSQL и Node.js

Научимся взаимодействовать с PostgreSQL из Node.js несколькими способами. Начнём с установки соединения с СУБД и отправки запросов на получение/обновление данных из Node.js. Затем обсудим вопросы безопасности (SQL-Injection). А после этого подключим к проекту ORM и посмотрим на работу с базой данных с совершенно новой стороны.

Node.js и PostgreSQL.

  • pg.
  • Пул-соединений.
  • Выполнение запросов.

Безопасность: SQL-Injection.

ORM.

  • Введение в ORM.
  • Sequelize.
  • CRUD.
  • Настройка связей.
  • Hooks.
  • Выполнение SQL-запросов.
Раздел 7

Аутентификация и авторизация

Разберём термины «аутентификация» и «авторизация». Узнаем чем они отличаются и на практике рассмотрим реализацию аутентификации в приложении. Научимся валидировать данные, полученные от клиента. Познакомимся с механизмом сессий и JWT (JSON Web Token). Обсудим вопросы безопасности: XSS, CSRF.

Cookies.

Безопасность.

  • CORS.
  • XSS.
  • CSRF.
  • Валидация.

Аутентификация.

  • Сессии.
  • JWT.
Раздел 8

Реалтайм

Посмотрим на сервер с другой стороны. Узнаем что из себя представляют приложения реального времени и познакомимся с протоколом WebSocket. Добавим в приложение реалтайма и познакомимся с библиотекой Socket.IO.

Запуск нескольких Node.js приложений.

EventEmitter.

Реалтайм.

  • Протокол WebSocket.
  • Библиотека Socket.IO.
Раздел 9

Деплой. Доставка и запуск приложения на сервере

Разберём вопросы, связанные с доставкой приложения на сервер и запуска в боевой среде. Рассмотрим настройку менеджера процессов, обратного прокси-сервера (Nginx) и мониторинг ошибок. Научимся доставлять приложение на сервер (Heroku, VDS).

Деплой и хостинг.

Менеджер процессов.

Деплой на Heroku.

Деплой на VDS.

  • Настройка сервера.
  • Доставка приложения.
  • Dokku.

Альтернативные фреймворки для Node.js.

Записаться на курс

Консультация по телефону 8 800 555-86-28.

Сертификат

После прохождения курса вы получите электронный сертификат *

* Не является документом об образовании (об обучении). Курс не является услугой.

Сертификат онлайн-курса «Node.js. Разработка серверов приложений и API»

Статистика Академии

  • 8лет на рынке обучения
  • 100онлайн-курсов проведено
  • 11 171выпускник защитил проекты

Зарегистрироваться и оплатить
курс «Node.js. Разработка серверов приложений и API»

$1 170

Нажимая «Оплатить», вы даёте своё согласие на обработку персональных данных в соответствии с «Политикой конфиденциальности» и соглашаетесь с «Условиями предоставления услуг».

Заполните, пожалуйста, ваши имя и электронную почту для регистрации.

После оплаты курса вам придёт письмо с инструкциями и ссылкой для доступа в интерфейс участника.

Запишитесь на консультацию

Мы любим отвечать на вопросы. Поэтому ждём ваших контактов, чтобы поскорее на всё ответить.


*Обязательное поле