Компания Фристайл

Backend-разработчик Python (Middle)

120 000 - 200 000 RUR
  • Ярославль
  • Полная занятость
  • Полный день
  • От 1 года до 3 лет
  • Python
  • REST API
  • Linux
  • Git
  • PostgreSQL

FS-TECHNOLOGY – российский производитель интерактивного сенсорного оборудования .

Наша миссия: помочь компаниям перейти на новый уровень организации бизнес процессов, посредством их автоматизации.

Мы производим, интерактивное сенсорное оборудование для всех сфер бизнеса: электронные кассиры, кассы самообслуживания, информационные киоски, интерактивные сенсорные панели, программно-аппаратные комплексы и разрабатываем программное обеспечение .

Технологический стек :

  • Язык: Python 3.11
  • Фреймворк: FastAPI
  • Асинхронность: asyncio
  • БД: PostgreSQL
  • Кэш / сообщения: Redis
  • ORM: SQLAlchemy + asyncpg
  • Валидация: Pydantic v2
  • ОС: Ubuntu Desktop (22.04 LTS)

Обязанности :

- Разработке новых программных продуктов , поддержка и развитие существующих проектов;

- Разработка и поддержание систем управления содержимым;

- Управление безопасностью приложения;

- Интеграция с внешним сервисами;

- Подготовка проектной и тех. документации;

- Анализ и решение проблем производительности приложений;

Требования:

  1. Python 3.11+
    • Опыт коммерческой разработки от 2 лет.
  2. Асинхронное программирование (asyncio)
    • Понимание event loop, корутин, конкурентного выполнения.
    • Опыт работы c async/await в реальных проектах.
  3. FastAPI
    • Разработка REST API для внутреннего взаимодействия между компонентами терминала.
    • Использование Pydantic (v2 приветствуется) для валидации данных.
    • Настройка маршрутов, зависимостей, middleware, обработка ошибок.
  4. PostgreSQL (асинхронный доступ)
    • Работа через SQLAlchemy (Async)
    • Создание и миграция схем (Alembic).
    • Поддержка локальной БД на устройстве (встроенная или в контейнере).
  5. Redis (асинхронно)
    • Использование redis в async-режиме.
    • Опыт реализации pub/sub для внутреннего взаимодействия между сервисами.
    • Кэширование данных, хранение состояния сессии, блокировки.
  6. Микросервисная архитектура
    • Понимание принципов разделения ответственности между сервисами.
    • Опыт проектирования слабосвязанных сервисов (даже на уровне одного устройства).
    • Взаимодействие через HTTP и/или Redis pub/sub.
  7. Работа в Linux (Ubuntu Desktop)
    • Уверенный пользовательский и административный уровень.
    • Настройка автозапуска приложений, permissions, пользователи.
    • Знание systemd
    • Умение настраивать окружение: разрешения, звуки, сеть, USB-устройства.
  8. Работа с touch-панелями и десктопным UX
    • Понимание особенностей взаимодействия с пользователем на терминале (ограниченный ввод, автономная работа).
  9. Интеграция с эквайрингом и платёжными системами
    • Опыт подключения к API платёжных шлюзов (например: Сбер, ТБанк, и др.).
    • Работа с эквайрингом
    • Обеспечение безопасности: токены, шифрование, защита ключей;
    • Опыт работы с Linux;
Условия:
  • Полная занятость (возможны варианты : офис, удаленная или гибридный вариант) ;
  • Оформление по ТК;
  • Полный соц. пакет,
  • Справедливая система мотивации, зависимая от личного вклада, окладно-премиальная система;
  • Отличный дружный коллектив профессионалов, логичное и понятное обучение, легкий вход в работу;
  • Желание и умение работать в команде.