Будете учить только то, что пригодится на практике
Программа рассчитана на 5.5 месяцев, учёбе нужно будет посвящать 20-25 часов в неделю
~30 минутБесплатно
Бесплатная вводная часть
Вы потренируетесь решать базовые задачи, познакомитесь с форматом и структурой программы. Узнаете, какие вас ожидают проекты на платном обучении. Спойлер: самостоятельный и командный проект, код которых будет проверять команда профессиональных ревьюеров.
4 спринта・10 недель
Самостоятельный проект «Веб-мессенджер»
В течение 1 модуля вы выполните полноценное SPA: веб-мессенджер. Никаких фреймворков и библиотек по клиентской части, только JavaScript, TypeScript. Ещё до знакомства с React и другими библиотеками вы начнёте понимать, как они устроены. В работе над первым проектом реализуете часть функций таких библиотек, как React и React Router.
Ключевые технологии и инструменты
HTTP, REST, TypeScript, Node.js, Express, CSS, API XML, Fetch API, ESLint, Netlify, SPA, WebSockets, gRPC, DoS, DDoS, SSRF, SOP, CORS, CSRF, XSS, CSP, CDN, TDD/BDD.
Спринты 1 и 2
Вы погрузитесь в работу браузера: компонентный подход, отображение. HTTP и REST больше не будут загадкой. Изучите алгоритмы работы популярных шаблонизаторов. С помощью знаний о компонентах раскроете всю магию фреймворков. Начнёте изучать архитектуру, паттерны разработки, дизайн CSS и его методологии. Здесь начнётся ваша дружба с TypeScript.
Спринты 3 и 4
Здесь вы познакомитесь со смежными областями: тестированием и безопасностью. Узнаете, как централизовать логику переходов по страницам и сделать большой шаг к полноценному SPA. Вы научитесь применять протокол связи WebSocket. К окончанию этого модуля завершите свой первый проект.
В течение 1 модуля вы выполните полноценное SPA: веб-месс
4 спринта・1 неделя
Каникулы
Возможность выдохнуть или повторить пройденное. Также вас ждёт небольшая домашка, главная задача которой — лучше познакомиться с одногруппниками и подготовиться к совместному проекту.
Ключевые технологии и инструменты
HTTP, REST, TypeScript, Node.js, Express, CSS, API XML, Fetch API, ESLint, Netlify, SPA, WebSockets, gRPC, DoS, DDoS, SSRF, SOP, CORS, CSRF, XSS, CSP, CDN, TDD/BDD.
Спринты 1 и 2
Вы погрузитесь в работу браузера: компонентный подход, отображение. HTTP и REST больше не будут загадкой. Изучите алгоритмы работы популярных шаблонизаторов. С помощью знаний о компонентах раскроете всю магию фреймворков. Начнёте изучать архитектуру, паттерны разработки, дизайн CSS и его методологии. Здесь начнётся ваша дружба с TypeScript.
Спринты 3 и 4
Здесь вы познакомитесь со смежными областями: тестированием и безопасностью. Узнаете, как централизовать логику переходов по страницам и сделать большой шаг к полноценному SPA. Вы научитесь применять протокол связи WebSocket. К окончанию этого модуля завершите свой первый проект.
В течение 1 модуля вы выполните полноценное SPA: веб-мессенджер
5 спринтов・12 недель
Управление проектом на удалённом сервере
После изучения в 1 модуле нативных возможностей JavaScript вы перейдёте к высокоуровневым инструментам. Во 2 модуле ваша команда разработает с их помощью полноценную браузерную игру, похожую на Flappy Bird, Doom 2D, покер, монополию и подобные карточные игры.
Ключевые технологии и инструменты
React, Canvas API, VDOM, Shadow DOM, JSX, React Router, React + Canvas, SQL, MobX, Redux, Fullscreen API, Canvas, Performance, GeoAPI, Notifications API, Media API, FileSystem API, Gamepad API, Pointer Lock API, Web workers API, Ambient Light, WebGL, WebVR API, биллинг, Yandex Pay, DaData, CRUD.
Спринты 5 и 6
Вы начнёте работать с React и его окружением. Снова встретитесь с TypeScript. Познакомитесь с Canvas API. Узнаете, как хранить данные и тестировать код с помощью Jest. Разберётесь с особенностями безопасности в React.
Спринты 7 и 8
Вы настроите в игре Server Side Rendering, разберётесь, в чём его отличие от Client Side Rendering. Научитесь контролировать память. Кроме того, вы погрузитесь в работу серверной части приложения, допишете часть «ручек» с помощью своего дополнительного API.
Спринт 9
Последний курс, завершение работы над проектами и демонстрация результатов. В этом спринте вы закончите последние правки, погрузитесь в nginx и настроите CI/CD, задеплоите проект. Программа обучения завершится финальным мероприятием, где вы покажете функциональность игры, поделитесь выбранными решениям и расскажете о процессах в вашей команде.
Вместе с командой разработаете браузерную игру, похожую на Flappy Bird, Doom 2D, покер, монополию и другие подобные карточные игры
8 спринтов・12 недель
Алгоритмы и структуры данных
Вам предстоит изучать этот блок на протяжении всей программы. Вы познакомитесь с распространёнными алгоритмами и структурами данных, реализуете их на JavaScript и научитесь оценивать сложность алгоритмов.
Ключевые технологии и инструменты
BFS, DFS, BST, DOM, алгоритм Хаффмана, LIFO.
Спринт 1
Введение в алгоритмы, основные функции сложности, введение в структуры данных. Оценка сложности алгоритма: асимптотический анализ. Основные понятия: передача данных и рекурсия.
Спринт 2
Пузырьковая сортировка, анализ сложности алгоритма, сортировка вставками, связный список.
Спринт 3
Стек и очередь, быстрая сортировка, сортировка слиянием. Алгоритмы сортировки: повторение.
Спринт 4
Хеш-таблицы, методы разрешения коллизий и операции с хеш-таблицей.
Спринт 5
Деревья, операции с бинарным деревом поиска и бинарной кучей, графы. Структуры данных: повторение.
Спринт 6
Сжатие данных. Алгоритм Хаффмана.
Спринт 7
Алгоритмы поиска. Бинарный поиск. Поиск в ширину (breadth-first search, BFS). Поиск в глубину (depth-first search, DFS).
Спринт 7
Задачи с собеседований: вертикальная ось симметрии, подотрезок с суммой X.
Здесь мы собрали не оригинальные, но полезные задачи на знание алгоритмов — именно такие задачи часто встречаются на собеседованиях
С наставнико・Каждый спринт
Вебинары для разбора сложных тем, сессии Q&A
Эта часть курса для тех, кому нужна помощь с поиском работы. Вы изучите стратегии поиска работы и узнаете больше о тонкостях выбора компании-работодателя, подготовите портфолио, напишете резюме и сопроводительное письмо.