Специалисты
Навыки:
БД: ClickHouse, MongoDB, PostgreSQL, SQLite.
Библиотеки и фреймворки: Celery, FastAPI, Flask, MongoEngine, SQLAlchemy, aiohttp, lxml.
ОС: FreeBSD, Ubuntu.
Системы контроля версий: Git.
Языки программирования: Python.
Языки разметки: XML/XPath, YAML, HTML.
Образование:
1998-2002 - ННГУ им. Н.И. Лобачевского, механико-математический факультет; бакалавр математики
2002-2004 - ННГУ им. Н.И. Лобачевского, механико-математический факультет; магистр математики
Функциональные части проектов информационно-программных систем
Роль: Python разработчиик Задачи: 1) разработка периодически запускаемых скриптов (python 3.6) для загрузки (pycurl, requests), извлечения (json, lxml, p7zip, zipfile), обработки и отправки данных в базу (clickhouse-driver) и/или специальный сервис (с использованием внутренних библиотек заказчика) 2) разработка скриптов (systemd, python) работающих как веб сервер (написанная заказчиком обертка вокруг http.server) который по переданным в запросах параметрам запрашивает данные из внешних API с последующей передачей в специальный сервис (с использованием внутренних библиотек заказчика) 3) расширение внутренних библиотек заказчика для поддержки новых типов объектов и связей между ними (ORM)
Python, Docker, ClickHouse/clickhouse-driver, RabbitMQ, PycURL, requests, zeep
2014 - по настоящее время месяцев
Разработка функциональных частей проектов информационно-программных систем
Исполняемые обязанности 1) разработка микросервисов (FastAPI, asyncio/aiohttp/aio-pika) взаимодействующих посредством REST API и/или очереди сообщений (RabbitMQ)
Python, FastAPI, Minio/aioboto3, PostgreSQL/SQLAlchemy, RabbitMQ/aio-pika, Redis/aioredis, playwright-python, aiohttp
2014 - по настоящее время месяцев
Система автоматизации внутренних процессов заказчика по предоставленному техническому заданию
Роль: Python разработчиик Задачи: 1) создание нескольких бэкендов (микросервисов) реализующих REST и/или RPC API (Flask, MongoDB/MongoEngine, PostgreSQL/SQLAlchemy, Docker) и покрытие кода модульными тестами (pytest/mongo-mock, GitLab CI/CD) 2) (авто)документирование API (SwaggerUI/flasgger)
Python, Flask, pytest, SwaggerUI/flasgger, PostgreSQL/SQLAlchemy/alembic, Minio(S3), Celery, Docker/docker-compose, MongoDB/MongoEngine, GitLab CI/CD, Miro, Confluence, Jira, Rancher
2014 - по настоящее время месяцев
Сервис парсинга web-сайтов по расписанию для сбора данных по вакансиям
Роль: Python разработчиик Задачи: 1) разработка скриптов парсинга отдельных web-сайтов и платформ для создания web-сайтов с вакансиями преимущественно в USA регионе (Docker, Celery, Selenium Grid) с последующим сохранением результата в базу (MongoDB) 2) создание бэкенда (Flask) для управления расписаниями и фильтрами (PyMongo) используемыми в выгрузке данных (xlsxwriter) на стороне клиента 3) интергирование существующего сервиса аутентификации (KeyCloak, Flask-OIDC)
Python, Flask, Celery, Flask-OIDC, PyMongo, MongoEngine, MongoDB, Selenium Grid, Docker, KeyCloak, pytest, celerybeat-mongo
2014 - по настоящее время месяцев
Сервис воздушных перевозок
Роль: Ведущий инженер-программист 3-й категории Задачи: Разработка функциональных частей проектов информационно-программных систем: 1) написание кода загрузки данных (расписание и цены) по авиаперелетам с АПИ партнеров (XML/JSON/Web) в базу данных [с использованием существующего фреймворка собственной разработки] - чтение документации - написание кода (PyCharm, python, lxml) и тестов (pytest) - обсуждение технических проблем с партнером (Zendesk, e-mail) 2) рефакторинг устаревшего кода - функциональный стиль -> ООП-стиль - Python27 -> Python36 3) создание сервиса (Flask) по загрзке данных (requests) с внешних сайтов в базу данных (PyODBC) согласно расписанию (Celery) [с ипользованием существующей библиотеки внутренней разработки для хранения результатов во внешнем хранилище] - дизайн и документирование апи бэкенда - написание кода и тестов для задач Celery 4) написание кода бэкенда по бронированию комнат в отелях через АПИ партнеров (JSON/XML) [с использованием существующего фреймворка собственной разработки] - чтение документации - написание кода (PyCharm, python, lxml) и тестов (pytest) - проверка на тестовой и продуктовой средах (как сами интеграции, так и BrainTree с АПИ партнера) - обсуждение технических проблем с партнером (Zendesk, e-mail) 5) написание компонентов для существующего фреймворка для поддержки новых типов входных и выходных данных с валидацией корректности (python) 6) написание утилит упрощающих процесс разработки
Python, Flask, pytest, Celery, jobtastic, Git, Jira, Docker, Fiddler/Postman, XML/XPath, JSON, YAML, HTML, JavaScript
2014 - по настоящее время месяцев
Веб-приложение для просмотра текстовых файлов на удаленном сервере
Роль: Стажёр Задачи: Написание веб-приложения. Миграция кода существующего проекта с Django 1.5 на Django 1.6.
Python, Django, JavaScript, jQuery, JSON, HTML, CSS, Git, Postgresql
2013 - 2014 месяцев
Разработчик систем легального контроля и средств проведения оперативно-разыскных мероприятий
Роль: Инженер технической поддержки Задачи: Поддержка информационной системы, разработанной компанией и установленной на технической площадке заказчика. Администрирование системы мониторинга.
RHEL, Bash, Zabbix, Python, XML
2010 - 2013 месяцев