Backend Node.js разработчик

Дата размещения вакансии: 07.11.2024
Работодатель: X5 Digital
Уровень зарплаты:
з/п не указана
Город:
Москва
Требуемый опыт работы:
От 3 до 6 лет

X5 Digital - это 300 000 заказов ежедневно, highload, микросервисная архитектура и сильнейшая Node.JS команда в России.
Наши сервисы принимают 20 000 заказов каждый час, управляют работой 15 000 сборщиков в 4 000 магазинах и дарксторах, управляют работой 12 000 курьеров - всё это для того, чтобы каждый наших клиентов мог получить свой заказ вовремя.

У нас сильные команды разработки, большинство наших тимлидов и техлидов выросли внутри компании из разработчиков. Мы открыты к новому, идеи сотрудников очень ценны для нас: мы регулярно внедряем новые технологии, рефакторим старый код, выделяем новые микросервисы и новые команды, поэтому мы постоянно находимся в поиске новых и перспективных коллег.

Наш стек:
Для backend: Node.js (свой фреймворк/Nest.js), набор внутренних библиотек

Для хранения данных: MongoDB, ElasticSearch, Redis, ClickHouse

Брокеры сообщений: Kafka, RabbitMQ

Для мониторинга: Grafana, Kibana

Рабочие инструменты: Docker, Gitlab, Jira/Confluence

Автоматизация развертывания и оркестрация: Ansible, Gitlab, Kubernetes, своя обвязка PaaS (деплой одной кнопкой)

Чем предстоит заниматься:

  • проектированием архитектуры микросервисов;
  • разработкой новых и поддержкой текущих микросервисов на Node.js;
  • проектированием инструментов и механизмов взаимодействия модулей системы;
  • проведением рефакторинга приложений на Node.js;
  • проектированием сервисов, структур данных, способов взаимодействия с фронтом, другими сервисами;
  • обеспечением качества кода и стабильности сервисов;
  • отладкой и тестированием приложения: автоматизированным и ручным;
  • оптимизацией сервисов под высокие нагрузки (и да, у нас самый настоящий highload!).

Пожелания к твоему опыту и знаниям:

  • уверенное знание Node.js - опыт от 2х лет;
  • умение дебажить, находить причину нестандартных проблем;
  • MongoDB-запросы, построение индексов;
  • понимание принципов работы с Docker, Kubernetes;
  • написание автотестов;
  • понимание принципов построения и взаимодействия распределенных систем;
  • готовность плотно работать с коллегами внутри команды и с коллегами из смежных команд: product-менеджером, аналитиками, разработчиками, тестировщиками, коллегами из платформы, и др.

Будет плюсом:

  • опыт работы с миграциями данных;
  • опыт настройки Nginx;
  • опыт написания пайплайнов Gitlab CI;
  • опыт работы с Nest.js;
  • опыт эксплуатации и оптимизаций в высоконагруженных системах;
  • опыт мониторинга сложных систем.