Курс переработан

Специализация

Fullstack developer

Освойте профессию Fullstack-разработчика на JavaScript
за 14 месяцев

28 марта

Basic

14 месяцев

Онлайн

Для кого?

  • Кто хочет с нуля освоить востребованную профессию Fullstack-разработчик до компетенций, соответствующих Middle+ уровню.
  • Практикующих разработчиков и кто хочет переквалифицироваться в Fullstack-разработчика
  • Кто не имеет навык программирования и хочет начать заниматься Fullstack-разработкой

Кто такой Fullstack-разработчик?

Fullstack-разработчик – это универсальный и востребованный сотрудник, который принимает участие во всех этапах разработки веб-приложений: от верстки дизайна веб-приложения до создания серверной и ее настройки.

Подходит ли программа именно вам?

Менеджер поможет разобраться!

Какой результат вы получите?

Обучение состоит из 3-х ступеней. Изучите постановку, документирование требований, сопровождение разработки, проектирование разных систем

Начало обучения
28 сентября
  • Для тех кто хочет с нуля освоить профессию Fullstack-разработчик
Ступень 1
Вт 20:00, Чт 20:00
HTML/CSS
  • Научитесь интерпретировать макеты дизайнеров
  • Создавать семантическую разметку вебсайтов
  • Создавать макеты любой сложности без гор библиотек и плагинов
  • Освоите основной стек технологий и приемы в верстке: box model, positioning, float, flexbox, grid, media quesries, fallbacks, CSS resets, autoprefixer, postcss
  • Научитесь работать с фреймворками bootstrap и tailwind
Ступень 2
Пн 20:00 Ср 20:00
JavaScript Developer. Basic
  • Получите навыки фронтенд-разработки, которые выделят вас среди начинающих разработчиков. Освоите технологии: React, TypeScript, Babel, Webpack, Node.js.
  • Научитесь понимать код и принципы разработки, сможете работать без шаблонов и уверенно действовать в рамках своих компетенций. С первого же месяца будете заниматься в условиях, приближенных к реальной разработке: научитесь использовать Git, покрывать код тестами, познакомитесь с CI-процессами.
Ступень 3
Пн 20:00 Ср 20:00
JavaScript Developer. Professional
  • Научитесь решать на JavaScript различные задачи фронтенда и бэкенда. Изучите основные возможности JavaScript — замыкания, особенности ООП и SOLID в JS, функционального и реактивного программирования, Promises и другие фичи ES6, паттерна Event Loop.
  • Разберете DOM API, Ajax и события в рамках разработки в браузере. Научитесь писать код на диалектах JavaScript таких, как TypeScript и JSX.

Авторская программа


Актуальные навыки, которые помогут начать и развиваться в профессии

3 проектные работы


Пополните портфолио 3 разными по задачам проектами и сможете уверенно чувствовать себя на собеседованиях

Помощь с трудоустройством


Комплексная система, которая поможет получить выгодные офферы в перспективных проектах

Трудоустройство

Мы даём качественные знания, которые помогут в получении офферов
в перспективных проектах
  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
  • Карьерные мероприятия в сообществе с публичным разбором резюме и прохождением собеседования

Fullstack Developer

Перспективы направления
Средний уровень зарплат в Москве:
70 000Junior+ специалист
200 000Middle+ специалист
300 000Senior специалист
1224
актуальные вакансии
Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю
Доступ к записям и материалам остается навсегда

Практика


Домашние задания + 3 проектные работы, которые усилят ваше портфолио

Активное комьюнити


Общайтесь с преподавателями голосом на вебинарах и в группе телеграм

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

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

 Вы выполняете домашнее задание

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

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

С ментором также можно общаться по домашнему заданию в чате. Он даст вам обратную связь по итогам проверки и направит вас в нужное русло 

Программа

1 ступень

Введение в Web

В это модуле познакомимся с базой верстки.

Тема 1: Введение в Web

Тема 2: Version Control

Тема 3: Почему html - это не язык программирования

Тема 4: CSS: история стилей

Тема 5: Типографика

Тема 6: Box model в деталях

Тема 7: Позиционирование элементов в деталях

Тема 8: Консультация по ДЗ

Тема 9: Selector priority

Layouts (макеты)

Вы научитесь создавать макеты под любой дизайн, пройдетесь по разным типажам разметки - от table, float, flex и grid, посмотрите на нюансы работы с дизайном.

Тема 1: Layout: введение, основы

Тема 2: Flexbox layout

Тема 3: Grid layout

Тема 4: Workshop по сеткам

Тема 5: Консультация по ДЗ

Тема 6: Поддержка браузеров, новые технологии и fallbacks

Адаптивный веб-дизайн

Вы научитесь работать с мобильной версткой - все, что вам надо знать о мобильном дизайне, узнаете, как подходить к верстке с mobile first approach.

Тема 1: Введение в media queries

Тема 2: Mobile-first vs desktop-first

Тема 3: Особенности мобильной верстки

Тема 4: Анимации CSS

Coding style

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

Тема 1: Номенклатура

Тема 2: Bootstrap

Тема 3: Tailwind

Тема 4: Консультация по ДЗ

JavaScript Basic

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

Тема 1: Введение в JavaScript

Тема 2: Настройка окружения для верстки

Тема 3: Установка Webpack

Тема 4: Автоматизация процессов

Тема 5: Оптимизация ассетов

Тема 6: Деплой страницы

Тема 7: Консультация по ДЗ и проектной работе

Тема 8: Аналитика и поддержка

Проектная работа

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

Тема 1: Выбор темы и организация проектной работы

Тема 2: Защита проектных работ

2 ступень

Базовый JavaScript. Работа с GIT и настройка окружения

Модуль посвящен базовым конструкциям языка javascript (таким как функции, циклы, ветвления), базовым процессам разработки (система контроля версий, код ревью, тестирование и деплой кода) и настройке среды разработки (сборщики, линтеры, скрипты автоматизации).

Тема 1: Введение в курс + основы JS и практика

Тема 2: Базовый синтаксис JavaScript: основы, базовые операции, ветвления и базовая алгоритмизация

Тема 3: Объектная модель в Javascript

Тема 4: Контекст при работе с функциями

Тема 5: Прототипное наследование и функции-конструкторы

Тема 6: Базовое использование API и JavaScript. Как работать с DOM и другими доступными API (работа с сервером, с хранилищем и т.п)

Тема 7: Тестирование кода как часть процесса разработки

Тема 8: Пример применения тестирования к домашним заданиям

Тема 9: Консультация по ДЗ

Тема 10: Выбор темы и организация проектной работы

Тема 11: Использование СКВ: задачи и решения

Тема 12: Типовой порядок разработки с использованием Git

Тема 13: Код как «проект» - артефакты работы разработчика. Зависимости и утилиты в стеке JavaScript

Тема 14: Консультация. Разбор сложных моментов в выполнении домашних заданий. Пример применения TDD в практике разработки

Тема 15: Итоги по синтаксису JS. Что делать, если что-то не работает? Где искать документацию и помощь. Решение вопросов по текущим домашним заданиям

Тема 16: Работа с асинхронным кодом

Тема 17: Современный инструментарий при разработке клиентских (и не только приложений)

Создание и стилизация HTML страниц

Модуль посвящен работе с разметкой страницы (HTML) и ее стилизацией (CSS). Так же рассматриваются вспомогательные инструменты (такие как препроцессоры и шаблонизаторы) и практики по разработке интерактивных страниц (работа с виджетами, тестирование верстки и тп).

Тема 1: Структура HTML документа, семантика и основы разметки страницы

Тема 2: Консультация по ДЗ

Тема 3: Стилизация страницы, позиционирование элементов

Тема 4: Инструменты разработки. Тестирование верстки, использование медиазапросов

Тема 5: Основные подходы к позиционированию элементов. Основные проблемы и решения при работе со стилями, модульность

Применение JavaScript/Typescript для создания интерактивных страниц

Рассматривается применение Typescript для разработки сложных приложений. Разбираются вопросы работы вспомогательным кодом (утилиты и шаблонизаторы), базовые правила разработки программных интерфейсов, вопросы организации слоя представлений в приложениях на jvascript.

Тема 1: Создание подключаемых плагинов

Тема 2: Консультация по ДЗ

Тема 3: Различие между стандартами языка, инструменты транспиляции, проблемы типизации

Тема 4: Настройка окружения для современной разработки на TS, использование документации, настройка тестового окружения

Тема 5: ООП в JavaScript

Тема 6: Основы функциональной разработки

Тема 7: Разбор базовых приемов разработки на Typescript - типы, интерфейсы, перечисления и прочее

Тема 8: Расширенные возможности типизации

Тема 9: консультация по ДЗ

Тема 10: Разработка собственного API

Тема 11: Разработка шаблонизатора

Тема 12: Консультация

Структурирование программ на JavaScript

Раскрывается тема управления состоянием приложения.

Тема 1: Mediator и EventEmitter как инструмент организации кода

Тема 2: Управление состоянием приложения, разработка redux

Тема 3: Работа с асинхронными actions в redux

Тема 4: REST, RPC и сетевые запросы

Разработка одностраничных приложений

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

Тема 1: Клиентский роутинг, как строится одностраничное приложение

Тема 2: Консультация по ДЗ

Тема 3: «Особенности деплоя и сборки одностраничных приложений»

Тема 4: Использование redux для хранения состояния приложения, использование селекторов для отвязки роутов от redux

Тема 5: Консультация

Разработка с использованием React.js

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

Тема 1: Что такое React, JSX, настройка окружения

Тема 2: Умные и глупые компоненты в разрезе React

Тема 3: Жизненный цикл классовых компонентов

Тема 4: Функциональные компоненты

Тема 5: Совместное использование React и redux

Тема 6: Роутинг и ленивая загрузка страниц при работе с React

Основы разработки на Node.js

Модуль посвящен освновным вопросам разработки кода на Node.js. Раскрываются вопросы написания серверных API и консольных программ.

Тема 1: Сферы применения Node.js, отличия от разработки в браузере

Тема 2: Консультация по ДЗ

Тема 3: Создание сервера приложений с использованием Node.js

Сопровождение кода

Модуль посвящен документированию кода, работе с унаследованным кодом (когда приходится иметь дело с кодом, написанным до нас) и чек-листам при подключении на новый проект.

Тема 1: Презентация работы - что сделать, чтобы было хорошо

Тема 2: Консультация по ДЗ и проектной работе

Тема 3: Карьерное консультирование

Проектная работа

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

Тема 1: Защита проектных работ

3 ступень

JavaScript

Мы рассмотрим основные возможности современного и традиционного JavaScript, стандарт EcmaScript 6+, Templates, асинхронные паттерны Promise, Async Await, переменные, замыкания, функции, наследование и классы. Разберем особенности браузерного API и спецификаций Web Components на примере библиотеки Lit-HTML. Обсудим главные принципы и возможности Node.js, а также NPM для управления зависимостями и автоматизации задач. Мы научимся использовать Test-Driven Development при решении практических задач.

Тема 1: Введение в курс Modern JavaScript Frameworks + тест по подготовительному курсу

Тема 2: Асинхронные и ООП паттерны в JavaScript

Тема 3: Работа с браузером, DOM API

Тема 4: Введение в Node - Пакетный менеджер NPM и возможности package.json

Тема 5: Test Driven Development

Node.js

Этот модуль о серверной среде JavaScript. Мы разберем ключевые особенности Node.js - EventLoop, модули и потоки. Мы научимся строить API, используя фреймворк Express, подходы REST и GraphQL. Поговорим о WebAssembly и общих практиках при работе с процессами и ошибками. В конце мы подведем резюме стэка технологий Node.js

Тема 1: Основные концепции Node - Modules

Тема 2: Стандартная библиотека Node - EventLoop - Timers

Тема 3: Node Best Practices - Streams - Processes

Тема 4: HTTP Server

Тема 5: Web-сервер с Express

Тема 6: Введение в язык SQL, PostgreSQL

Тема 7: Работа с PostgreSQL и TypeORM

Тема 8: Построение Rest API с Express

Тема 9: Сборка проекта, CI

Тема 10: Деплой проекта, CD

Современный Стэк JavaScript

В этом блоке мы рассматриваем свежие, но уже зарекомендовавшие себя темы из мира JavaScript. Познакомимся со спецификацией Web Components, и научимся использовать библиотеку Lit-Element, построенную вокруг этой технологии. SvelteJS - новая большая вещь в мире фронтенда, и мы обязательно должны ее попробовать. TypeScript - стандарт отрасли, поэтому мы начинаем его изучать и практиковать как можно раньше в курсе в FullStack JavaScript разработчик.

Тема 1: Web Components

Тема 2: Webpack

Тема 3: Service Workers

Тема 4: PWA

Тема 5: Инструменты и технологии JS тестирования, BDD (Behavior-Driven Development )

Тема 6: Функциональное программирование

Тема 7: Введение в TypeScript

Тема 8: Особенности TypeScript

React

Мы подробно изучим стэк технологий React. Рассмотрим особенности синтаксической шаблонизации JSX, особенности передачи данных и хранения состояния с помощью state и props. Разберем свойства компонентного подхода для декомпозиции React приложений, жизненный цикл и типы компонент, например, High-Order Components. Изучим шаблон проектирования Flux и его реализацию на примере библиотеки Redux. Будем настраивать и оптимизировать приложения с Server-Side Rendering.

Тема 1: Основы React и JSX

Тема 2: Компоненты React - Lifecycle, State & Props

Тема 3: Паттерны проектирования React (Higher-Order Components)

Тема 4: Обзор современных возможностей React

Тема 5: Состояние приложения - Flux и Redux

Тема 6: Routing в React - Оптимизация приложения

Тема 7: Подготовка React Приложения к Production, Best Practices

Тема 8: Архитектура фронтенд приложений - микрофронтенды

Тема 9: Современные рендеринг фреймворки и аспекты SSR

Angular

Подробно изучим язык TypeScript и преимущества его использования. Разберем паттерн проектирования Observable на базе библиотеки RxJS. Научимся работать с фреймворком Angular - создавать компоненты и формы, управлять Routing, использовать Dependency Injection для сервисов, а также тестировать и собирать приложения с помощью Webpack.

Тема 1: Введение в Angular

Тема 2: Компоненты и директивы

Тема 3: Observables - RxJS

Тема 4: Сервисы и состояние приложения

Тема 5: Создание и управление формами в Angular

Тема 6: Routing, тестирование и сборка в Angular

Vue

В этом модуле мы сосредоточимся на Vue - современном и популярном FrontEnd фреймворке. Мы рассмотрим особенности шаблонизации и создания динамических приложений на Vue. Разберем возможности и жизненный цикл компонент, хранения состояния. Изучим инструменты Vuex и Vue CLI. Будем настраивать и оптимизировать сборку приложений с Server-Side Rendering.

Тема 1: Альтернатива большим фреймворкам - Обзор SvelteJS

Тема 2: Основы Vue

Тема 3: Компоненты, шаблонизатор и формы

Тема 4: Routing и Vue3

Тема 5: Advanced Vue - Vuex

Проектная работа

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

Тема 1: Вводное занятие по проектной работе. Обзор пройденных фреймворков и технологий

Тема 2: Карьерная консультация

Тема 3: Защита проектных работ

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

Проектные работы

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


  • Ступень 1: выбираете тему проектной работы, разрабатываете и презентуете преподавателю.
  • Ступень 2: примеры тем для реализации: сайт с прогнозом погоды, визуальный конструктор страниц, чат.
  • Ступень 3: примеры тем для реализации: Task Runner для создания части Continuous Integration цикла, Reciept Roulette для управления и рекомендации рецептов, Elements Dashboard — магазин web-компонент.

Преподаватели

Александр Коржиков

Василий Ванчук

Андрей Осипук

Геофизик

ООО "Центр горизонатльного бурения"

Кирилл Коломбет

Евгения Башиева

Fullstack Engineer

ReMago LTD

Дамир Рысаев

Full Stack Engineer

Здравсити

Мария Коршунова

Фронтенд-разработчик и скрам-мастер

Solveva

Роман Мельник

Николай Лапшин

Technical Lead

Power Tech

Арсений Высоцкий

Илья Оболенский

Дарья Самылова

Сергей Кошельников

Артём Рева

Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания

Ближайшие мероприятия

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

Применение JavaScript в браузере
Анна Русяева
Рассмотрим как JavaScript взаимодействует с браузером, как обновлять данные и как менять конвент. Познакомитесь с базовыми типами и обработчиками событий....
7 марта в 17:00
Открытый вебинар
Прототипное наследование в JavaScript
Роман Мельник
На занятии мы разберемся, что такое прототипное наследование и как оно может помочь при разработке программ.
В результате вы лучше поймете объектную модель Javascript и сможете писать ООП код с экономией памяти.
...
20 марта в 17:00
Открытый вебинар

Прошедшие
мероприятия

Василий Ванчук
Открытый вебинар
Работа с сетевыми ресурсами в проектах на Javascript
Евгения Башиева
Открытый вебинар
Создание чата на JavaScript с 0 за час
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

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

Отус помогает развивать высокотехнологичные Команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Диплом о профессиональной переподготовке

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

Почему специализация выгоднее, чем отдельные курсы?


  • Стоимость ниже, чем покупка курсов по отдельности
  • Диплом о профессиональной переподготовке
  • Расширенная опция помощи с трудоустройством

Частые вопросы

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