Специалисты
Ключевые навыки
Programming Languages
- Python- JavaScript (ES6+)- Typescript- HTML/HTML5- CSS/CSS3- SQL- Hadoop
Framework/Libraries
- Django- Django-rest-framework- Django-ORM- Python asyncio- FastAPI- SQLAlchemy- Peewee- Celery- Lodash- Axios- Moment.js- jQuery
Cloud services
- AWS- Heroku- STRIPE- EC2- S3 bucket
DBMS
- PostgreSQL- Redis- Spark- MongoDB- MySQL
Development Tools
- Git- Webpack- Grafana
Application Type
- REST- HTTP- Open API- WebSocket
Testing
- Unit testing
Application/Web Servers
- Nginx- Apache Kafka- RabbitMQ
CI/CD
- Gitlab
Other
- Agile- Scrum- Kanban- Jira- Confluence- Docker- Kubernetes- Microservices- SOLID- OOP- Ajax- JSON- Unix/Linux- SSH
Образование
Информационные системы и технологии, Бакалавр
Федеральное государственное автономное образовательное учреждение высшего образования "Южный федеральный университет" г. Ростов-на-Дону
Система поддержки и анализа кода для клиентов Заказчика
Описание проекта Система поддержки и анализа кода для клиентов Заказчика. Команды разрабатывали и поддерживали ПО, для возможности использования безопасных продуктов. Команда занималась поддержкой статического анализатора кода "svace" и разработкой аналитических алгоритмов для анализа git репозиториев и кода в принципе. Также было интегрировано большое количество стандартных утилит(разархиваторы и тп), для того, чтобы была уверенность в их безопасности. Основная цель всего проекта - предоставить клиентам безопасный софт, для их пользования. От желаний клиента софт мог дополняться. Что было сделано - Разработка подпрограмм для поддержки статического анализатора svace. Python; - Поддержка сторонних библиотек. C/C++, Python; - Написание tool для облегчения разработки и соблюдения принципа DRY. Python, CMD, BASH; - Покрытие кода тестами unit, функциональными, e2e. Unittest; - Создание и поддержка сборочных конфигурации?, Pipeline(ов). Docker, Asgard, yaml-скрипты; - Code Review. Рефакторинг кода.
Python / С++ / BASH
Ноябрь 2023 — Февраль 2025 месяцев
Одна из крупнейших энергосбытовых компаний России
Описание проекта Клиент — одна из крупнейших энергосбытовых компаний России. Большинство задач, связанных с документооборотом, сотрудники компании выполняли вручную. На это уходило много времени, а из-за человеческого фактора страдало качество и появлялись ошибки. Основной объем документов поступает от граждан и юридических лиц, и главной целью проекта стала автоматизация сбора, обработки и маршрутизации таких документов. Что было сделано - Разработка сервиса анализа юридической документации.; - Подключение consumer и настройка Kafka. Python, Kafka; - Разработка backend для пользовательского интерфейса: эндпоинт для выгрузки документов, CRUD для взаимодействия с информацией о реестрах. FastAPI, PostgreSQL, SQLAlchemy; - Разработка отказоустойчивой системы обработки данных. Python, Redis, Celery, pandas; - Настройка ETL-процесса обработки данных по документообороту - Упаковка всей системы в Docker-контейнеры. Docker, Docker compose; - Развёртка всей системы на контуре заказчика. SSH; - Разработка системы авто-очистки памяти. CRON, BASH; - Написание тестов unit, e2e. Pytest
Python / SQLAlchemy / PostgreSQL / FastAPI / BASH
Июль 2022 — Октябрь 2023 месяца
HR платформа для крупной продуктовой компании
Описание проекта Сайт HR-бренда компании для сбора откликов на вакансии Tech Dep, back-офиса, операции, информирования и записи на мероприятия, информирования о новостях компании. Основными задачами сайта является: - информирование соискателя с имеющимися вакансиями; - информирование соискателя с корпоративной культурой компании; - отражение ценности HR-бренда компании; - сбор откликов на вакансии; - продвижение мероприятий и сбор заявок на них; - информирование о внешней реферальной программе. Помимо сайта была создана административная панель для управления контентом, загружаемого на сайт с возможностями конструктора. Аутентификация пользователей осуществляется через keycloak. Задача страницы: предоставить возможность сотрудникам в зависимости от их уровня доступа просматривать вакансии, создавать вакансии, отслеживать количество не просмотренных откликов, создавать новости и мероприятия, управлять контентом на опубликованных страницах. Что было сделано Был создан сайт по поиску вакансий и событий, а также административная панель, через которую происходит полное управление сайтом. В процессе создания проекта были реализованы интеграции с keycloak и почтовым сервисом sendsay. Админка имеет многопользовательский режим работы с разделением ролей и прав. На сайте были установлены лимиты для отдельных бизнес-процессов или транзакций, которые выполняются для каждого пользователя отдельно. Также в ходе программирования выполнялось покрытие юнит тестами. На сайте реализованы лимиты для обнаружения и защиты от автоматизированных атак по типу фильтрации данных, чрезмерного обращения к процессам бизнес-логики, чрезмерной загрузки файлов или DOS (отказ в обслуживании). В процессе реализации административной панели и сайта были выполнены следующие задачи: 1. Подключена аутентификация пользователей через keycloak; 2. Создание 7 интерфейсов для разного уровня доступа; 3. Создание отдельных цветовых схем для каждой страницы сайта; 4. Создана адаптивная версия сайта и административной панели; 5. Создана мобильная версия сайта; 6. Разработана сложная логика фильтрации и поиска по сайту; 7. Создана уникальная система публикаций вакансий в зависимости от их статуса (черновик, архив, приватность); 8. В процессе реализации мы быстро переключались под новые требования клиента.
JavaScript / Python / Django / PostgreSQL / React / PostgreSQL Интеграции: keycloak / sendsay / S3 хранилище
Сентябрь 2021 - Июль 2022 месяца
Приложение для управления складом
Описание проекта Приложение для управления складом. Основными задачами приложения являлось: а) виртуализировать складские процессы (т.е написать логику при которой система дает указания, что делать в тот или иной момент времени при определенном процессе, проверяет и записывает введенную информацию.) б) контролировать расположение всех предметов на складе в) отслеживать время и человека, который делал какое-либо действие, связанное со складским процессом + время, за которое это действие было совершено г) выводить информацию об эффективности работников д) тесная интеграция с 1С для контроля остатков, создания документов и т.д Что было сделано 1. Участвовал в разработке и внедрении новых бизнес-процессов в системе. 2. Занимался оптимизацией системы и запросов, в частности. 3. Разделял монолит системы на микросервисы, занимался написанием микросервисов на питоне. 4. Занимался разработкой и написанием алгоритмов расчета эффективности для процессов и сотрудников. 5. В результате работы успешно масштабировал приложение и существенно повысил стабильность работы приложения в целом.
Python / Django / PostgreSQL Интеграции: СБИС / Sendsay
Июль 2020 – Август 2021 месяц
Мобильное приложение (iOS, Android), представляющее собой социальную сеть для знакомств и совместного проведения мероприятий.
Что было сделано Мы реализовывали данное приложение с нуля, включая создание дизайна. На основе макетов используя Django REST были реализованы следующие модели данных и методы API связанные с ними: - модель пользователя; - регистрация пользователя с использованием в качестве логина E-mail адреса; - аутентификация пользователя с использованием токена авторизации, обновление личной информации зарегистрированным пользователем (дата рождения, пол, имя, фамилия, аватар). Реализация отправки приглашения в друзья других зарегистрированных пользователей, либо отмена отправленных приглашений, также есть возможность принятия полученных приглашений или отказ от них; - модель интересов; - возможность создания интересов, групп по интересам, а также их привязка к определенным группам, к авторизованному пользователю; - авторизованный пользователь может просмотреть список созданных интересов, отсортированных по группам; - модель событий; - возможность просмотра открытых событий, возможность получения списка комментариев, привязанных к конкретному событию. Авторизованный пользователь может создать открытое или закрытое событие. Авторизованные пользователи могут подавать заявки для участия в открытом событии, которые создатель этого события может одобрить или отклонить, также он может пригласить своих друзей для участия. Участниками закрытого события могут быть только пользователи, которых пригласил создатель данного события. Приглашенные пользователи могут принять или отклонить приглашение на участие в событии; - авторизованные пользователи могут оценивать прошедшие события, а также оставлять комментарии к ним; - модель чата; - возможность создания комнаты чата с неограниченным количеством участников, а также рассылка сообщения всем участникам комнаты чата с оповещением в режиме реального времени.
Python / Django / PostgreSQL Интеграции: Social networks / Sockets / Complex data through APIs / Vultr
Ноябрь 2019 — Июнь 2020 месяцев