Вакансия Middle/Senior Python Software Engineer

1 вакансия
Специализация: Python
Уровень: Middle
Опыт: 2 года
Уровень английского: Не важно
Зарплата: от $3000
Город: Минск
Размер компании: 61
Возможна удалённая работа: Да

Deal.by — ведущий маркетплейс Беларуси. У нас предприниматели создают сайты, размещают товары в каталоге Deal.by и получают доступ к миллионной аудитории покупателей.

Наша цель — создавать возможности для развития предпринимательства в Беларуси.

Deal.by является частью семьи маркетплейсов продуктовой ITкомпании Evo.

Про технический департамент в EVO и про стек в проекте Deal.by:Основные языки программирования, которые мы используем это Python 3.8 (сервисы на aiohttp), и JavaScript.

Есть несколько новых продуктов, написанных на Go, Rust, Node.js (JS/TS), Scala, Kotlin. Стандартная база данных для наших проектов — PostgreSQL, также используем MongoDB .

Для поиска используем ElasticSearch. Под решение отдельных задач существуют свои плагины. Работаем с Clickhouse.

SPA приложения строим на ES6+, React. Двигаемся в сторону GraphQL + Apollo и плавно мигрируем на серверный пререндеринг (SSR). Часть проектов написана на TypeScript. Для сборки JS модулей используем webpack, CSS стили — CSS Modules.

Из общих инструментов используем:

Docker, Kubernetes, Istio, Prometheus, Grafana, Gitlab CI, Kibana, Redis, Memcached.

Все что нужно для крупного продакшн проекта: логгинг (kibana),метрики, мониторинг (grafana), очереди задач (celery+RabbitMQ), Kafka.

Свой биллинг, CRM/админка, рекламная сеть, чат, обертки над эластиком, своя реализация GraphQL-сервера на Python.

Основные направления команды:

  • работа с множеством внутренних и внешних интеграций с финансовыми системами

  • интеграция логистов, добавление новых способов доставки

  • улучшение ранжирования в каталоге, повышение конверсий в целом по маркетплейсу

  • интеграции с внешними сервисами, привлечение партнеров, синхронизация товаров

  • проверка гипотез по улучшению пользовательского (покупатели и компании) опыта

  • работа с трафиком (платным и органическим)

Что важно для данной роли:

  • важно понимать принципы работы высоконагруженных web (и не только) сервисов в ситуациях, когда один сервер не способен справиться с нагрузкой.

  • понимать как распределять нагрузку между сервисами, как шарить данные между сервисами. Как эти данные хранить и осуществлять к ним непрерывный доступ.

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

  • для полнотекстового поиска используется ElasticSearch. Для работы необходимо понимать, как работать с полнотекстовыми поисковыми движками.

  • деплой и мониторинг организован на базе Kubernetes, Helm, Prometheus, Grafana. Нужно будет освоиться с этими технологиями для работы над проектом.

Задачи на ближайшее время:

  • разработка и поддержка экосистемы платежей

  • улучшение ранжирования товаров в каталоге

  • интеграция внутренних сервисов в кабинет продавца и покупателя

  • добавление новых способов доставки

  • улучшение пользовательского опыта в работе с корзиной

  • разработка и поддержка сервиса для сертификации продавцов

  • поддержка сервисов для работы с платным трафиком

  • развитие публичного API для продавцов

  • поддержка API для мобильного приложения продавца и покупателя

  • рефакторинг и поддержка остальных сервисов команды

Чем интересны эти задачи с технической стороны:

  • проектированием сложных систем для взаимодействия с внешними интеграциями и партнерами

  • использованием современных технологий для построения новых сервисов и продуктов

  • разработкой новых сервисов с нуля

  • разработкой кросс-платформенных сервисов и решений

  • работой с высоконагруженным проектом

9a1f8f812f459984d445481be3f142be
Представитель компании
Вакансии компаний