Перейти к содержимому

Разработка

Бэкенд и API

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

Ответ на заявку
в течение 24 часов
Первый звонок
30 минут, без обязательств
Первая рабочая версия
через 2–3 недели

Процесс

Что происходит и когда

Работа разбита на этапы, у каждого назван результат. Вы видите его сами, а не узнаёте о нём из отчёта.

  1. Дни 1–4

    Данные и операции

    Разбираем не экраны, а данные и операции: какие сущности живут в системе, кто ходит к серверу — браузер, приложение, чужой сервис — и что обязано отработать сразу, а что может подождать в очереди. Итог — список эндпоинтов первой версии: срок считается по нему, а не по описанию системы.

    На выходе — Список эндпоинтов первой версии

  2. Дни 5–10

    Контракт до кода

    Контракт пишется раньше кода: таблицы и связи, эндпоинты, единый формат ошибки, версии. Отдаём его до того, как сервер заработал, — веб-клиент и мобильный начинают писаться по описанию, а не ждут живой эндпоинт. Здесь же решается, где лежат данные и что из них нельзя терять ни при каком сбое.

    На выходе — Описание API, по которому пишутся клиенты

  3. Со 2-й недели

    Эндпоинты группами

    Эндпоинты выходят группами, и каждую можно дёргать самому — на стенде, с документацией, а не в пересказе. Тяжёлые операции сразу уезжают в очередь, а кэш ставится туда, где запрос действительно медленный: поставленный заранее, он потом мешает найти настоящую причину.

    На выходе — Рабочий стенд с документацией

  4. Перед выкаткой

    Выкатка и отказы

    Docker, NGINX, SSL, миграции с планом отката, логи и метрики. Отдельно проверяем поведение при отказе соседей: что отдаёт API, когда база отвечает медленно, а платёжный провайдер не отвечает вовсе. Без этого сервер работает ровно до первого чужого сбоя.

    На выходе — Миграции с планом отката, логи и метрики

  5. После запуска

    Совместимость версий

    API живёт дольше, чем клиенты, которые к нему ходят. Поэтому новые поля и методы добавляются так, чтобы старое приложение продолжало работать, а ломающее изменение выходит отдельной версией и с датой, к которой старая выключится.

    На выходе — Новые поля без поломки старых клиентов

Что входит в работу

  • Схема данных и миграции

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

  • Контракт API до кода

    список эндпоинтов, форматы запроса и ответа, единый вид ошибки, номера версий и правила обратной совместимости.

  • Бизнес-логика продукта

    расчёты и статусы, проверка входящих данных, правила, которые нельзя обойти запросом мимо интерфейса.

  • Доступ и роли

    вход по токену, разделение данных между организациями, служебные ключи для систем, которые ходят к API напрямую.

  • Очередь для долгих операций

    повторные попытки при сбое, задачи по расписанию, отчёты и выгрузки, которые не держат запрос.

  • Работа при отказе соседей

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

Что нужно от вас

  • Операции, которые сервер обязан выполнять, и те, кто к нему обращается, — браузер, мобильное приложение или чужой сервис.
  • Доступ к существующей базе и её схеме, если сервер встраивается в работающий продукт, а не пишется с нуля.
  • Ожидаемые объёмы работы в цифрах — сколько запросов и записей в день и где бывают пики.

Что обычно спрашивают

Контакты

Пришлите описание задачи

Ответ с объёмом работ, сроками и оценкой бюджета придёт в течение 24 часов.

Первый звонок — 30 минут, без обязательств с вашей стороны.

  1. 01

    Вы описываете задачу

    Пять вопросов в форме или письмо в свободной форме — как удобнее.

  2. 02

    Мы отвечаем за сутки

    С объёмом работ, сроками и оценкой бюджета — по тому, что вы рассказали.

  3. 03

    Созваниваемся на 30 минут

    Уточняем непонятное. Ни к чему вас не обязывает.