Передовые Платежные Решения

Senior Frontend-разработчик

Не указана
  • Москва
  • Полная занятость
  • Удаленная работа
  • От 3 до 6 лет
  • Vue.js
  • TypeScript
  • HTML5
  • JavaScript

Кто мы

Мы — ППР, финтех-компания с ИТ-аккредитацией и 20-летним опытом в B2B.

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

Нас выбрали уже 80 000+ клиентов по всей России. А в команде нас — больше 850 человек.

По версии HH.ru мы в топ-3 работодателей в своем сегменте в 2024 году. Что-то, видимо, делаем хорошо и правильно.

Что у нас с ИТ

ИТ в ППР — это 200+ профессионалов, которые делают все, чтобы бизнес наших клиентов работал быстро, без сбоев и с удовольствием.

У нас:

  • онлайн процессинг на базе технологии benzuber — первый в России сервис оплаты топлива со смартфона,
  • виртуальная карта «Вездеход» и платежный сервис PPR Pay — для оплаты топлива на 18 тысячах АЗС,
  • биллинговая система — 4 млн транзакций ежемесячно,
  • веб-сервис с личным кабинетом — доступ к 25+ продуктам,
  • мобильные приложения на базе iOS и Andriod с DAU 100 тыс.,
  • ПО для терминалов оплаты — на Android,
  • чат-боты и голосовые ассистенты,
  • RPA и AI для автоматизации процессов.

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

Внутри команды — уважение, поддержка и доброжелательная атмосфера: говорим как есть, вкладываемся в развитие каждого.

ИщемSenior Frontend-разработчикав команду, которая разрабатывает сайты нашей компании.

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

Обязанности:

  • Работа с макетами в Figma и реализация UI в соответствии с дизайн-гайдами.
  • Разработка новых проектов на Vue 3.5 / Nuxt 4.
  • Разработка сервисов для внутренних потребностей и интеграции с внешними API.
  • Разработка и поддержка библиотек для использования разными командами.
  • Разработка и поддержка внутренних сервисов и компонентов для повторного использования различными командами.
  • Участие в code-review и обеспечение высокого качества клиентского кода.
  • Участие в проектировании архитектурных решений для веб-приложений и общих библиотек компонентов;
  • Участие в командных ежедневных встречах, предложение и реализация идей по улучшению работы веб-приложений, а также постоянное обучение и самосовершенствование для достижения высоких результатов.
  • Инициирование и реализация улучшений пользовательского опыта и технического качества приложений.
Требования:

Общие требования:

  • Суммарный опыт коммерческой fontend-разработки от 5 лет.
  • Опыт коммерческой разработки на Vue 3 / Nuxt 3 от 3х лет.
  • Отличное знание JavaScript (ES6+) и TypeScript (дженерики, утилиты, строгая типизация).
  • Владение инструментами контроля версий (Git, GitLab).
  • Владение инструментами командной работы: Jira, Confluence.
  • Понимание принципов UX/UI-дизайна;
  • Опыт адаптивной и кроссбраузерной верстки с использованием HTML5, CSS3, SCSS;
  • Опыт применения Best Practices в написании кода: структурирование, читаемость, повторное использование.
  • Опыт работы в продуктовой или Agile-команде.
  • Опыт разработки digital-продуктов (UX, внимание к визуальной культуре).
  • Умение архитектурно мыслить: проектировать модульные приложения и дизайн-системы, а также принципов построения клиент-серверных приложений.
  • Высокий уровень самоорганизации и ответственности
  • Способность менторить и проводить code review.
  • Навыки коммуникации с бизнесом (понимание задач маркетинга, e-commerce, аналитики).
  • Вовлечённость в проект, ориентация на долгосрочное развитие экосистемы.

Верстка

  • Отличное знание HTML5, CSS3, Tailwind, PostCSS.
  • Опыт с CSS-модулями, SCSS, BEM, utility-first подходом.
  • Опыт с анимациями: Vue transitions, GSAP, Framer Motion.
  • Адаптивная и отзывчивая верстка (flex, grid, clamp, container queries).

TypeScript

  • Уверенное владение TS 4+: дженерики, conditional types, утилиты (Pick, Omit, Record, ReturnType, Parameters).
  • Опыт написания типобезопасных composables и хуков.
  • Типизация API-запросов и данных.
  • Настройка строгого режима strict и работа без any.
  • Опыт написания utility-types (DeepPartial, DeepMerge и пр.).

Vue 3.5

  • Глубокое понимание Composition API: ref, reactive, computed, watch, watchEffect.
  • Продвинутые приёмы: shallowRef, customRef, markRaw, shallowReactive, оптимизация реактивности.
  • Умение грамотно использовать provide/inject, expose, динамические компоненты.
  • Работа со slots (scoped slots, dynamic slots).
  • Контроль жизненного цикла (onMounted, onBeforeUnmount, onUpdated и т.д.).
  • Оптимизация рендеринга (v-memo, v-once, key, fragment).
  • Опыт оптимизации производительности (code-splitting, lazy-loading, prefetch).

Nuxt 4

  • Глубокое понимание архитектуры Nuxt 4 (Nitro, auto-import, серверные маршруты).
  • Работа с useAsyncData, useLazyAsyncData, useFetch, их кэширование и переиспользование.
  • SSR / SSG: отличия, гибридные стратегии, генерация статики.
  • Опыт разработки middleware, plugins, composables для переиспользования логики.
  • Опыт написания Nuxt-модулей.
  • Работа с runtime config, layouts, error boundaries.
  • Использование Nuxt hooks (nitro:config, app:created и т.д.).
  • SSR кеширование (HTTP кеши, API кеш, revalidation).

Оптимизация

  • Prefetch / Preload ресурсов.
  • Оптимизация Core Web Vitals (LCP, FID, CLS).
  • Lighthouse 90+ (performance, SEO, accessibility).
  • Code-splitting, динамический импорт, lazy-loading.
  • Оптимизация рендеринга (Suspense, hydration strategies).
  • Оптимизация изображений: lazy loading, Nuxt image, WebP / AVIF.

Тестирование:

  • Unit-тесты: Vitest, Vue Test Utils.
  • E2E-тесты: Playwright / Cypress.
  • Storybook / Histoire для UI.
  • ESLint + Prettier + Husky + Lint-staged (код-стайл).

DevOps:

  • Настройки мониторинга (Sentry, LogRocket).
  • Опыт работы с Vite: кастомные плагины, оптимизация сборки.
  • Навыки DevOps: CI/CD, Docker.

Дополнительно:

  • Знание WebGL / Three.js (для визуализаций).
  • Интеграция с Headless CMS (Directus, Strapi) и e-commerce API.
  • Построение многоязычных и мультисайтовых проектов.
  • Опыт разработки собственных библиотек (npm-пакеты)
  • Опыт в разработке PWA и offline-first приложений.
  • Опыт работы с Pinia: типизация стора, модульная архитектура.
  • Опыт миграций (Vue 2 → Vue 3, Nuxt 2 → Nuxt 3, Nuxt 3 → Nuxt 4).

Что мы предлагаем:

  • Оформление в аккредитованную ИТ-компанию.
  • Работай, как тебе удобно: из офиса (у нас они в Москве, Брянске и Ростове-на-Дону) или удаленно в пределах РФ
  • Техника на удаленке — ноут и гарнитура за счет компании.
  • Реальный карьерный рост — большинство руководителей ИТ команд выросли в ППР.
  • Воркшопы, внутренние тренинги и доступ к обучающей платформе.
  • Оплата внешнего обучения.
  • Участие в профессиональных конференциях. Свои ИТ-комьюнити для обмена опытом.
  • ДМС с широким набором клиник, стоматологией, юристом и психологом — через 3 месяца работы.
  • Больничный — до 14 дней в год без потерь в зарплате.
  • Плюс 3 оплачиваемых выходных в год — на случай форс мажоров или чтобы передохнуть.
  • Кафетерий льгот — бонусы, которые можно тратить на спорт, технику, салоны, поездки и благотворительность.
  • Корпоративная мобильная связь.
  • Комьюнити по интересам: киноклуб, настолки и все, что вдохновляет. Вместе отмечаем праздники, дарим подарки на памятные даты.

А еще у нас есть реферальная программа: привел человека в команду — получил от 15 до 130 тыс. рублей.

Кого мы ищем

Тех, кто готов развиваться с нами и достигать целей.

Кто не боится спрашивать, если не понял.

Кто сам может предложить решение.

И кому важно, что продукт, который он делает, реально помогает людям.

Если это про тебя — давай знакомиться. Откликайся :)