• Web-розробка

Middle Python Back End Software Engineer

Поділитися

Про проект:

Проект Prom.ua компанії EVO в пошуках Middle Python Back End Software Engineer.

Prom.ua один з лідерів серед торгових майданчиків в Україні, більше 50 000 продавців і 112 000 000 пропозицій, кожна 5-а гривня в уанеті витрачається на prom.ua.

Prom.ua в цифрах

  • по навантаженню 20 млн переглядів сторінок в день (260 млн подій при цьому)
  • 100 млн запитів на пошукову видачу щомісяця
  •  трафік в місяць близько 90 млн сесій
  •  в онлайні максимум одночасно 17к користувачів

Про команду:

Ми відповідаємо за роботу backend частини маркетплейса prom.ua. Найактивніші напрямки –  це розробка єдиного графа для web і mobile, інтеграції з кластером аналітики в рамках проекту “Розумний пром”, розвиток SEO, поліпшення продуктивності роботи додатків і утилізації ресурсів в Kubernetes. Моніторинг і безперервне поліпшення продукту і кодової бази.

Склад команди:

  • 1 Product Manager
  • 1 Team Lead
  •  2 Middle FullStack Developer
  • 2 QA Automation
  • 3 QA

Технічний стек проекту, що вже використовуємо:

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

Бази даних: PostgreSQL, Redis, Kafka, ElasticSearch, MongoDB, ClickHouse, Kafka

Інфраструктура: Self-hosted Kubernetes, Helm, Prometheus, Kibana, Grafana

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

  • Моноліт написаний на Python 3, стабільно оновлюємо до нових версій. Як ORM використовуємо SQLAlchemy, для асинхронних завдань Celery. Для побудови GraphQL сервера, використовуємо нашу розробку  hiku. Переводимо бізнес логіку на async / await, підключаємо її до нашого GraphQL. Більшість даних зберігається в PostgreSQL, міграції автоматичні;
  • Розділяємо на мікросервіси наш моноліт, використовуємо Go і Python, без фанатизму, тільки якщо це буде доцільно;
  •  Frontend написаний на JS, використовується ReactJS і ряд інших популярних бібліотек. У нас своя розробка для роботи з SSR, написана на JavaScript. Фронтом як правило займається окрема команда, ми активно з ними співпрацюємо;
  • Синхронна взаємодія загалом REST/GRPC;
  • Один з нових проектів створено як ізоморфний додаток, використовуємо next.js з TypeScript.

Що важливо для даної ролі в проекті:

  • Важливо розуміти принципи роботи web і високонавантажених web сервісів, мати досвід в побудові надійних систем;
  • Розуміти як розподіляти навантаження між сервісами, як шерити дані між ними. Як ці дані зберігати і здійснювати до них безперервний доступ;
  • Важливо мати досвід роботи з реляційними базами даних. Вміти знаходити вузькі місця і оптимізувати запити;
  • Деплой і моніторинг організований на базі Kubernetes, Helm, Prometheus, Grafana, Kibana. Потрібно буде освоїтися з цими технологіями для роботи над проектом;
  • Розуміти основи Computer Science і розуміти їх прикладний сенс;
  • Мати бажання навчатися і розвиватися, працювати в команді і бути її частиною.

Задачі в проекті:

  • Пул завдань, спрямованих на поліпшення UI, в рамках одного з проектів;
  • Розвиток функціоналу Shop & Shop в каталозі (Приклад сторінки);
  • Розвиток напряму персоналізації, робота з командою Big Data & Data Science;
  • Поліпшення SEO каталогу;
  •  Розширення нашого GraphQL сервера;
  • Оптимізації метрик Web Vitals;
  • Робота над мікросервісною архітектурою.

З нами ви:

  • Будете йти в ногу з прогресом, розробляти web рішення тільки на актуальних технологіях. Наш Tech Stack – це сучасні і популярні мови і фреймворки. Багато наших фахівців працюють більше 5 років, і мають величезний досвід розробки. Ми слухаємо голос кожного члена команди, відкриті для ідей і нових напрямів.
  • Будете будувати процеси всередині команди, які не пригнічують, а допомагають (без дурних мітингів). Ми робимо складно тільки там де Highload або там де має бути складно.

Як у нас проходить підбір та співбесіди?

  • Онлайн-дзвінок (тривалість 30 хвилин). Тімлід і PM познайомляться з вами і вашим досвідом, поділяться деталями про вакансію, дадуть відповіді на ваші запитання. У разі взаємної зацікавленості, з радістю продовжимо на технічному інтерв’ю;
  • Технічне інтерв’ю (тривалість 1,5 години). Обговоримо всі важливі питання по стеку, досвіду, завданням.

Даємо зворотній зв’язок протягом 24 годин

Анастасія з People Team

a.aman

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

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

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

ЯКЩО НЕ ЗНАЙШЛИ ВІДПОВІДНУ ВАКАНСІЮ, АЛЕ В МАЙБУТНЬОМУ ХОЧЕТЕ ПРИЄДНАТИСЯ ДО НАШОЇ КОМАНДИ, ВІДПРАВТЕ РЕЗЮМЕ НА hello@evo.company