Профессия: Front-end веб-разработчик
Примерные зарплаты:
Junior: 40 тыс. -100 тыс. ₽
Middle: 80 тыс. - 160 тыс. ₽
Senior: 130 тыс. - 300 тыс. ₽
Срок подготовки Junior специалиста в среднем: 7-12 месяцев (в зависимости от программы курса, частоты занятий и Ваших способностей)
Кол-во вакансий на одной из популярных площадок для поиска: 1820
Задачи, языки, технологии:
** в пунктах с несколькими технологиями, как правило, требуется знание одной. Мы написали одни из самых популярных.
Верстка (создание разметки и стилизация веб-страницы):
1) HTML (Hypertext markup language) - язык разметки страницы. Позволяет располагать содержимое веб-приложения на веб-странице.
2) CSS (Cascading style sheets) - каскадные таблицы стилей. Используются для стилизации веб-приложения.
3) SCSS/SASS или LESS или Stylus - расширения и препроцессоры CSS.
4) Bootstrap или Tailwind - CSS фреймворки, как правило содержат наборы заготовленных стилей и модулей для упрощения процесса верстки.
5) Pug или Handlebars - шаблонизаторы, позволяющие генерировать HTML и создавать разметку удобнее и быстрее.
6) БЭМ, OOCSS, ITCSS, Atomic CSS - методологии написания CSS. Желательно быть знакомым с каждой.
Разработка (создание скриптов, исполняющихся и реализующих логику приложения на стороне клиента):
1) Javascript - мультипарадигмальный язык программирования, исполняющийся как в браузере, так и вне него (Node.js).
2) React.js или Vue.js или Angular.js - троица наиболее популярных JS фреймворков + сопутствующая инфраструктура (Redux, Vuex, ...)
3) Axios - HTTP клиент, наряду с встроенными методами Js, позволяет общаться с сервером путём HTTP(S) запросов.
Тестирование:
1) Mocha + Chai или Jest - в основном используются для написания unit-тестов (тестов, проверяющих корректность работы Js модулей)
2) Nightwatch или Cypress - end-to-end тестирование веб-приложений.
Компиляция, сборка, качество кода:
1) Webpack или Gulp - автоматизация сборки и компиляции.
2) ESLint - проверка качества кода.
Также приветствуются знания:
Linux, Docker, Nginx, для сайтов «под ключ» - умение «натягивать» сайт на CMS.