Frontend Engineer / JavaScript Developer (middle, senior)
Прямой работодатель CleverDATA ( cleverdata.ru )
Опыт работы от 3 до 5 летот 160 000 до 250 000 ₽
Описание
CleverDATA ищет Frontend-разработчика с желанием работать и видеть результаты своей работы, попутно развиваясь в областях по проектированию и построению удобных пользовательских интерфейсов (UI/UX дизайн).
Миссия компании – построить первую независимую в РФ экосистему обработки, анализа, обмена и активации аудиторных данных. Все программные продукты компании связаны с извлечением знаний из больших массивов данных, как структурированных, так и нет, а также с обработкой десятков и сотен тысяч запросов в секунду.
Вам предстоит развивать и разрабатывать пользовательские интерфейсы систем:
- DMPkit (dmpkit.io) - набор компонент и пользовательских интерфейсов для построения платформ по обработке и управлению аудиторными данными;
- DMC (1dmc.io) - набор компонент и пользовательских интерфейсов единственной независимой в РФ биржи аудиторных данных.
Ожидания
- Опыт работы с JavaScript от 3 лет;
- Хорошее знание JavaScript (ECMA2016), TypeScript и стандартной библиотеки;
- ОпытразработкиSingle Page ApplicationsнаAngular 8+;
- Хорошие знания DOM, HTML, CSS;
- Опыт использования инструментов: NPM, Webpack, RxJs, NgRx, Karma, Less, Bootstrap;
- Понимание протокола HTTP и RESTful APIs;
- Умение работать в команде, писать читаемый код и юнит-тесты;
- Умение и желание изучать те инструменты и технологии, с которыми не доводилось работать ранее;
- Умение читать и понимать англоязычную профессиональную литературу и документацию;
- Способность обучаться и находить решения самостоятельно, пользуясь доступными источниками информации.
Технологии
- JavaScript(ECMA2016), TypeScript – языки программирования
- Angular 8, Bootstrap – фреймворки
- NgRx – управление состояниями
- RxJs – реактивное программирование
- D3.js– визуализация данных
- NPM, Webpack – системы сборки
- Jasmine, Karma – библиотеки тестирования
- Less – управление стилями
- Nginx – веб- и прокси- сервер
Возможности
- Интересные и сложные задачи по разработке и проектированию модульных пользовательских интерфейсов;
- Развитие в области UI/UXдизайна и визуализации данных;
- Принятие самостоятельных решений в части реализации и их аргументация;
- Работа в дружном и профессиональном коллективе;
- Адекватный процесс разработки и доставки ПО (юнит- и функциональное тестирование, CI/CD, Code Review, Agile, и т.п.);
- Участие в релевантных конференциях, в том числе за пределами РФ;
- Гибкий рабочий график и возможность один день в неделю работать удаленно;
- Полностью удаленный режим работы на период действия ограничений по COVID-19;
- Быстрый профессиональный и карьерный рост.
Условия
- Работа с современными технологиями;
- Стабильная белая заработная плата;
- Социальный пакет.
Примеры задач
Добавление пакетного режима заведения сегментов в конструктор сегментов с учетом DSL, описываемого ANTLR-грамматикой
Описание: В состав продуктовой линейки компании входит компонент "AudienceManager", пользовательский интерфейс которого позволяет работать с аудиторными данными и создавать из них сегменты. Сегменты определяются с использованием DSL, описываемого ANTLR-грамматикой и формируются из различных условий. Например, сегмент "мужчины, проживающие в Москве и являющиеся владельцами кота" состоит из условий: "является мужчиной", "проживает в Москве", "является владельцем кота".
Необходимо выполнить доработки, которые позволят в конструкторе сегментов заводить сегменты в пакетном режиме (несколько сегментов, незначительно отличающихся друг от друга, за один раз).
Цель задачи: глубже познакомиться с одним из основных компонентов платформы DMPkit, его пользовательским интерфейсом, а также с тем, как устроены модули и компоненты UI.
Цель компании: улучшение пользовательского опыта по работе с конструктором сегментов.
Добавление тегов(меток) в пользовательский интерфейс заведения сделок по поставке аудиторных данных
Описание: В состав продуктовой линейки компании входит компонент для заведения сделок по поставке аудиторных данных и соответствующий модуль пользовательского интерфейса.
В рамках задачи необходимо выполнить доработки пользовательского интерфейса, которые позволят добавлять, удалять, редактировать теги(метки) сделок, а также, выполнять поиск сделок по соответствующим тегам(меткам).
Цель задачи: познакомиться с тем, как устроен один из основных модулей Биржи Данных 1DMC;
Цель компании: удовлетворение запросов текущих клиентов компании.
Визуализация статистики работы адаптеров по выгрузке сегментов в рекламные платформы
Описание: В состав продуктовой линейки компании входит компонент "IntegrationManager" для передачи сформированных сегментов в рекламные платформы (Google, Yandex, myTarget и др.) и последующего показа пользователям, попавшим в сегмент, релевантной рекламы. Например, сегменту "мужчины, проживающие в Москве и являющиеся владельцами кота" рекламодатель желает показывать рекламу про новый, супер-полезный корм для кошек.
Результаты работы компонента "IntegrationManager" сохраняются в сервисе "Statistics".
В рамках задачи необходимо выполнить доработки пользовательского интерфейса, позволяющие наглядно визуализировать (с использованием D3.js), сколько и каких пользовательских профилей было передано в рекламные платформы, а также их дополнительные характеристики для последующей оптимизации рекламных кампаний.
Цель задачи: познакомиться с тем, из каких сервисов состоит платформа DMPkit, а также с APIдля взаимодействия с указанными сервисами.
Цель компании: удовлетворение запросов текущих клиентов компании, улучшение пользовательского опыта.
Разработка пользовательского интерфейса для управления моделями машинного обучения
Описание: В целях дальнейшего развития продуктовой линейки компании создается набор компонент и пользовательских интерфейсов по управлению моделями машинного обучения и визуализации результатов их работы.
В рамках задачи необходимо с нуля спроектировать и разработать соответствующие модули продукта.
Цель задачи: спроектировать и разработать удобные с точки зрения конечного пользователя интерфейсы.
Цель компании: удовлетворение запросов текущих клиентов компании, улучшение пользовательского опыта.