Python / backend

Backend, API и интеграции на Python

Нужна логика, которую не закрывает конструктор или штатная CRM? Спроектирую backend, свяжу внешние сервисы и подготовлю интерфейс, если без него не обойтись.

Обсудить техническую задачу

От бизнес-правила до работающего API

Начнем с того, какие действия должен выполнять продукт и кто имеет на них право. Оплата, доступ, остатки, документы, запуск обработки - у каждого сценария есть свои данные и ограничения. На этой основе определю модель БД, API и границы модулей. FastAPI или Django выбираю под задачу и существующий проект, а не ради списка технологий.

Интеграция бывает сложнее запроса к API

В LearnBG у движка GNU Backgammon не было подходящего API. Я написал прослойку вокруг CLI и обработку консольного вывода, чтобы анализ можно было использовать в web-продукте. Если документация сервиса не закрывает ваш сценарий, сначала проверю доступные способы интеграции и ограничения. Готового SDK может не быть, но это еще не означает, что задача не решается.

Долгие операции отдельно от пользовательского запроса

Анализ партии или обработка пачки файлов не должны заставлять интерфейс ждать открытого HTTP-запроса. В LearnBG для этого используются отдельный воркер, очередь RQ, Redis и хранение файлов в S3. При проектировании вашей системы разберем, какие операции выполняются сразу, а какие требуют фонового задания, статуса и уведомления о результате.

Не только написать, но и встроить

API может обслуживать React-интерфейс, Telegram Mini App или чужую систему. Нужно договориться о формате данных, авторизации, ошибках и совместимости. Если backend подключается к уже работающему продукту, начну с существующих контрактов и зависимостей. Изменение одного сервиса не должно незаметно ломать другой.

Техническая часть после первого запуска

Код нужно развернуть, настроить доступы, хранение конфигурации и работу с БД. Эти задачи не перекладываю на заказчика, который пришел за работающим решением. Границы инфраструктурной работы и последующей поддержки обсудим заранее. Можно начать и с отдельной интеграции в чужом проекте, не заказывая новый backend целиком.

Что прислать для начала

  • Какой пользовательский или бизнес-сценарий нужно реализовать
  • Документация внешнего API, если она есть
  • Описание существующего стека и ограничений без секретных ключей

Если чего-то из списка нет, это не мешает начать разговор. Напишите своими словами, что происходит.