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

Middle Python Back End Engineer

Поділитися

Про проект:

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

На даний момент Shafa топ проект у залученні користувачів, більше 12 сторінок за сеанс відвідує в середньому користувач маркетплейса.

Стратегічна мета Shafa – стати №1 маркетплейсом продажу  б/в і нового одягу в Україні. На даний момент продукт розвивається в бік покращення якості використання: додавання доставки популярними логістами, персоналізація клієнта, розширення асортименту, впровадження платіжної системи.

У культурному плані у Shafa немає погонів і кордонів у комунікації, розвитку. Майбутній розробник не буде писати однакові фічі кожен день. Сьогодні у вас мікросервіс під платежі, завтра – підключення нового логіста чи оптимізація ElasticSearch.

Shafa.ua в цифрах:

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

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

~ до 3000 rps

Про команду:

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

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

  • 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 години). 

Рекомендуйте своїх знайомих, бонус за найм до 4000$

Чекаємо резюме з поміткою “рекомендація” на пошту a.alyksiuk@evo.company

Анастасия з 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