Middle Python Software Engineer (Prom.ua)

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

Про команду:

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;
--у якості бази даних використовується PostgreSQ;
--для зберігання великих об’ємів даних — 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 хвилин)

About EVO

EVO — продуктова українська IT-компанія. Центральний офіс знаходиться в Україні (Київ). Ми працюємо віддалено.
EVO - 1200+ співробітників, технічний департамент - понад 300 осіб, розробників понад 200 осіб.

Місія EVO - створювати можливості для розвитку підприємництва. Ми робимо маркетплейси для онлайн-шопінгу і замовлення послуг: Prom.ua, Satu.kz, Bigl.ua, IZI.ua, Kabanchik.ua, Shafa.ua. Створили сервіс цифрових рішень для бізнесу "Вчасно", інтернет-майданчики для проведення державних та комерційних торгів і аукціонів - Zakupki.Prom.ua і Аукціоні.Prom. Є свій Фінтех продукт.
Наші волонтерські проекти:
- платформа для безпечної волонтерської співпраці - Pidmoha, вона згуртовує в одному місці волонтерів та організації, які потребують допомоги або готові допомогти у різних категоріях: медична, допомога тваринам, військова, транспорт, житло та гуманітарна допомога
- HelpVolunteer - збори на волонтерські потреби для наших захисників і всіх українців.

Щомісяця, на маркетплейсах EVO люди роблять більш 2 млн замовлень. Кожен другий інтернет-покупець України купує на наших майданчиках.

Про технічний департамент EVO:
Основні мови програмування, які ми використовуємо це Python 3, JS / TS, Golang. Є проекти на Rust, Scala, Kotlin.

Стандартна база даних для наших проектів - PostgreSQL, також використовуємо Redis, MongoDB.
Для пошуку використовуємо ElasticSearch. Під вирішення окремих завдань існують свої плагіни. Працюємо з Clickhouse. В якості черг повідомлень RabbitMQ або Kafka.
SPA програми будуємо здебільшого на . Для складання JS модулів використовуємо webpack, CSS стилі - CSS Modules.


З інфраструктурних інструментів використовуємо:
Gitlab, Docker, Kubernetes, Istio, Prometheus, Grafana, Kibana.
Все, що потрібно для великого продакшн проекту: логінг (kibana), метрики, моніторинг (grafana)

Стек мобільних технологій:
Мови: Swift і Kotlin. Нові проекти пишемо на Flutter.

Наш продакт інженерний підхід в EVO:
Ми працюємо крос-функціональними командами до 10 осіб. Зазвичай, команда складається з продакт-менеджера, тімліда, розробників, тестувальників і дизайнерів. У деяких командах свої дата-аналітики, маркетологи та інші фахівці, які потрібні команді.
Компанія продуктова, тому нам важливо щоб розробник був продуктово орієнтований. Це означає, що розробник не просто виконує поставлене завдання, а й розуміє проблеми бізнесу, які вирішує це завдання і може запропонувати більш оптимальне рішення, якщо таке існує, або показати, що ця задача не має цінності.


Про технічне ком'юніті в EVO:
записуємо подкасти (слухати podcasts.google або тут apple podcasts)
ведемо свій телеграм канал (https://t.me/evodevclub)
організовуємо внутрішній dev-club (наші внутрішні конференції, частину з них викладаємо в світ)

Трохи наших доповідей:
Доповідь про роботу з монорепозиторіями https://www.youtube.com/watch?v=7la-K9C2LIo
Доповідь Інтро в тайпскріпт https://www.youtube.com/watch?v=Yd_otKlrf1I
Останні зовнішні доповіді:
Використання Kafka у ваших python-додатках https://www.youtube.com/watch?v=YKXCRs_P-xU
ORM vs GraphQLhttps: //www.youtube.com/watch? V = 67KuT57I_7A

є свій open source (ось тут детальніше https://evo.company/ru/razrabotka-produkta/)
робимо свій вклад в розвиток студентських ком’юніті, активно проводили літні інтернатури.

Company website:
http://evo.company/

DOU company page:
https://jobs.dou.ua/companies/evo/

Job posted on 14 September 2022
41 views    8 applications


To apply for this and other jobs on Djinni login or signup.
  • Category: Python
  • PostgreSQL, Kubernetes, Prometheus, Grafana, Kafka, ClickHouse
  • 3 years of experience
  • maps_home_work Full Remote
  • shopping_basket Product
  • explore Ukraine
  • public Only candidates from Ukraine