Специалисты
Ключевые навыки
Programming Languages
- Java
Framework/Library
- Spring - Spring Boot- Spring Cloud- JPA, Hibernate
DBMS
- Oracle- PostgreSQL- MongoDB- Redis
Application/Web Servers
- Nginx- Apache Kafka- RabbitMQ- Apache Tomcat- ElasticSearch- LogStash- Kibana
Application Type
- REST- Grpc
Development Tools
- Git- Gradle- Maven
Other
- Agile- Jira- Docker- Kubernetes- Nexus- Unix
Образование
Прикладная математика (факультет Математики и компьютерных наук)
Адыгейский государственный университет, 2023г.
NDA #1
Состав команды: 4 бэкенд разработчика, 3 фронтенд разработчика, 3 аналитика, 3 тестировщика, 1 тимлид, 1 руководитель проекта Описание проекта Поддержка и развитие банковской системы по работе с юридическими лицами. В рамках системы клиента банка имеют широкий функционал по управлению финансами своих организаций (переводы, патенты, работа с налогами и тд). Проект выполнен в виде микросервисной архитектуры с синхронным и асинхронным взаимодействием через очереди сообщений. Сами сервисы реализовывались в рамках гексагональной архитектуры с отдельными слоями домена, бизнес-логики и АПИ контроллеров (межсервисных и внешних). Что было сделано Реализация микросервиса - справочники, обобщающим информацию о Клиенте (юр лице). Миграция с БД Oracle на Postgres. Оптимизация работы существующих сервисов путем рефакторинга АПИ и запросов в базу. Настройка сборок метрик на микросервисах из зоны ответственности команды.
Java 11 / Spring / Kafka / IBM MQ / Hibernate / Postgres / Nexus / Bitbucket / Hashicorp Vault / Kibana / Grafana / Sentry
Апрель 2023 – Сентябрь 2024 месяца
NDA #2
Состав команды: 9 бэкенд разработчиков, 5 фронтенд разработчиков, 4 бизнес-аналитика, 2 системных аналитика, 3 тестировщика, 1 старший консультант, 1 консультант, 1 дизайнер, 1 тимлид, 1 руководитель проекта Описание проекта Проект нацелен на создание инструмента для управления персоналом и автоматизации задач предприятия. Инструментом могут пользоваться не только руководители, но и рабочие, для руководителей - управление персоналом, для рабочих - заведение задач (работ). Все это необходимо для оптимизации и автоматизации процессов управления и производства с помощью различных функций, заточенных под различные ситуации. В ходе работы реализованы модули РНП (Расстановка и назначение персонала) и УОР (Управление остановочными ремонтами), которые включают функционал графического отображения загруженности каждого работника и его рабочего места. Модуль РНП отвечает за балансировку нагрузки каждого исполнителя и назначение ему конкретных задач. Модуль УОР формирует графики ремонтов на основе различных внутренних единиц, устанавливает правила формирования ремонтов, маршруты согласования по иерархическому дереву руководителей и предоставляет различные шаблоны для создания объектов загрузки. Разбито монолитное приложение на микросервисы, где каждый модуль представлен отдельным микросервисом. Что было сделано Перевод парсинга сущности (которая приходит из ERP) из монолита в отдельный микросервис с рефакторингом сервисов и мапперов (из умного маппера делаем глупого, чтобы не вызывались внутри него сервисы/репозитории, по возможности отказываясь еще и от хелперов). Оптимизация расчета баланса ремонтного времени - расчета работ на техническом месте. Изначально на стенде расчет занимал около 4 часов, удалось оптимизировать до 3 минут (в выборке участвовали почти все существующие записи - около 1.5 млн). Для оптимизации все BigDecimal были убраны и вместо них начали использоваться Float, т.к. на фронте число отображается с двумя знаками после запятой; на колонки, которые используются в выборке написан индекс; была использована многопоточка (техместо оборачивалось в поток). Расчет одобренного и фактического БРВ (баланс ремонтного времени) - более узкая выборка работ на техместах, необходима для сравнения показателей времени работ на техместах, одобренное - одобренное начальством, фактическое - на данный момент, которое запросили работники (изначально была предложена джоба и создание двух таблиц, но из-за отсутствия необходимости получения всех записей перешли к точечному получения техмест из конкретного графика ремонтов без хранения результатов в таблицах). Множественный выбор видов ремонтов с валидацией входных данных на селекционном экране линейки подрядчиков и многоуровневой сортировкой результатов - использовались кастомные репозитории, где использовался QueryDSL, для тестирования были реализованы все кейсы, которые могут быть.
Java 17 / Spring Framework / SpringBoot / Spring Data / JPA / Hibernate / QueryDSL / Spring Security / RabbitMQ / Maven / PostgreSQL / JUnit5 / Liquibase / Apache poi
Январь 2022 – Апрель 2023 месяца
NDA #3
Состав команды: 3 бэкенд разработчика, 3 фронтенд разработчика, 1 аналитик, 1 тестировщик, 1 тимлид, 1 руководитель проекта Описание проекта Доработки системы оперативного управления производством. Сбор, хранение и анализ данных о параметрах производства, а также их передача в смежные системы. Контроль за технологией, постоянный мониторинг качества продукции и режимов работы оборудования с целью стабилизации всех технологических параметров на оптимальном уровне. Что было сделано API для осуществления контроля производства. Сервис отслеживания погодных условий и создания рекомендаций по температурному режиму. Создание шаблонов и автоматизация генерации отчетных документов. Миграция существующих сервисов с Python на Java.
Java 11 / Spring / Hibernate / PostgreSQL / Apache Kafka / Schema Registry / OpenShift / Logstash / ElasticSearch / Prometheus / Grafana / Jaeger / Keycloak / Jasper Report
Март 2021 – Декабрь 2021 месяц