Специалисты

Описание

Имею 4 летний опыт работы Java/Kotlin разработчиком и специализируюсь на работе с такими фреймворками как: Spring, JPA, Hibernate.
Считаю себя целеустремленным и ответственным разработчиком и обладаю способностью быстро изучать новые языки, имею творческий подход к решению проблем.
Стараюсь всегда быть в курсе альтернативных технологий и инноваций, а также предлагать свои решения при разработке продукта.

Ключевые навыки
Programming Languages
- Java
- Kotlin
Framework/Library
- Spring
- Spring Boot
- Spring Cloud
- JPA, Hibernate
- JOOQ
- Liquibase
DBMS
- Oracle
- PostgreSQL
- MongoDB
- Redis
Application/Web Servers
- Nginx
- Apache Kafka
- ElasticSearch
- LogStash
- Kibana
Application Type
- REST
- Grpc
Development Tools
- Git
- Gradle
- Maven
Other
- Agile
- Docker
- Camunda
- Nexus
- Unix


Образование
Институт радиотехнических систем и управления, Радиотехника, Бакалавр
Южный федеральный университет, Таганрог, Россия

Опыт
Проект

Шлюз контента

Описание

Шлюз контента (система управления нетоварным контентом) — информационная система, используемая для обеспечения и организации совместного процесса создания, редактирования и управления контентом предоставляемого фронтофисам. Шлюз контента входит в группу систем E-commerce платформы или, как еще принято говорить в компании, в слой middle office-систем. Что было сделано Были реализованы несколько модулей основной части проекта (Админ панели) и разработан высокоскоростной middle-layer, называемый внешним API, к которому подключается бизнес и через CRUD операции получает шаблоны контента для различных систем (мобильная версия, веб-сайты). Был реализован конструктор контента по паттернам, где контент менеджер через удобный редактор с легкостью создает контент для страниц, с гибко настраиваемыми модулями. Спроектировал с нуля реляционную модель данных в PostgreSQL для хранения сложной иерархии контента, что позволило частично уйти от плоской структуры, реализованной на Oracle. Также был реализован конструктор CLP (Content-landing-page), где менеджер быстро создает простые веб-страницы для потребностей бизнеса.

Технологии

Spring / Spring Boot / Spring Web / Spring Security / JOOQ / JUnit5 / Mockito / Spring Test / Spring Boot Test / Docker / Kubernetes / helm / gitlab pipeline / OracleDB / MongoDB / Keycloak / ELK / Grafana

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

06.2023 - 05.2025 месяцев

Проект

Медицинский проект

Описание

Состав команды: 1 бэкенд разработчик, 1 фронтенд разработчик, 1 тестировщик, 1 руководитель проекта Платформа, объединяющая врачей и медицинские компании из разных стран и способствующая непрерывному медицинскому образованию (CME) путем предоставления учебных курсов, проведения вебинаров. Перед нами стояла задача расширения функционала существующего приложения, имеющего десктопную и мобильную версии. Необходимо было разработать сервис продажи учебных курсов для докторов с применением системы промокодов. Каждый курс рассчитан на определенное количество часов CME, нужно было вести учет общего количества часов по курсам, которыми владеет пользователь и часов по курсам, которые уже пройдены пользователем. Также клиент хотел осуществить модернизацию новостной ленты из устаревшего двухколоночного вида в современный трехколоночный, объединить в новостной ленте контент из трех существующих вкладок с применением правил фильтрации, добавить виджеты. Что было сделано 1. В рамках проекта доработан функционал админ-панели в части создания и управления промокодами для учебных курсов: создана страница промокодов, в которой можно создавать как единичные промокоды, так и коллекции разовых промокодов, которые можно применять как к любому, так и к конкретному курсу. 2. В этой же странице можно управлять статусом промокода (активация/деактивация), можно выгрузить информацию о промокоде в формате xlsx. - добавлены данные о продаже курсов и учете выручки от продаж. Расширен функционал страницы пользователя в части фильтрации типов доступных ему курсов, настроен индикатор прогресса обучения по количеству часов, изменена верстка карточек курсов для соблюдения единообразия дизайна всего приложения. 3. Добавлена возможность покупки курсов с использованием сервиса оплаты Hyperpay (региональный сервис для осуществления транзакций) с возможностью запросить возврат за неначатый курс. 4. Добавлена возможность применения промокода и пересчета стоимости курса. Изменена стартовая страница, произведено объединение сбора сущностей с существующих трех вкладок на одну вкладку ленты постов в определенном порядке формирования: 3 поста пользователей, блок рекламы (интеграция с Google ads), контент - сущность от компаний, в зависмости от выбранного фильтра: по популярности или по дате публикации. 5. Спроектировал схему данных для системы промокодов, используя паттерн table per class. Общие атрибуты были вынесены в базовую таблицу, а специфичные (например, количество оставшихся активаций для коллекции) - в дочерние таблицы. Это обеспечило строгую типизацию данных и целостность на уровне БД 6. Багфикс, менторство других разработчиков на проекте, код-ревью

Технологии

Java / Spring / PostgreSQL / Feign / MS Azure

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

06.2022 - 05.2023 месяцев

Проект

Сеть зоомагазинов

Описание

Велась разработка продуктовой системы для сети зоомагазинов. Целью проекта была разработка PIM-системы. Её основной задачей была оптимизация рутинных операций, а также система предполагала хранение продуктовой информации в центральном хранилище. То есть, создание единого источника системы, в котором находится вся актуальная информация о продуктах компании. С помощью системы Управления Продуктовой Информацией мы могли создавать, хранить и обогащать продуктовый контент, и затем экспортировать его на сайт. Благодаря внедрению PIM удалось оптимизировать бизнес-процессы, сократить время на выполнение рутинных задач, свести к минимуму количество ошибок при обработке большого количества входящей информации. Что было сделано Была разработана микросервисная архитектура. Использовали database per service. Наш сервис получал список актуальных товаров и торговых предложений, в том числе категорийные связи (направление Еда -> Собаки -> наименование товара) из Bitrix. Далее контент менеджеры работали в админ панели PIM, обогащали продуктовый контент, который затем отправлялся в соответствующие категории в Apache Kafka. Далее другой сервис ESConsumer, разработкой которого также занималась наша команда, получал информацию о товарах из большинства категорий и занималась индексацией данных необходимых в каталоге, и отправляла их в поисковую систему ElasticSearch, откуда отфильтрованная информация направлялась на внешние сервисы.

Технологии

Java/ Kotlin/ Spring Boot / PostgreSQL / Microservices / Apache Kafka / ElasticSearch

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

10.2021 - 06.2022 месяцев