Занимаюсь серверной разработкой на Django и веду проект от самой первой миграции до рабочего API в бою. В результате вы получаете понятный код, с которым спокойно справятся другие участники команды: структуры данных отражают реальную логику вашего продукта, ORM применяется по назначению, а запросы не начинают тормозить, когда база вырастает. Собираю REST-интерфейсы на Django REST Framework, подключаю вход по токену или сессии, добавляю постраничный вывод, фильтры и версии, а ключевые сценарии прикрываю тестами, чтобы каждое обновление на сервере проходило без сюрпризов.
Почти всё, что я делаю, опирается на Postgres, и к базе я отношусь так же серьёзно, как к самому Python-коду. Аккуратно веду миграции, ставлю индексы там, где их требует планировщик, и убираю ситуации с лишними повторными запросами, которые тихо растягивают время ответа. Для тяжёлых операций поднимаю Celery в паре с Redis: рассылка писем, сборка отчётов, вызовы сторонних сервисов и запуск задач по расписанию уходят из основного потока и не тормозят пользователя. Отдельно довожу до ума админ-панель Django, чтобы у сотрудников был удобный внутренний инструмент вместо ручного копания в таблицах.
Подход у меня прозрачный. Сначала вникаю в задачу и в данные, вместе с вами фиксирую формат API, а дальше двигаюсь короткими шагами с чистой историей правок, которую легко просматривать. Описываю эндпоинты, не оставляю пароли и ключи внутри кода и передаю результат, готовый к запуску за Gunicorn и Nginx. Нужен ли вам старт нового проекта на Django или наведение порядка в уже существующем — я беру бэкенд на себя и держу его в рабочем состоянии.
— Интерфейсы на Django и Django REST Framework
— Модели данных и Django ORM поверх PostgreSQL
— Вход, права доступа и доработка админ-панели
— Фоновые задачи и расписания на Celery
— Миграции, ускорение запросов и тесты
Почти всё, что я делаю, опирается на Postgres, и к базе я отношусь так же серьёзно, как к самому Python-коду. Аккуратно веду миграции, ставлю индексы там, где их требует планировщик, и убираю ситуации с лишними повторными запросами, которые тихо растягивают время ответа. Для тяжёлых операций поднимаю Celery в паре с Redis: рассылка писем, сборка отчётов, вызовы сторонних сервисов и запуск задач по расписанию уходят из основного потока и не тормозят пользователя. Отдельно довожу до ума админ-панель Django, чтобы у сотрудников был удобный внутренний инструмент вместо ручного копания в таблицах.
Подход у меня прозрачный. Сначала вникаю в задачу и в данные, вместе с вами фиксирую формат API, а дальше двигаюсь короткими шагами с чистой историей правок, которую легко просматривать. Описываю эндпоинты, не оставляю пароли и ключи внутри кода и передаю результат, готовый к запуску за Gunicorn и Nginx. Нужен ли вам старт нового проекта на Django или наведение порядка в уже существующем — я беру бэкенд на себя и держу его в рабочем состоянии.
— Интерфейсы на Django и Django REST Framework
— Модели данных и Django ORM поверх PostgreSQL
— Вход, права доступа и доработка админ-панели
— Фоновые задачи и расписания на Celery
— Миграции, ускорение запросов и тесты