fullstack-разработчик для маркетплейса

грейд
senior
формат
удалённо
страна
Россия
опубликована
сегодня

описание

Мы строим classified-маркетплейс для рынка ЕС (web + mobile), где пользователи размещают объявления о товарах, недвижимости, услугах и вакансиях, находят нужное рядом с собой и договариваются напрямую. Продукт уже работает. Бэкенд написан на Python/Django, новые сервисы пишутся на Go, и функциональность постепенно переносится туда. Поиск построен на OpenSearch. Геолокация и мультиязычный поиск лежат в основе продукта.

задачи

  • Разработка и развитие сервисов на Go, участие в постепенном переносе функциональности с Django на Go.
  • Поддержка и развитие существующего бэкенда на Python / Django / DRF.
  • Разработка фронтенда на React + TypeScript: страницы объявлений, поиск, фильтры, личный кабинет.
  • Геофункции: поиск по радиусу и bounding box, карта объявлений с кластеризацией, геокодирование адресов, работа с PostGIS.
  • Развитие поиска на OpenSearch: mappings, анализаторы, многоязычный поиск, фильтры и фасеты, геозапросы, индексация.
  • Проектирование API, межсервисного взаимодействия и фоновых задач (Kafka, Celery, Redis).
  • Работа с PostgreSQL: схемы, индексы, оптимизация запросов под большие объёмы данных.
  • DevOps: Docker, Kubernetes, Helm, GitLab CI/CD. Выкладка, диагностика по логам и метрикам (Prometheus, Grafana, Sentry), разбор упавших сборок и деплоев.
  • Тесты, код-ревью, техническая документация.

требования

  • От 5+ лет коммерческой разработки, опыт работы как на бэкенде, так и на фронтенде.
  • От 3+ лет коммерческой разработки на Go: конкурентность, контексты, обработка ошибок, тестирование, опыт сопровождения сервисов в продакшене.
  • Практический опыт с Python, Django и Django REST Framework.
  • React + TypeScript: компонентный подход, управление состоянием, работа с API, производительность интерфейса.
  • PostgreSQL и SQL: транзакции, индексы, EXPLAIN, оптимизация запросов.
  • Продакшен-опыт с OpenSearch или Elasticsearch: индексы и mappings, поисковые запросы, фильтрация, индексация документов.
  • Опыт работы с геоданными: PostGIS, geohash или geo-запросы в OpenSearch/Elasticsearch, фильтрация по расстоянию и bounding box.
  • Опыт работы с картами на фронтенде: Leaflet, Mapbox GL / MapLibre или OpenStreetMap, включая маркеры, кластеризацию и синхронизацию карты с результатами поиска.
  • Понимание микросервисной архитектуры, HTTP / REST API и асинхронного взаимодействия.
  • Опыт с Redis, очередями сообщений и фоновыми задачами.
  • Docker и основные сущности Kubernetes (Pod, Deployment, Service, Ingress, ConfigMap, Secret). Умение посмотреть статусы, события и логи подов и разобраться с причинами перезапусков.
  • Умение поправить Helm chart или values и пайплайн GitLab CI/CD, разобраться с ошибкой сборки или развёртывания.
  • Внимательность к деталям и ответственность за результат своих изменений.
  • Самостоятельность: вы доводите задачу от идеи до продакшена.
  • Умение аргументированно объяснять технические решения.
  • Понятные тикеты, комментарии к PR и документация.
  • Будет плюсом: Kafka: продюсеры, консьюмеры, гарантии доставки; Next.js / SSR и SEO для страниц объявлений; React Native или опыт мобильной разработки; Геокодинг и маршрутизация: Nominatim, Photon, Google Maps / Mapbox API; Векторный и гибридный поиск, ML-ранжирование; Prometheus, Grafana, OpenTelemetry, настройка алертов; Интеграции внешних API: платежи, переводы, телефония и подобные; Антифрод и модерация контента

условия

  • Участие в амбициозном продукте и место в core-команде.
  • Реальное влияние на архитектурные и продуктовые решения.
  • Минимум бюрократии, максимум доверия.
  • Удалённая работа.
  • Возможность последующей релокации в Европу (Люксембург, Германия, Франция, Бельгия).

навыки

похожие вакансии

статьи для разработчиков