Москва
Резюме № 56144463
Обновлено вчера
no-avatar

Стажер-разработчик бэкенда

Был вчера в 23:24
По договорённости
23 года (родился 06 октября 2002)
Москва
Условия занятости
Полная занятость
Стандартный график
В офисе/На объекте
Гражданство
не указано
Контакты
Телефон
Будет доступен после открытия
Фото, имя и контакты доступны только авторизованным пользователям

Опыт работы 1 год и 5 месяцев

    • Август 2024 – работает сейчас
    • 1 год и 5 месяцев

    Инженер цифровых решений

    АО АСЭ, Москва

    Обязанности и достижения:

    Мой основной проект — разработка системы цифровизации производственных процессов для атомной отрасли. Это распределённая high-load платформа, состоящая из множества микросервисов, которая обрабатывает данные с промышленного оборудования в реальном времени, рассчитывает метрики эффективности и предоставляет API для интеграции с другими корпоративными системами (1C, SAP-подобные системы). Архитектура и стек: Основной стек: Python 3.10+, FastAPI, PostgreSQL, Redis, Docker, Apache Airflow, Linux Архитектура: микросервисная, event-driven, с асинхронной обработкой событий Коммуникация: REST API, WebSocket для real-time данных, интеграция через REST с внешними системами Инфраструктура: GitLab CI/CD, Docker Swarm, мониторинг через Prometheus + Grafana Конкретные задачи и достижения: 1. Разработка ядра платформы — микросервиса расчёта производственных метрик Спроектировал и реализовал с нуля микросервис на FastAPI, который обрабатывает поток событий с оборудования (до 10K событий/час). Реализовал асинхронную обработку через asyncio + aiohttp, что позволило снизить latency с 200мс до 50мс на обработку одного события. Разработал алгоритмы агрегации временных рядов: Реализовал оконные функции для расчёта скользящих средних за 1/8/24 часа. Создал механизм расчёта KPI (OEE, простоя, эффективности) с учётом сменности и календаря производства. Оптимизировал алгоритмы работы с временными рядами: перешёл с наивного O (n²) подхода к использованию prefix sum и сегментных деревьев для расчётов за O (n log n). Результат: система внедрена в 3 филиалах, автоматизация расчётов экономит 15+ часов работы инженеров в неделю. 2. Работа с базами данных и оптимизация PostgreSQL — основная БД для хранения метрик и конфигураций: Спроектировал схему БД с партиционированием по времени (range partitioning по месяцам) для таблиц с 50+ млн записей. Написал и оптимизировал сложные аналитические запросы с использованием оконных функций (LAG, LEAD, SUM OVER). Реализовал материализованные представления для предрасчёта ежедневных отчётов. Провёл ревизию индексов: добавил partial indexes для часто запрашиваемых статусов, composite indexes для частых фильтров по времени и типу оборудования. Результат: время выполнения ключевых отчётных запросов сократилось с 8–12 секунд до 1–2 секунд. Redis — для кэширования и сессий: Реализовал двухуровневое кэширование: in-memory LRU-кэш в сервисе + Redis для распределённого кэша. Настроил TTL и политики инвалидации кэша при изменении данных. Использовал Redis Sorted Sets для хранения "горячих" метрик за последний час. 3. Разработка ETL-пайплайнов и оркестрация Использовал Apache Airflow для оркестрации фоновых задач: Создал DAG для ежедневного расчёта сводных отчётов (в 2:00 ночи). Реализовал пайплайн загрузки данных из внешней системы 1C через их REST API: Инкрементальная загрузка изменений (delta load) вместо полной выгрузки. Обработка и валидация данных (проверка целостности, приведение типов). Механизм retry с exponential backoff при сбоях API. Результат: нагрузка на БД при загрузке данных снизилась на 30%. 4. Рефакторинг и оптимизация legacy-кода Унаследовал часть кода на Flask 1.x с синхронной архитектурой: Провёл постепенный рефакторинг: выделил бизнес-логику в отдельные модули, добавил type hints (Pydantic), внедрил dependency injection. Мигрировал критические эндпоинты на асинхронную версию. Результат: производительность ключевого API (расчёт метрик за период) увеличилась на 25% (с 1200 rps до 1500 rps на том же железе). 5. Разработка API и интеграции Спроектировал REST API с нуля: Реализовал версионирование API (v1/, v2/). Добавил пагинацию (cursor-based для больших наборов данных). Реализовал фильтрацию, сортировку, выбор полей (field selection). Настроил rate limiting (10 запросов/сек на пользователя). Документирование: полностью описал API в Swagger/OpenAPI, добавил примеры запросов и ответов. Интеграция с 1C: Разработал адаптер для REST API 1C с обработкой их специфичного формата (JSON с вложенными массивами). Реализовал механизм очереди команд для асинхронного выполнения. 6. Качество кода и процессы Покрытие тестами: pytest + unittest, достигли 85% coverage для бизнес-логики. Code review: активно участвовал в ревью кода, внедрил checklist для ревью (типизация, обработка ошибок, логирование). Логирование: структурированное логирование через structlog, отправка логов в ELK-стек. Мониторинг: настройка метрик (счётчики ошибок, время ответа, загрузка БД), алерты в Telegram.Технические детали реализации: Использовал SQLAlchemy Core (не ORM) для сложных запросов к PostgreSQL. Для асинхронной работы с БД — asyncpg. Сериализация/десериализация — Pydantic + orjson (вместо стандартного json для скорости). Конфигурация — pydantic-settings с поддержкой.env файлов. Контейнеризация — многоконтейнерный Docker (сервис + PostgreSQL + Redis), docker-compose для локальной разработки.

Условия занятости

  • Подходящие условия занятости
Полная занятость
Стандартный график
В офисе/На объекте
Фото, имя и контакты доступны только авторизованным пользователям
Обновлено 29 октября
Обновлено 2 декабря
Обновлено 14 декабря
Обновлено 12 декабря
Обновлено 5 декабряПоследнее место работы (5 мес.)Java developerЯнварь 2025 – июнь 2025
Обновлено 8 декабря
Обновлено 4 декабря
Обновлено 2 декабря
Обновлено 28 ноября
Обновлено 26 ноября
Работа в МосквеРезюмеIT, Интернет, связь, телекомРазработка, программированиеБэкенд-разработчик

Смотрите также резюме




Общество с ограниченной ответственностью «СуперДжоб» Г.Москва, ул. Дмитровка М, дом 20 ИНН 7702319337 ОКВЭД 63.11.1 vip@superjob.ru +7(495)7907277 Программа ЭВМ SuperJob и Программные модули включены в Реестр российского программного обеспечения (ПО), реестровая запись № 9280 от 20.02.2021г. Программный интерфейс API SuperJob включен в Реестр российского программного обеспечения (ПО), реестровая запись № 11081 от 20.07.2021г.
© 2000–2025 SuperJob