Специалисты

Описание

Навыки:
Python С/С++ Django DRF Celery FastAPI Alembic SQLAlchemy Mathlab/Mathcad Linux Git Docker PostgreSQL MongoDB Redis RabbitMQ Make CMake BLE/BLE Mesh

Образование:
2017 Московский авиационный институт (национальный исследовательский университет)

Опыт
Проект

Платформа для поиска психолога

Описание

Роль: Python backend developer Задача: Оптимизация, тестирование и поддержка всех функциональностей платформы, таких как регистрация и авторизация пользователей, календарь расписания психологов, админка, сессии, отзывы и т.д. Разработка нового функционала. Обязанности: Рефакторинг кодовой базы. Оптимизация запросов к БД. Покрытие модульными/функциональными/интеграционными тестами. Разработка новых сервисов в сервисно ориентированной архитектуре. Разработка sdk для сервисов. Достижения и результаты: Увеличил производительность при работе с календарем психолога из-за кратного сокращения количества запросов к БД. Перенес часть функционала расчетов с фронта на бэк, чем увеличил скорость отклика. Разработал несколько внутренних технических сервисов настроек и аналитики. Исправил нерабочие тесты, увеличил покрытие. Исправил ряд ошибок в работе между сервисами. Улучшил функционал сервиса рассылки писем.

Технологии

Python, DRF, FastAPI, SQLAlchemy, Celery, PostgreSQL, Redis, RabbitMQ, Docker, Gitlab, Sentry

Длительность

7 месяцев

Проект

Веб-автотесты

Описание

Роль: QA Automation Engineer Задача: Написание e2e автотестов Создание фреймворка для автотестирования Настройка CI/CD Интеграция с TestIT Автоматизация работы с внешним сервисом аренды телефонных номеров Обязанности: Покрытие автотестами всех тест кейсов. Создание фреймворка на основе Selenium. Написание фабрик для работы с большинством браузеров и любым разрешением, в том числе в режиме смартфона. Интеграция результатов тестирования с TestIT. Настройка CI/CD для запуска ранов в Bamboo. Достижения и результаты: Покрыл автотестами и обучил ручных тестировщиков, ввел внутренние стандарты для написания автотестов. Добился снижения зависимости от внешнего сервиса аренды телефонных номеров.

Технологии

Python, Bamboo, Docker, Selenium, TestIT

Длительность

2 месяца

Проект

Api/web-автотесты

Описание

Роль: QA Automation Engineer Задача: Написание e2e автотестов Настройка CI/CD Обязанности: Покрытие автотестами всех тест кейсов. Настройка CI/CD для запуска ранов в Gitlab. Интеграция результатов тестирования с Allure. Достижения и результаты: При покрытии автотестами был выявлен ряд ошибок фронта. Прочее: Доработал фреймворк добавил логирование и выгрузку артефактов (HAR, скриншоты). Добавил фабрику для работы с API

Технологии

Python, Selenium, Allure, Docker, Gitlab

Длительность

6 месяцев

Проект

Крупнейший российский биржевой холдинг

Описание

Роль: QA Automation Engineer Задача: Написание e2e автотестов Обучение QA Автоматизация UI-тестов мобильного приложения Обязанности: Покрытие автотестами свыше 500 тест кейсов (API/UI). Консультации и помощь в настройке окружения, CI/CD для запуска UI-автотестов на локальном MacMini. Интеграция результатов тестирования с Allure. Провести 5 вебинаров для обучения QA написанию автотестов. Консультации QA после обучения. Достижения и результаты: Провел обучение тестировщиков по написанию автотестов в формате вебинаров. Получил положительный фидбэк о дальнейшем качестве работы и вовлеченности тестировщиков в поддержку и написание новых автотестов. С нуля помог настроить запуск UI-автотестов на MacMini. Настроил AVD и Simulator. Консультировал и давал всю требуемую информацию по сборке билдов приложений под эмулятор и симулятор. Написал скрипты для CI. Инициировал переход на Accessibility ID вместо Xpath для унификации элементов между iOS и Android и ускорения прохождения ранов автотестов. Провел дополнительный вебинар по обучению QA пользованию Git, что позволило избежать ошибок и ускорить время разработки автотестов.

Технологии

Python, Selenium, Appium, Allure

Длительность

6 месяцев

Проект

Сервис телеграмм бота

Описание

Роль: Python backend developer Задача: Создание сервиса телеграмм бота для рассылки уведомлений о неоттреканном времени в Jira. Создание бэкенда для сервиса телеграмм бота. Настроить CI/CD для БД, RabbitMQ, сервиса бота и сервиса бэкенда. Провести тестирование. Обязанности: Написать сервис телеграмм бота. Написать сервис бэкенда для телеграмм бота. Запустить сервисы бота для тестирования на виртуальной машине. Запустить сервисы бота для продакшена в k8s. Достижения и результаты: Использовал для двусторонней связи между сервисом и бэкендом модифицированный протокол JSON-RPC с gzip компрессией. Написал свой клиент для LDAP для регистрации и валидации пользователей бота(предназначен только для сотрудников компании). Написал клиент для работы с Jira API для подсчета неоттреканного времени. Написал темплейт для создания ботов. Написал Dockerfile и docker-compose.yaml для запуска на виртуальной машине. Написал скрипты для деплоя в k8s. Реализовал healthcheck API на основе драфта RFC Написал пакет для логирования в Loki

Технологии

Python, Python-telegram-bot, FastAPI, SQLAlchemy, RabbitMQ, PostgreSQL, Jira API, LDAP, Docker, Kubernetes, Sentry, Loki

Длительность

5 месяцев

Проект

Программное обеспечение для IoT системы управления климатом

Описание

Роль: Senior Embedded Software Engineer Задача: Разработка ПО для IoT системы управления климатом в помещении, включающую в себя: HVAC, приточную вентиляцию, термостат, автоматизированную вытяжную систему, пульт управления и/или мобильное приложение. Разработка архитектуры BLE Mesh сети и взаимодействия модулей системы. Разработка ПО для тестирования, отладки и ремонта модулей системы. Организация процесса тестирования, отладки и ремонта на объекте по производству/сборке модулей системы. Обязанности: Разработать ПО для системы HVAC, термостата, пульта, вытяжной системы, тестовое ПО на ПК для отладки и запуска серийного производства, флоу тестирования и отладки, документацию. Разработать архитектуру BLE Mesh сети и алгоритмы работы системы при разном наборе модулей. Ведение документации на модули системы и архитектуру. Разработать тестовое ПО. Консультации QA после обучения. Достижения и результаты: Написал тестовое ПО на C# под Windows для работы с собранными модулями через BLE. Реализовал гибкую архитектуру работы системы на BLE Mesh, с балансировкой нагрузки для нод имеющих подключение к Wi-Fi. Написал свой скрипт на Python использующего листинг компилятора для расчета памяти требуемой под каждую задачу ОС для оптимизации потребления RAM.

Технологии

С/С++, C#, Python, ESP-IDF, STM32(CMSIS), NRF SDK, FreeRTOS, Zephyr, Make, CMake, BLE, BLE Mesh, Zigbee, Wi-Fi

Длительность

24 месяца

Проект

Компания, занимающаяся продажей медицинских изделий

Описание

Роль: Embedded Software Engineer Задача: Разработка ПО для медицинских носимых устройств. Разработка внутреннего формата хранения данных. Разработка алгоритмов вычисления медицинских показателей (артериальное давление, оксигенация, ригидность сосудов и пр.). Оптимизация расчетов для нейронных сетей. Разработка ПО для производства, тестирования, отладки и ремонта. Обязанности: Разработать ПО для медицинских носимых аппаратов с низким энергопотреблением (тонометры, холтеры, пульсоксиметры и пр.). Разработать документацию на устройства. Разработать форматы хранения данных многосуточных исследований для оптимального соотношения скорости обработки и разрешения сохраняемых данных. Оптимизировать векторные расчеты для нейронных сетей на десктопном ПО обрабатывающем данные исследований. Разработать ПО на ПК для производства, автоматизированной калибровки, тестирования и ремонта. Достижения и результаты: Собрал стенд и написал ПО для автоматизированной калибровки устройств. Написал и поддерживал ПО для 9 различных устройств и их модификаций. Написал ПО для модуля BLE на основе МК NRF52832, чтобы заменить BT модуль HC-05 и снизить энергопотребление. Участвовал в зарубежной выставке Medica.

Технологии

С/С++, STM32(CMSIS), FreeRTOS, Make, CMake, BLE

Длительность

4 года месяцев