Специалисты
Навыки
Языки разработки Java, Kotlin, SQL, Groovy
Java EE
JPA/ORM (Hibernate, mybatis, eclipse link), Validation API
Spring Spring core (scope, context, lifecycle, configuration types), Spring Transactional, Spring REST, Spring Data JPA, Spring-boot (starter"s, autoconfiguration), Spring Security, Spring AOP, AspectJ, Spring-Cloud, WebFlux
Java SE Collection API, jdbc, жизненный цикл, пуллы коннектов, Java Core (Семантика, Generics, Exception Handling, Stream API и прочая база), Concurrency, Java NIO
СУБД Sql, MySQL, SQLite, PostgreSQL, MongoDB, Типы NoSQL хранилищ, их особенности, CAP, ACID trade-off, Инструменты миграции данных (Luqibase, Flyway), (ANSI SQL, Транзакционность и ACID, нормальные формы, индексы), Scaling (Master-Slave (Eventual Consistency), Partitioning, Sharding), Redis
Архитектура Распределённые системы и шаблоны интеграций. Организация отказоустойчивости. Cloud Ready архитектура, Архитектурные шаблоны (Saga, CDC, CQRS, Template и тд), Микросервисы, Монолит, DDD, Масштабируемость приложений, необходимые условия, Оркестраторы, Camunda, Zeebe, Lowcode
Инфраструктура и DevOps Docker, OAuth/ADFS/Keycloak, CI/CD, Kubernetes/Openshift, ELK-стек, Grafana, Quarkus
Тестирование Unit-тестирование, Spring test, Mock"ирование и stub, Интеграционное тестирование. TestContainers
Другие технологии Common: Шаблоны проектирования (GoF), Алгоритмы и структуры данных. O(n), Clean Code, Владение принципами ООП
Security: OAuth2, JWT, OWASP, CORS, CSRF, SSO
JVM: JVM (Memory Model, Garbage Collection, Compilation)
Queues: Kafka, RabbitMQ, ActiveMQ, Sync vs Async, концепт очередей и брокеров сообщений
Protocols: HTTP/REST, WebSocket, gRPC, SOAP
Cloud: AWS
Фреймворки и библиотеки: Liquibase, Junit, Reactor, Mockito
Шаблонизатор: Thymeleaf
Система управления производством на металлургическом комбинате
Роль в проекте Lead Backend разработки Цель проекта: Разработка систем управления производством, перевод производственного функционала со старой системы (Oracle-формы) на новый стэк, синхронизация со смежными системами. Реализация логики нового АРМа складских операций в рамках систем прокатного производства: прием, отмена приема сертификатов, приём сертификата с замечаниями. Приход, расход металлов. Операции по металлу - перемещение, смена статуса, рез. Прямая и обратная синхронизация с исторической системой. Архитектура Группа микросервисов, обслуживающая систему прокатного производства. REST-API для клиентов, синхронное (кастомная RMI библиотека) и асинхронное (Kafka) взаимодействие между сервисами. Асинхронное взаимодействие с историческими и смежными системами. Обязанности/Функции: Исправление багов Коммуникация с командой Проведение релизов Написание тестов Проведение код ревью Проведение обучающих сессий и внутренних митапов Менторство младших разработчиков Техническое лидерство и принятие архитектурных решений Добавление новых фич Участие в развитии продукта и процессов вместе с командой Анализ требований Непосредственные задачи Реализация API сервиса склада — выполнение операций по металлам, техническое руководство разработкой и принятие архитектурных решений Разработка сервиса синхронизации склада — приём, отмена сертификатов, синхронизация с исторической системой; координация команды, менторство и ревью кода Настройка межсервисного взаимодействия — обеспечение корректной интеграции, контроль качества реализации и обучение команды Оптимизация запросов — анализ производительности, реализация улучшений, передача опыта коллегам Решение гонок при синхронизации (добавление блокировок) — принятие решений по стратегии синхронизации, консультации команды Добавление кластерного кеширования с Hazelcast — проектирование и внедрение решений, поддержка команды в освоении технологии Реализация сервиса реза металла — руководство реализацией, проверка архитектурных подходов и поддержка разработчиков Поддержка и отладка, поиск и исправление багов, корректировка данных в БД прода — организация процессов поддержки, наставничество, анализ сложных инцидентов Состав команды 42 человека
Unit-тестирование, PostgreSQL, Kafka, Spring DI/IoC, JPA/ORM (Hibernate), Mock_ирование, HTTP/REST, Spring Data JPA, Spring Transactional, Spring Security, Open API (Swagger), Spring test, Collection API, Liquibase, Hazelcast, QueryDsl
март 2024 — по настоящее время месяцев
Сервис для поиска, покупки, продажи, аренды недвижимости и безопасного проведения сделок с жильем
Роль в проекте Lead Backend разработки Цель проекта: Разработать портал для поиска подходящей недвижимости: квартира в новостройке, на вторичном рынке или загородный дом от собственников и проверенных партнёров. 10 000 новых объявлений ежедневно. Регистрация и авторизация по телефону, email, WhatsApp, Google аккаунту Публикация объявлений о продаже/аренде недвижимости. Срок жизни объявления зависит от типа предложения. Управление опубликованными объявлениями через ЛК Гибкий поиск по десяткам параметров, группировка и отображение опубликованных объявлений на карте Отдельный расширенный функционал для агентств недвижимости Архитектура Монолит. REST-API для клиентов. Синхронное взаимодействие с внешними системами (авторизация WA, Google). Обязанности/Функции: Исправление багов Коммуникация с командой Проведение релизов Написание тестов Проведение код-ревью, кросс-ревью Добавление новых фич Участие в развитии продукта и процессов вместе с командой Анализ требований Менторство младших разработчиков, проведение технических обсуждений Принятие решений по архитектуре, проработка решений совместно с архитектором • Контроль качества кода и соблюдение технических стандартов Непосредственные задачи Совместное с командой проектирование архитектуры проекта, участие в принятии ключевых технических решений Разработка сущности агентства и реализация её логики Разработка регистрации и авторизации по WhatsApp Оптимизация поискового запроса к карте (решение проблемы N+1) Реализация логики срока публикации объявлений Внедрение поиска по ElasticSearch Покрытие новой логики unit-тестами • Поддержка команды в освоении новых технологий и подходов Состав команды 10 человек
Unit-тестирование, PostgreSQL, Spring-Cloud, Spring DI/IoC, ElasticSearch, JPA/ORM (Hibernate), Mock_ирование, HTTP/REST, Spring Transactional, Spring Data JPA, Spring Security, Open API (Swagger), Spring test, Collection API, Liquibase
ноябрь 2023 — март 2024 месяца
Автоматизация процессов производства, Управления производственными процессами, Разработка платформы для сбора и анализа больших объемов данных о производственных процессах, Повышение прозрачности бизнес-процессов
Роль в проекте Backend—разработчик Цель проекта: Цифровизация всех ключевых процессов компании для повышения операционной эффективности, прозрачности, и конкурентоспособности. Снижение затрат и повышение производительности за счет автоматизации и внедрения интеллектуальных систем управления. Создание централизованных информационных платформ для мониторинга и анализа всех этапов производственного и бизнес-цикла. Архитектура Архитектура проекта строится на современных подходах к разработке и масштабируемых решениях, обеспечивающих эффективность и гибкость системы. Используем микросервисную архитектуру, то есть все ключевые функциональные модули реализованы в виде независимых микросервисов, часть систем размещена в облаке, для взаимодействия между модулями и внешними системами Используется REST, либо асинхронный подход используя Kafka Обязанности/Функции: Исправление багов Коммуникация с командой Проведение релизов Написание тестов Проведение код ревью, кросс-ревью Добавление новых фич Участие в развитии продукта и процессов вместе с командой Анализ требований Непосредственные задачи Оптимизация запросов с использованием асинхронных подходов. Интеграция новых топиков. Работа с ClickHouse, управление большими объемами данных. Логический и умный подход к управлению данными. Добавление новых эндпоинтов для обеспечения корректной работы системы. Повышение производительности системы за счет анализа и рефакторинга кода. Обеспечение отказоустойчивости и масштабируемости системы. Улучшение архитектуры обработки данных. Создание инструментов для мониторинга данных и метрик. Автоматизация тестирования и интеграции новых функций. Состав команды 50 человек
Unit-тестирование, PostgreSQL, Kafka, Spring-Cloud, Spring DI/IoC, Docker, JPA/ORM (Hibernate), Mock_ирование, HTTP/REST, Spring Transactional, Spring Data JPA, Spring Security, Open API (Swagger), Spring MVC, Spring test, Collection API, Liquibase, Clickhouse
июнь 2022 — октябрь 2023 месяца
Инвестиционная платформа
Роль в проекте Backend—разработчик Цель проекта: Инвестиционная платформа, которая предоставляет возможность компаниям малого и микробизнеса получить финансирование от физических лиц и институциональных инвесторов. Разработка платформы, через которую можно инвестировать в малый бизнес. Механизм коллективного инвестирования по договорам займа. Архитектура Микросервисная архитектура Обязанности/Функции: Исправление багов Коммуникация с командой Проведение релизов Написание тестов Проведение код ревью, кросс-ревью Добавление новых фич Участие в развитии продукта и процессов вместе с командой Анализ требований Непосредственные задачи Реализация и проектирование бизнес процессов в BPMN схемах и их имплементация; Разработка транспортного уровня; Разработка финансовых продуктов (графики платежей, досрочные платежи, перестройка графиков, реструктуризация займов, адаптация к «каникулам»); Система отчетности — Postgres / Jasper Reports; Автоматизация проверки пользователей во внешних системах; Состав команды 12 человек
Java, postgres, Camunda, BPMN, Collection API, Unit-тестирование
январь 2021 — июнь 2022 месяца
NDA
Описание проекта / Сервис генерации Google Slides из сторонних данных / Сервис позволяет собирать презентацию из входящих данных от стороннего сервиса с заданным форматированием и использованием фирменного стиля. Функции/обязанности: — проектирование архитектуры проекта — разработка сущностей — разработка интеграции со смежным микросервисом — разработка бизнес-логики — разработка ролевой модели — тестирование и багфикс — релизные работы и поддержка Роль в проекте JAVA—разработчик
Spring Security, OpenFeign
февраль 2022- май 2022 месяца
NDA
Описание проекта / Фармацевтическая компания / Функции/обязанности: — разработка интеграции с сервисом Kafka — разработка сущностей — сбор данных о работе баз данных под нагрузкой Роль в проекте JAVA—разработчик
Java 11, Spring boot, Spring Data JPA, PostgreSQL, Kafka
февраль 2021- январь 2022 месяца
NDA
Описание проекта / Разработка поискового движка на Spring Boot / Функции/обязанности: — Индексация сайтов и осуществление поиска — разработка модели БД проекта — Парсинг HTML, хранение индексов БД — разработка OpenApi спецификации — юнит тесты Роль в проекте JAVA—разработчик
IntelliJ IDEA, Docker Desktop, MySQL Workbench, pgAdmin 4, Postman
июль 2021- январь 2021 месяц
NDA
Описание проекта / Социальная сеть для банка/ Функции/обязанности: — разработка соц. сети с микросервисной архитектурой — контейнеризация сервисов — размещение в k8s — работа в команде — тестирование Роль в проекте JAVA—разработчик
Spring Framework (Boot, Data, Security), PostgreSQL, Liquibase, Git, Docker, gitlab CI/CD, Kafka
Сентябрь 2019 - декабрь 2020 месяцев