• Розробка продукту
  • Web-розробка

Middle Python Software Engineer

Поділитися

 

 

Prom.uaнайбільший маркетплейс України, де продаються понад 100 млн товарів від десятків тисяч підприємців з усієї країни.

 

На Prom.ua:

  • кожен покупець може знайти все, що потрібно, за найкращою ціною: від зубної щітки до культиватора для саду та городу.
  • кожен підприємець може продавати товари в каталозі маркетплейса, на сайті, створеному на платформі Прома та у мобільному додатку “Prom покупки”.

Prom.ua в цифрах:

  • щодня маркетплейс відвідують 4,8 млн осіб
  • на маркетплейсі працюють понад 60 тис. компаній
  • у каталозі 102,5 млн товарів

 

Про команду:

2 Python FullStack, 2 FrontEnd Dev, Team Lead, 2 Automation QA, 1 Manual QA, Data Analyst, Product Designer, Product Manager

 

Основні напрямки команди:

  • розробка нового та підтримка поточного функціоналу кошика
  • інтеграція та підтримка доставок та оплат
  • замовлення і все, що з ним пов’язано
  • кабінет покупця (замовлення, гаманець)
  • акції та промокоди на порталі
  • бани, антіфрод форм

Технічний стек проєкту:

 

Мови програмування: Python 3, JS

Сервіси: PostgreSQL, Redis, Kafka, ElasticSearch, ClickHouse, MongoDB

Інфраструктура: Self-hosted Kubernetes, Openstack.

 

І ще трохи деталей:

  • Портал prom.ua працює в Kubernetes як сукупність незалежних сервісів. Налагодженні системи логування (kibana), моніторингу (prometheus/grafana), CI/CD (gitlab).
  • Більша частина сервісів написана на Python 3.10 (синхронний та асинхронний)
  • Інша частина на NodeJS.
  • Міжсервісна комунікація налагоджена через gRPC, REST, Kafka.
  • У якості бази даних використовується PostgreSQL
  • Для зберігання великих об’ємів даних — ClickHouse. Також MongoDB в основному для файлів (gridfs).
  • Client side написано на JavaScript. З використанням ReactJS та інших відомих  бібліотек.

Наш підхід до процесу розробки:

  • Технічний борг в нашому проєкті один з пріоритетів на який завжди виділяється час.
  • Команда працює за гнучкою методологією, не боїмося підлаштовувати процеси під себе
  • У кожного розробника є глибоке розуміння всієї системи та інфраструктури, розробка це не тільки про код, але і про особисте зростання та культуру
  • Ми цінуємо work-life balance
  • Немає великої кількості мітингів

Що важливо для ролі? 

  • Від 3 рокiв комерційного досвіду;
  • Розуміння базових алгоритмів та структур даних;
  • Знання Python, не бути заточеним під конкретний фреймворк;
  • мати досвід web/api розробки, розуміти що таке мікросервісна архітектура та досвід її застосування;
  • Мати досвід асинхронного програмування на Python;
  • Впевнено працювати з базами даних PostgreSQL (або аналогами): транзакції, індекси, оптимізація складних запитів;
  • Розуміти, як розподіляти навантаження між сервісами, як розподіляти дані між сервісами. Як ці дані зберігати та здійснювати до них безперервний доступ;
  • Деплой та моніторинг організований на базі Kubernetes, Helm, Prometheus, Grafana. Потрібно буде освоїтись із цими технологіями для роботи над проєктом;

 

Як у нас проходить підбір на дану позицію?

  • Знайомство (тривалість 30 хв)
  • Технічне інтерв’ю (тривалість 1,5 години). Обговоримо всі важливі питання по стеку, досвіду, завданням.
  • Фінальне інтерв’ю за необхідністю (тривалість 30 хвилин) 

Таня Сілецька з People Team

Таня

Хочу до вас у команду

Прикріпити резюме

Максимум 1 файл розміром до 5 МБ

Схожі вакансії

ЯКЩО НЕ ЗНАЙШЛИ ВІДПОВІДНУ ВАКАНСІЮ, АЛЕ В МАЙБУТНЬОМУ ХОЧЕТЕ ПРИЄДНАТИСЯ ДО НАШОЇ КОМАНДИ, ВІДПРАВТЕ РЕЗЮМЕ НА [email protected]