- Вы отправили резюме или с вами связался наш HR.
- Получили ссылку на этот репозиторий.
=== Вы здесь ===
- Ознакомились с заданием и решили тестовые задачи, в течение недели получили обратную связь в виде issues в своём репозитории от разработчиков и итоговый ответ от HR в почте или по телефону.
- Если всё ок, то пришли на очное собеседование, в течение недели получили обратную связь от HR.
- Если всё ок, то вы на испытательном сроке от 1 до 2 месяцев. Тут мы смотрим на вас, а вы — на нас :)
- PROFIT!
- Написать конфигурацию webpack, которая собирает скрипт для страницы.
- Написать конфигурацию gulp, которая собирает scss стили для страницы.
- Подключить линтер для стилей.
- Подключить линтер для JS.
- Конфигурация должна содержать build и dev сборки, где build — это минифицированный код.
- Структура файлов:
- src — исходники всех файлов(scss — исходники стилей, js — исходники js, img — картинки\иконки\другая графика).
- webpack.config.js — конфигурация webpack.
- babel.gulp.js — конфигурация gulp.
- build — результат конечного варианта, его мы и будем смотреть.
- dev — результат для dev разработки.
- package.json — набор зависимостей.
- .eslintrc.json — правила для линтера JS.
- .stylelintrc — правила для линтера CSS\SCSS.
- Разместить результаты на Github.
- Предоставить ссылку на репозиторий.
- Если остались вопросы, пожалуйста, задайте их до старта выполнения задания.
- Выполняем семантическую вёрстку «Шаг 1» и «Шаг 2» по методологии BEM.
- Добавляем на страницу всё необходимое для SEO.
- Подключаем шрифты любым удобным способом.
- Используем препроцессор SCSS для стилей и импортов.
- Адаптивность делать не нужно, ширина страницы фиксирована.
Шаг 1
- Создать Vue-приложение (экземпляр).
- Создаем источник демо-данных. Можно использовать любой способ на ваше усмотрение.
- Делаем ajax-запрос для получения списка АТС. После получения данных выводим список АТС.
- Реализуем метод, который позволяет выбрать только один вариант из списка и запоминает его. При обновлении страницы, выводится последний выбранный вариант. При повторном клике выбор отменяется.
- Реализуем метод, который блокирует кнопку перехода к «Перейти к следующему шагу», если АТС не выбрана.
- Реализуем метод, который отправляет ajax-запрос с выбранной АТС, по клику на кнопку «Перейти к следующему шагу».
- Получив демо-ответ об успехе отправки выбранной АТС, переключаемся на «Шаг 2».
Шаг 2
- При показе представления «Шаг 2», выполняем ajax-запрос и получаем демо-ответ по выбранной АТС.
- При смене «Модель АТС» на втором шаге выбор на «Шаг 1» та же должен обновиться.
- Реализуем метод, который позволяет вернуться на «Шаг 1», кликнув на «Подходящие решения».
- Можно использовать любой фреймворк для тестирования.
- Написать тест, который проверяет наличие минимум одной АТС в DOM.
- Написать тест, который проверяет, что кнопка «Перейти к следующему шагу» становится активна, если выбрана одна АТС.
- Написать тест, который проверяет, что после клика по кнопке «Перейти к следующему шагу», пользователь увидел «Подходящее решение».
- Требования, которые описаны в задании.
- Соответствие вёрстки дизайну.
- Как реализована логика и какие библиотеки вы использовали для решения задачи.
- Можно ли ваш код масштабировать, например, добавив ещё один шаг.
Не проблема. Возможно, вы уже делали задачи, похожие на эту, — просто покажите код :)