О проекте:
Разработка high-load web сервисов, с расчетной нагрузкой от 7000. С использованием только open source продуктов и уход от vendor lock-in. Также, команда занимается разработкой распределенных event-driven систем.
Фронт построен вокруг React. Для роутинга используется React Router (если нужен SSR – используется кастомное решение), в качестве стейт-менеджера применяется MobX State Tree, бандлится всё это с помощью Vite. В планах перевести все приложения на Remix и уйти от хранения состояния на клиенте, вместо этого перейти на server-driven state.
Разрабатываеся внутренний UI-kit на основе headless компонентов React Aria и tokenized дизайн-системы. Пока UI-kit в разработке – используеся emotion (CSS-in-JS) , но в дальнейшем, план - уйти от runtime решений для стилизации.
Сервисы деплоятся в K8s. Используется CI/CD на Gitlab, с пайплайнами для unit/integration/e2e автотестов. Мониторинг при помощи Prometheus и Grafana, логи хранятся в ELK и Sentry.
Чем предстоит заниматься:
- разрабатывать клиентское приложение, в том числе: реализовывать новую функциональность в соответствии с бизнес-требованиями, проводить рефакторинг уже имеющегося кода, принимать участие в развитии архитектуры
- разрабатывать и поддерживать дизайн-систему (UI-kit)
Что ожидаем:
JavaScript
- gонимание принципов работы JS (стек, контекст, замыкания, асинхронность, прототипы и пр.)
- опыт работы с TypeScript (сложные типы, generics, type guards)
Вёрстка
- умение верстать с учётом семантики (знать какие HTML-теги для чего применяются)
- понимание того, как строятся дизайн-системы (темизация, токенизация, UI-kit и т.п.)
- будет плюсом знание современных возможностей CSS (например, grid layout, custom properties)
Браузер
- понимание работы браузера (навигация, парсинг, рендеринг)
- опыт работы с основными web API (fetch, DOM, history, navigation, web storage).
Сеть
- умение работать с серверными данными (HTTP, Ajax, JSON)
- будет плюсом умение использовать спецификации OpenAPI
Архитектура
- Умение отделять бизнес-логику от UI-слоя
- будет плюсом наличие представления о feature-подходе
Качество кода
- использование форматеров и линтеров (eslint, prettier)
- будет плюсом написание автотестов
React
- понимание принципов работы библиотеки (какую проблему пытается решить, как достигается "реактивность")
- умение локализовать и устранять проблемы производительности
- будет плюсом опыт работы с SSR
Что предлагаем:
- белая заработная плата (зависит от пожеланий и профессионально уровня кандидата)
- годовой бонус по результатам работы
- возможность релокации в европейские офисы
- гибкий формат работы
- современный офис с удобной транспортной доступностью
- гибкое начало рабочего дня
- рабочее место оборудовано современной техникой с учетом Ваших пожеланий
- компенсация занятий по английскому языку
- отсутствие бюрократии, вопросы решаются оперативно, без многочисленных согласований
- сложный высоконагруженный проект, cовременный стек технологий
- поездки на ИТ-конференции, митапы, учебные курсы за счет компании
- большая высококвалифицированная команда, возможность перенять ценный опыт
- реферальная программа за успешную рекомендацию кандидата