Python Developer
Москва, РоссияМиддл
Удаленная работа
Опыт работы от 3 до 5 лет
Опыт работы от 3 до 5 лет
Есть файл резюме (защищен)
Короткая ссылка: gkjb.ru/ggCp
О себе
На данный момент Python Developer.
Мои компетенции и опыт
Разрабатывал backend платформы промышленной безопасности для шахт, разрезов и обогатительных предприятий. Спроектировал и реализовал 20+ интеграций с внешними системами, обеспечивающих мониторинг показателей в реальном времени на 30+ объектах. Клиенты - ЕВРАЗ, ЭЛЬГА, Северная звезда и др.
Стек: Python, Django, Django REST Framework, FastAPI, Celery, Redis, PostgreSQL, WebSocket, pytest, Docker, Linux (Ubuntu), Git, GitHub Actions, Nginx, Gunicorn, Modbus TCP, SOAP API, REST API, MS SQL, Swagger (drf-spectacular), django-silk, Flower.
- Ускорил время ответа ключевых эндпоинтов в нужен доступ к резюме раз: заменил медленный ORM запрос на raw SQL с CTE (2 сек -> 50 мс), применил prefetch_related (106 запросов в БД -> 7, 2 сек -> 100 мс), устранил устаревшую статистику PostgreSQL через ANALYZE (5 сек -> 180 мс).
- Спроектировал и разработал Celery таску с автоперезапуском, побатчевым удалением и накопительной статистикой через Redis: удалил 352 млн строк устаревших данных из продакшен БД за 2 часа без остановки платформы. Устранил переполнение очереди Redis (1 млн+ сообщений) и блокировки БД.
- Перевёл управление Celery задачами с правки .env и рестарта Docker контейнеров на динамический REST API с UI в паре с фронтендером для администраторов: сократил время изменения конфигурации с ~10 минут до мгновенного, исключил остановку платформы. Удалил 15+ переменных окружений и 7 условных блоков из Celery Beat.
- Устранил критическую уязвимость каскадного удаления легаси кода, при удалении сервера могли быть потеряны 150+ сигналов: добавил валидацию удаления и обновления серверов, исправил обработку входных данных от фронтенда, покрыл тестами.
- Самостоятельно расширил поддержку строковых показателей с датчиков в существующей системе мониторинга, расширил схему БД (3 таблицы), добавил определение уровня тревоги, запись в события и отчёты строковых значений. Ранее система учитывала только числовые значения. Запустил в продакшен без нарушения работы системы.
- Перевёл доставку событий мониторинга с двухэтапной схемы (WebSocket сигнал -> GET запрос данных) на прямую пуш модель Django Channels: новые события, закрытие старых и обновление состояний доставляются клиентам мгновенно с первого сообщения, без дополнительных запросов к БД.
- Инициировал и реализовал сервис отправки email с управлением настройками через БД и fallback на конфиг приложения: устранил хардкод учетных данных, смена провайдера без перезапуска платформы.
- Проводил выездное развёртывание системы на производственных объектах клиентов, включая офлайн обновление через экспорт/импорт Docker образов по SSH используя Total Commander.
Основные интеграции: ASC, Traccar, SOWA, Wialon, Scout, SafeZone, RealTrac, Omnicomm, GlONASSsoft, ESMO, Rusguard.
Контакты:
Телеграм: нужен доступ к резюме
GitHub: нужен доступ к резюме
Есть файл резюме (защищен)
Интересные кандидаты
Мы используем куки, потому что без кук наш сайт не работал бы, другие сайты не работали бы, да и вообще весь
интернет не работал бы
