JavaScript Developer. Professional

Практический курс для web-разработчиков по продвинутым возможностям JS и его фреймворков

28 марта

Professional

5 месяцев

Онлайн

Вт/Чт 20:00 Мск

Видео-презентация курса
JavaScript Developer. Professional

Для кого этот курс?

Курс подойдет разработчикам с опытом программирования на JS, которые знакомы с основами верстки на HTML и CSS. Знания помогут расширить арсенал инструментов для работы с фронтендом и бэкэндом на основе JavaScript.

Необходимые знания

  • Знание основ JavaScript (переменные, циклы, функции, замыкания, создание объектов, scope, this, работа со встроенными классами и API - Date, Math, RegExp, Array - map, forEach, filter, reduce)
  • Основы работы браузера и браузерного API
  • Знание HTML и CSS
  • Базовые навыки работы с Git (понимание VCS, создать ветку, сделать Merge Request на github)

Плюсом будет

  • опыт использования JavaScript библиотек / фреймворков
  • понимание или желание разбираться с алгоритмическими, проектировочными и логическими задачами
  • умеет работать с IDE
Пройдите тест

Что вам даст этот курс?

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

Ключевые составляющие программы

  • Изучение основных возможностей JavaScript — замыкания, особенности ООП и SOLID в JS, Promises и другие фичи ES6, паттерна Event Loop и др.
  • Разбор DOM API, Ajax и события в рамках разработки в браузере
  • Полный ландшафт современных технологий Node.js / React / Angular / Vue / Svelte / TypeScript / Web Components
  • Изучение серверной платформы Node.js и её окружения
  • Освоение фреймворка Angular с реактивными возможностями RxJS, библиотеки для написания web-приложений: ReactJS, Redux
  • Современные подходы к разработке UI такие, как Vue и набирающий популярность Svelte;
  • Хранение данных в PostgreSQL, использовать TDD подход и писать тесты на различных фреймворках и уровнях
  • Сборка проектов для production с помощью Webpack
  • Домашние задания в формате мини-assignment, как на собеседованиях в российских и европейских компаниях
  • Углубитесь во внутренние алгоритмы и логику работы фреймворков и рассмотрите спецификации

После обучения вы сможете указать в резюме

  • Знание принципов работы современных JavaScript фреймворков и библиотек
  • Знание подходов при проектировании, организации, контроле состояния и тестирования серверных и клиентских приложений
  • Умение применять паттерны проектирования: Event Loop, Flux, Immutable, Virtual DOM, Dependency Injection, Observables
  • Умение выбирать подходящие инструменты для проекта
  • Умение тестировать проект unit-тестами на разных уровнях
  • Умение создавать web-приложения с использованием современных технологий

Актуальность программы


В курсе представлены наиболее популярные фреймворки для создания современных ресурсов. Научитесь создавать web-приложения на последних версиях React.js, Vue.js или Angular с серверной частью на Node.js.

Процесс обучения

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

А если вы не смогли посетить занятие в реальном времени, то сможете посмотреть его в записи и задать вопрос преподавателю в закрытом Telegram-чате.

Портфолио

Индивидуальная разработка проектной работы

Эксперты


Ревью кода от практикующих специалистов

Оптимальная нагрузка


Возможность совмещать учебу с работой

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

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

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

Работодатели курса

Формат обучения

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


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

Практика


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

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


Общайтесь с преподавателями голосом на вебинарах, в закрытом чате Telegram и при проверке домашних заданий

Программа

Актуальные Возможности JavaScript

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

Тема 1: Введение в курс: знакомство с программой, командой курса

Тема 2: Новинки стандарта

Тема 3: Асинхронные паттерны

Тема 4: Введение в Node.js и NPM

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

Тема 6: Работа с браузером

Тема 7: Web Components

Тема 8: Bulid tools: Vite, Webpack, Rollup

Node.js

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

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

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

Тема 3: Работка с потоками - Streams

Тема 4: HTTP Server

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

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

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

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

Тема 9: Web-сервер с Nest.js

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

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

Тема 12: Node.js и Docker

Тема 13: Сборка и деплой проекта, CI/CD

Vue.js

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

Тема 1: Основы Vue3

Тема 2: Компоненты и шаблоны

Тема 3: Управление компонентами

Тема 4: Состояние приложения - Vuex и Pinia

Тема 5: Routing

Тема 6: Advanced Vue

Angular

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

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

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

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

Тема 4: Observables - RxJS

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

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

React.js

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

Тема 1: Обзор React

Тема 2: Hooks в React

Тема 3: Higher-Order Components, Custom Hooks и другие паттерны React

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

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

Аспекты архитектуры FrontEnd приложений

В этом блоке мы рассматриваем паттерны разработки и архитектуры FrontEnd приложений. Обсудим технологии входящие в Progressive Web Apps; преимущества и недостатки, и практические аспекты сервер сайд рендеринга. Поговорим о Svelte как альтернативе стандартным FrontEnd фреймворкам.

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

Тема 2: Service Workers и PWA

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

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

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

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

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

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

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

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

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

Выпускной проект


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

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

Руководитель курса

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

Юрий Тимофеев

Senior Software Engineer

EPAM Systems

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

Геофизик

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

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

Марат Минулин

Игорь Звягин

Дамир Рысаев

Fullstack Engineer

Здравсити

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

Technical Lead

Power Tech

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

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

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

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

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

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

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

Создание CLI на Node.js
Арсений Высоцкий
Этот вебинар предназначен для разработчиков, которые хотят научиться создавать свои собственные интерфейсы командной строки (CLI) с использованием Node.js. Во время вебинара мы рассмотрим основы разработки CLI, научимся создавать пользовательские команды и интерфейс, а также развивать их функциональность с помощью различных Node.js модулей.

Основные темы вебинара включают:

1. Введение в CLI разработку: Мы начнем с обзора преимуществ и практического применения CLI. Рассмотрим основные понятия и принципы разработки CLI на Node.js.

2. Основы работы с Node.js: Мы взглянем на основы Node.js и как он используется для создания CLI. Рассмотрим установку и настройку Node.js, а также работу с пакетным менеджером npm.

3. Создание интерфейса CLI: Мы изучим различные библиотеки Node.js, такие как Commander.js и Inquirer.js, которые помогут нам создать пользовательский интерфейс для нашего CLI. Рассмотрим создание команд, аргументов и опций.

4. Обработка пользовательского ввода: Мы рассмотрим способы обработки пользовательского ввода в CLI, включая валидацию, интерактивные вопросы и множественные выборы. Узнаем, как обрабатывать аргументы и опции командной строки.

5. Взаимодействие с файловой системой и внешними API: Мы изучим, как взаимодействовать с файловой системой и использовать модули Node.js для чтения, записи и обработки файлов. Рассмотрим возможность работы с внешними API для получения данных в нашем CLI.

6. Тестирование и отладка: Мы узнаем о методах тестирования и отладки CLI приложений. Рассмотрим использование фреймворка для тестирования и инструментов для отладки Node.js приложений.

7. Лучшие практики и советы разработки CLI: Мы поделимся нашими рекомендациями и лучшими практиками для эффективной разработки CLI на Node.js.
...
6 марта в 17:00
Открытый вебинар
TypeScript в Node.js для server-side приложений
Арсений Высоцкий
Этот вебинар предназначен для разработчиков, которые хотят изучить и применить TypeScript при разработке server-side приложений на платформе Node.js. Во время вебинара мы рассмотрим основы TypeScript, его особенности и преимущества, а также научимся использовать TypeScript для создания надежных и масштабируемых server-side приложений на Node.js.

Основные темы вебинара включают:

1. Введение в TypeScript: Мы начнем с обзора основ TypeScript, его синтаксиса, статической типизации и возможностей, которые он предоставляет. Рассмотрим транспиляцию TypeScript в JavaScript и инструменты работы с TypeScript.

2. Интеграция TypeScript с Node.js: Мы изучим, как настроить среду разработки, такую как Visual Studio Code, для работы с TypeScript в Node.js проектах. Рассмотрим установку и настройку TypeScript компилятора и конфигурацию проекта.

3. Работа с модулями и зависимостями: Мы рассмотрим использование модулей и зависимостей в TypeScript проектах, включая импорт и экспорт модулей, аннотации типов для зависимостей и использование популярных пакетных менеджеров, таких как npm или yarn.

4. Основные типы данных и аннотации типов: Мы изучим основные типы данных, предоставляемые TypeScript, и научимся использовать аннотации типов для более надежной и безопасной разработки. Узнаем, как определять пользовательские типы и интерфейсы.

5. Работа с асинхронным кодом: Мы рассмотрим подходы к работе с асинхронным кодом в TypeScript, включая использование промисов, асинхронных функций и асинхронных генераторов.

6. Разработка серверной логики с использованием TypeScript: Мы узнаем, как разрабатывать серверную логику, такую как обработка HTTP запросов и взаимодействие с базой данных, с использованием TypeScript и фреймворков, таких как Express.js или Nest.js.

7. Тестирование и отладка TypeScript приложений: Мы рассмотрим методы тестирования и отладки TypeScript приложений. Узнаем, как использовать фреймворки для модульного и интеграционного тестирования и инструменты для отладки TypeScript кода.

8. Лучшие практики разработки с TypeScript: Мы поделимся нашими рекомендациями и лучшими практиками для эффективной разработки server-side приложений на Node.js с использованием TypeScript. Рассмотрим принципы SOLID, структурирование проекта, обработку ошибок, логгирование и многое другое.

9. Практические примеры и демонстрации: Во время вебинара мы проведем несколько практических примеров и демонстраций, чтобы продемонстрировать применение TypeScript в различных сценариях разработки server-side приложений на Node.js.
...
21 марта в 17:00
Открытый вебинар

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

Арсений Высоцкий
Открытый вебинар
Построение графических приложений с применением библиотеки Konva.js
Арсений Высоцкий
Открытый вебинар
Визуализация данных с React и D3.js.
Для доступа ко всем прошедшим мероприятиям необходимо пройти входное тестирование
Возможность пройти вступительное тестирование повторно появится только через 3 дня
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!

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

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

Отзывы

Дарья Мороз

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

Евгений Шашков

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

Дмитрий Ильин

07.05.2021
Доброго времени суток! За курс ставлю 8 баллов из 10! Всё очень понравилось, узнал ой как много всего нового и интересного. Реально ощущаю, что данный курс меня и прокачал и подтянул и, главное, настроил на дальнейшее развитие. Что понравилось: 1. Структура курса - всё логично, удобно и понятно. Тут есть мысль поместить Angular в конец, т.к., если не знаком с фреймворками и после курса планируешь выбрать какой-либо для дальнейшей работы, то выбор в основном падает на более простые (VUE, REACT). Хотя в плане возможностей и архитектуры Angular показался более мощным. Он так же кажется и сложнее, поэтому, возможно кому-нибудь будет удобнее сначала осваивать более простые технологии; 2. Всестороннесть курса - рассматривается как backend так и frontend в той или иной мере; 3. Уровень знания преподавателей - видно, что знающие товарищи. Что хотелось бы добавить: 1. Хотя бы пару занятий по IONIC. 2. Если нет практики, то почти нет и знаний (сколько бы теории не прочитал и не прослушал). Лучше добавить совместный LIFE-кодинг (как на занятиях Юрия Дворжецкого) на каждый из разделов. 3. Демонстрационный кодинг от преподавателей имеет место и должен быть. Но! Как уже озвучивали другие, он должен быть не очень долгий и подготовленный. Лучше пусть это будут маленькие несложные кейсы, который сразу можно повторить у себя локально и показать результат преподавателю для оценки. 4. Домашки. Их с одной стороны не очень много.. С другой стороны чем дальше, тем они сложнее. Речь тут не о сложности кода, а об объеме. Иногда это так происходит: что-то послушали, что-то посмотрели, толком сами ничего не поделали и .. Нужно полноценное приложение! Может, как вариант, поступить таким образом в каждом разделе: На первом занятии: 1. Рассказали. 2. Показали. 3. Попросили повторить. 4. Обсудили работы всех кратко. 5. Дали мини-задание по развитию данного кода и подготовке. На втором занятии: 1. Пока все собираются можно по мере подключение слушателей посмотреть, что они сделали, обсудить. 2. Переходим к следующей теме развивая данный проект (т.е. всё тоже самое: рассказали, показали, сделали сами..). В конце блока уже домашка либо на развитие всё этого же проекта, либо примерно с такими же технологиями отдельно (чтобы ещё раз ручками всё сделать с 0 и закрепить).

Дмитрий Корытько

25.01.2021
Прошел обучение на курсе "JavaScript Developer. Professional". Получил хорошие теоретические и практические знания в веб-разработке. На этом курсе освоил современные технологии и лучшие практики. Понравилась подача материалов преподавателями. Увлекательные лекции, хорошие презентации, объяснения тем на практических примерах, а так же увлекательные домашние задания. Всё это помогло хорошо освоить предметную область и применять полученные знания на практике.

Роберт Рахматуллин

24.01.2021
До курса мои знания ограничивались HTML, CSS и базовыми знаниями JS, которые, к слову, получил в курсе JavaScript для начинающих программистов от OTUS :) Данный курс не только познакомил с полным стеком технологий JS и как с ними работать, но и дал мне самое ценное - своего рода профориентацию в мире JavaScript. Теперь я точно знаю что буду практиковать и в чём совершенствоваться в ближайшие годы)

Тарасов Максим

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

Владимир Бутыгин

12.11.2020
Отличный курс, с большим охватом современных технологий. Данный курс я проходил с целью расширить кругозор и чтоб было понимание процессов разработки на JS. Так как мой уровень в JS был низок, то часть занятий и заданий давалась не легко, но и курс не для новичков, спасал общий опыт в программировании. Видно, что все преподаватели обладают высокой квалификацией в темах которые читают. Однако не хватило демонстрации практических примеров применения инструментов совместно со студентами (на курсе "Spring Framework" мы часто делали задания по написанию небольшого функционала, а преподаватели после демонстрировали оптимальные варианты решения поставленной задачи, к тем занятиям заранее были приготовлены репозитории с примерами и после были доступны). Также большой акцент был сделан на работу с локальными хранилищами, и почти не работали с реальными БД. Что касается ДЗ, были как легкие, так и сложные. Отдельно могу отметить ДЗ по работе с opensource-проектом - интересно, но не для всех. Для такого курса, идеальным ДЗ было бы возможность реализовывать одно и то же приложение на разных фреймворках: создать базу (для простоты можно брать Firebase или Mongo), на Node.js реализовать CRUD API для работы с базой (желательно чтоб были рассмотрены примеры работы со сложными объектами) и конечно сделать пользовательский интерфейс на React, Angular, Vue, Svelte (один и тот же, чтоб можно было сравнивать +/- того или иного фреймворка). Всем успеха.

Кристина Малькова

22.07.2020
До обучения в Otus я работала в нефтегазовой отрасли инженером и совсем не взаимодействовала с web разработкой. В связи с изменением потребностей рынка труда, я решила сменить профессию) Раньше все время слышала про то, что девочек-нефтяников практически никто не знает, теперь практически то же самое слышу про программистов. Ничего нового)) Выбрала web разработку, потому что на данный момент спрос на таких специалистов весьма высок и это супер интересная работа! Учеба для меня никогда не была чем-то сложным и во всех моих дипломах средний балл 5.0, поэтому выучить что-то новое для меня не казалось чем-то страшным. К моменту поиска курса я заканчивала проходить курс по верстке и читать книгу «Javascript» от O’Reilly. Читая программы курсов в других школах, поняла, что почти везде заново учат верстке и базовым вещам JS. Повторять то же самое мне не хотелось, поэтому, когда прочитала программу курса «Fullstack Javascript developer» от Otus, заинтересовалась им, но не была уверена, что справлюсь, т. к. на тот момент даже junior разработчиком меня нельзя было назвать. Я прошла вступительное тестирование и получила ответ, что я могу поступить на курс. Реальность же оказалась такова, что все-таки этот курс рассчитан на людей с опытом работы с JSот года. Моим преимуществом было то, что я могла тратить все свое время на изучение программирования и между лекциями я читала книги, решала задачи и разбиралась с тем, что было непонятно. Если вы думаете об этом курсе, но находитесь в самом начале пути и не обладаете возможностью уделять учебе очень много времени, то скорее всего учиться на данном курсе вам будет сложно. С моей точки зрения, курс действительно будет полезен разработчикам уровня Junior+/Middle. Мне понравилось то, что в процессе обучения мы можем познакомиться с тремя наиболее распространенными фреймворками и понять какой из них ближе вам. Отдельное спасибо Юрию Дворжецкому за мега крутые лекции и за то, что он умеет донести материал так круто, что даже мне было понятно абсолютно все, несмотря на отсутствие опыта работы. Еще в домашних заданиях иногда необходимо было применять то, чего в лекциях не было, но опять же это проблема скорее того, что я пришла на курс с практически нулевыми знаниями. Наверное, вступительное тестирование следует сделать посложнее))) Также в процессе реализации дипломного проекта, я очень сильно выросла профессионально и хаос из кучи новых знаний в голове систематизировался и как бы «разложился по полочкам». Приложив огромные усилия и потратив полгода на изучение программирования, могу сказать, что я очень круто повысила свои знания javascript и научилась работать с фреймворками. Все зависит от нас самих, от нашего желания развиваться, самодисциплины и целеустремленности. На данный момент я в поиске работы на позицию Juniorfrontend разработчика. В «компанию мечты» я еще не попала, но все впереди и нет ничего невозможного! Спасибо курсу за то, что сейчас я действительно могу проходить интервью и знаю ответы даже на вопросы с подвохом!

Александр Чухванцев

21.04.2020
Отличный курс. Так держать!

Константин Казачихин

04.04.2020
Вот и закончился наш полугодовой otus-марафон с недосыпными ночами и потерянными выходными. Но оно того стоило! Теперь мы умеем кидаться сюрикенами, рубить головы катаной и летать по крышам домов)) Поделюсь немного своими впечатлениями. Прежде всего, Александр, Михаил, Юрий - вам отдельное большое спасибо, вы молодцы! Если говорить в двух словах, то мы (студенты) за это время прошли путь от "О боже, как это работает" до "Как же приятно и удобно писать приложения на этом фреймворке/библиотеке". За этим одним простым предложением скрывается многое. Уверен, коллеги, вы меня понимаете. Одна из изюминок курса - широкий охват изучаемых фреймворков, js-технологий, инструментов. Это здорово! Это позволяет лучше понять и представить общую картину в целом и те принципы, идеи, что были заложенные в тот или иной подход/технологию. Я для себя сделал вывод: если ты критикуешь React|Vue|Angular|Node, то скорей всего ты просто неправильно его используешь. Каждый из них по своему хорош и имеет свою область применения (если так можно выразиться). В React мне понравилась его продуманность, логичность. Удивительно, что его такие "простые" принципы позволяют писать разносторонние и сложные приложения. Vue часто недооценивают, но на нем не менее "приятно" писать сайты. Vuetify и Buefy - огонь! Angular - это бог асинхронности и двухсторонних связей)) После занятий по Angular я прям проникся и влюбился в обсервебелы. Сейчас у нового потока будет Svetle, завидно. Чего мне не хватило. 1) Прежде всего, конечно, это касается домашек. Тут в OTUS есть над чем поработать. Не знаю как это лучше сделать, но было бы здорово, если бы выполнение домашек не отставало от проходимых тем. Тут сразу несколько факторов сыграли: мы студенты долго делали, преподаватели с задержкой проверяли. Упрощать домашки - не хотелось бы. Возможно здесь помогло бы более конкретное и подробное описание и постановка задач ДЗ. В описании курса было указано, что потребуется 3-5 часов на ДЗ. По факту выходит больше. С учетом чтения документации, изучения других материалов, сам кодинг, плюс доработка и исправление после проверки - в итоге получается порядка 5-15 часов на одно ДЗ. Я бы ещё предложил подумать над тем, чтобы (помимо ДЗ) после каждого урока давать студентам 1-2 несложных маленьких задачки для закрепления материала и без оценки, а в начале следующего занятия показывать правильный ответ. 2) Надо уменьшать порог вхождения в React. На мой взгляд, в этот раз получилось не очень удачно. Все студенты имеют разный уровень/багаж знаний, есть среди нас и новички. И бросать плохо плавающего сразу в воду - это жестоко. Как минимум, не надо учить писать в React на typescript. Либо проводить занятие по typescript перед React-ом. Vue и Angular даются по проще потому, что они идут уже после React. Вообще, то что React поставлен первым - я считаю правильно. Он очень хорошо подходит для знакомства с теми принципами, что заложены в современные фреймворки. Но раз уж он первый, то здесь лучше немного "пережевать" материал, чем "недожевать" - для лучшего усваивания студентами. 3) Ещё чего мне немного не хватило в занятиях - это по больше информации, касаемой вопросов сборки, компиляции и настройки окружения (webpack, babel и т.п.). Это пусть и второстепенная, но тоже важная и нужная вещь в работе программиста - умение настроить и использовать инструменты разработки. Например, можно взять какой-то заранее подготовленный пример и пройтись по файлам настроек. Типа вот смотрите это файл конфигурации webpack, он включает в себя такие-то разделы опций. И взять десяток наиболее часто используемых параметров и кратко пройтись по ним (для чего нужны, как и когда используются). Потом пройтись аналогично по настройкам babel + 10 пресетов/плагинов для примера. Потом показать как сделать настройки для typescript, для eslint. По ближе к практике. Думаю, это было бы полезно и интересно для студентов. Порой даже опытные программисты подзабывают или не до конца понимают все возможности используемых ими инструментов. В целом, я рад, что прошел курс. Нисколько не жалею. Ещё раз спасибо всем. И главное, будьте здоровы! :)

Виталий Нестеренко

19.02.2020
До обучения в Otus я работал (и работаю сейчас) в компании АО Барс Груп. Я работаю фронтенд разработчиком. Я выбрал соответствующий курс (фронтенд разработчик), хотел расширить кругозор, поработать с еще незнакомыми технологиями. Я почитал программу курса, мне она понравилась и я записался на курс. Курс мне в целом понравился, широта охвата довольно большая. Было достаточное количество домашних заданий, хотя сроки их проверки иногда хромали и мне приходилось несколько раз напоминать, чтобы ускорить проверку. Впрочем, к моменту сдачи проекта, последнюю работу довольно быстро проверили и приняли. Мне кажется, основное обучение происходит тогда, когда человек что-то делает сам, поэтому задания - это ключевой момент в обучении. Вот этих заданий можно было бы добавить еще. Возможно, более сложных. Мне обучение дало, ровно то, что я и хотел - расширил кругозор. Я познакомился чуть глубже с фреймворками с которыми, либо был слабо знаком (современный Angular) либо вовсе незнаком (Vue), узнал больше о Node JS, о веб компонентах. Новую должность, я, правда, не получил, но этот процесс у нас в компании формализован и тут недостаточно просто пройти обучение.

Сертификат о прохождении курса

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

После обучения вы:


  • Заберете с собой полный комплект обучающих материалов: видеозаписи всех вебинаров, презентации к занятиям, а также решение задач и проектов в виде кода на github и другие дополнительные материалы;
  • Получите сертификат о прохождении курса;
  • Приобретете опыт работы с актуальными технологиями, фреймворками и инструментарием.

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

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