Тимур Мустафин, тимлид команды «Клиентские страницы»
«Твои решения напрямую повлияют на количество заказов и рост выручки компании»
Привет! Я Тимур, тимлид команды «Клиентские страницы» в Профи. Сейчас нас шестеро: четыре разработчика, продакт и я. Иногда подключаем продуктовых и маркетинговых аналитиков. Мы отвечаем за фронт большей части страниц и компонентов сервиса, SSR и часть GraphQL API.
У нас десятки миллионов клиентских страниц. Одновременно нужно заботиться о продуктовых и технических показателях. С продуктовой точки зрения, мы разрабатываем удобные и понятные блоки, которые помогают увеличивать трафик и количество заказов. Например, во время пандемии сделали блок с дистанционными услугами. Это увеличило трафик в четыре раза.
С технической точки зрения занимаемся глубокой оптимизацией страниц. Все очевидные методы оптимизации мы уже используем. Чем дальше, тем сложнее и интереснее придумывать новые.
В этом году мы перенесли большую часть нашего фронта с устаревшего flow на современный TypeScript и Next.js, поэтому с legacy-кодом будешь сталкиваться редко. Стратегически идём в сторону единого стека на TypeScript.
Профи быстро растёт, задач становится больше. Поэтому ищем ещё одного разработчика. Первое время предстоит разрабатывать новые блоки и клиентские страницы, когда освоишься — перейдёшь к оптимизации скорости их загрузки.
Наш стек:
- React: хуки, функциональный стиль.
- На TypeScript написан весь код.
- Next.js — основной фреймворк, работающий на Node.js.
- React Query & React Context для управления состоянием.
- GraphQL — коммуникации с бэкендом.
- Тестируем UI c помощью Cypress, а unit-тесты пишем на Jest.
- Код проекта храним в монорепозитории.
- Кэшируем данные в Redis.
Зачем тебе к нам
- Влиять на рост компании и видеть результаты своей работы в цифрах. Например, с 2017 года SEO-трафик ежегодно растёт на 50%.
- Создавать «фронт мечты». Ориентир разработки в этом году — улучшить технологическую платформу, чтобы легче и быстрее вносить продуктовые изменения. Мы серьёзно пересматриваем все процессы и технологии, составляем новые технологические стандарты. Важно мнение каждого разработчика.
- Заниматься тем, что интересно. Можно углубиться во фронтенд, попробовать себя в бэкенде, помогать тимлиду в декомпозиции и планировании задач или улучшать процессы и проводить встречи. Вариантов для развития много.
Чем предстоит заниматься
- Создавать новые блоки и новые страницы на клиентской стороне. Например, сейчас разрабатываем страницы для отзывов под каждую услугу.
- Оптимизировать сборку страниц и блоков на фронте, улучшать метрики Core Web Vitals.
- Есть планы на редизайн клиентских лендингов. Тебе нужно будет разрабатывать и совершенствовать дизайн-систему. Создавать новые компоненты и добавлять их в Storybook.
- Если захочешь, сможешь попробовать себя в бэкенде на Node.js — помочь в разделении монолитного приложения на сервисы.
Что нужно, чтобы к нам присоединиться
- Опыт продуктовой разработки на TypeScript, уверенное владение этим языком.
- Знание React на уровне построения и оптимизации сложных интерфейсов. Круто, если представляешь, как React устроен изнутри.
- Опыт написания Unit и интеграционных тестов.
- Умение верстать (HTML/CSS).
- Опыт проектирования и выбора технологий.
- Опыт работы с монорепозиторием.
- Желание делиться знаниями с коллегами, будет плюсом опыт наставничества.
- Коммуникабельность. Предстоит много общаться с другими командами.
- Осознанный подход к читаемости и производительности кода. Можешь рассказать, какие принципы работы с кодом важны для тебя.
- Отсутствие боязни залезать в бэкенд. Здорово, если знаешь Node.js.
- Будет плюсом знание GraphQL, React Query.