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

Middle Python Back End Engineer

Поділитися

Про проект:

Shafa.ua — майданчик для купівлі та продажу брендових речей. Місце в інтернеті, куди українці приносять зайві речі після “розвантаження гардероба” і приходять за обновками.

Мета – зробити брендові речі доступними для кожного українця. Відтак на Shafa.ua можна купити річ за ціною двох квитків у кіно.

Є у команди і глобальна місія – розвивати в Україні культуру свідомого споживання, допомогти українцям не викидати речі в хорошому стані, а передавати їх новим власникам.

Про команду:

3 Product managers, 5 Full stack, 1 Front-end, 2 Android, 2 IOS, 1 Manual, 1 Automation QA, Product Designer, Product Analytic

Shafa.ua в цифрах:

~ 3 млн користувачів

~ 15 млн товарів

~ до 3000 rps

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

Front End: 

React, Apollo/GraphQL, Typescript, CSS modules, Jest 

Back End: 

Моноліт: Python3/Django, PostgreSQL, ElasticSearch, Kubernetes 

Основні мікросервіси: async Python3, GRPC, PostgreSQL, Node.js, Apollo server

 

Більше деталей:

  • Shafa.ua – це Mobile First проект, API якого реалізовано на GraphQL. Основа проекту це монолітне рішення в якому використовуємо: Python, Django, Celery. Крім моноліту в продакшені вже 6 мікросервісів, в одному з них використовуємо Machine Learning модель.
  • Частина інтерфейсу працює на jinja templates але новий функціонал, переважно, пишеться на React з використанням GraphQL.
  • Використовуємо: ElasticSearch, PostgreSQL, Redis, Memcached, RabbitMQ etc. Кластер ElasticSearch доволі великий і займає понад 90% від усієї інфраструктури.
  • Пишемо дуже багато тестів і радіємо життю (api покрито ~100%).
  • Все це щастя крутиться в Kubernetes. Команда розробки сама займається інтеграцією CI і деплоем проекту на продакшн.

До чого ми прагнемо:

  • розвиватися у бік мікросервісної архітектури
  • перевести front-end на SPA

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

  • знає Python, не заточений під конкретний фреймворк
  • має досвід 2+ років web розробки, розуміє що таке мікросервісна архітектура та має досвід її застосування
  • впевнено працює з базами даних PostgreSQL (або аналогами): транзакції, індекси, оптимізація складних запитів – не повинні бути проблемою
  • має уявлення, що таке NoSQL бази даних та пошукові движки (ElasticSearch)
  • має досвід роботи з Docker / Kubernetes
  • з продакт інженерним підходом до вирішення задач

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

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

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

  1. Ми чекаємо ваше резюме. Далі воно потрапляє на розгляд технічним фахівцям. 
  2. Якщо резюме буде відібрано, ми домовимося з вами про зручний час для знайомства в Google Meets для обговорення вакансії (30 хвилин). 
  3. Якщо після знайомства нам взаємно цікаво продовжувати спілкування, ми домовимося про зручний час для технічного співбесіди (1,5 години). 
  4. Фінальна співбесіда з Продакт менеджером і СТО

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

a.alyksiuk

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

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

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

WATEVOcast — підкасти від наших розробників

EVO Opensource

hiku

бібліотека для побудови веб-серверів з
GraphQL та подібними мовами запиту

grpclib

бібліотека для написання сервісів на python3/asyncio та протоколом http2/gRPC (grpc.io)

ttag

бібліотека для інтернаціоналізації в JavaScript

elasticmagic

конструктор запитів в ElasticSearch,
подібний до SQLAlchemy

create-aio-app

the boilerplate for a quick start with aiohttp

aioredis

redis client for Python asyncio

lets

таск-Раннер, зручний інструмент для опису і запуску cli-команд в проектах (альтернатива Make)

evokit

React компоненти для розробки веб-інтерфейсів

Coming soon...

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