Специалисты
Технологический стек:
Java, Java Spring Framework, Apache Kafka, PostgreSQL,Elasticsearch, Apache Maven, Solr, Spring Boot, Git, Gradle, Camunda, Openshift, Bitbucket, Aws Lambda, Aws S3, Aws Step Function, Docker, Hadoop
Глубокий технический опыт (15+ лет):
- Работал с полным циклом разработки: от проектирования архитектуры до оптимизации и поддержки.
Основные технологии: Java, Spring Boot, Kafka, PostgreSQL, Elasticsearch, Camunda, AWS (Lambda, S3, DynamoDB), Docker, OpenShift.
Экспертиза в высоконагруженных системах:
- Разрабатывал сервисы, выдерживающие нагрузку до 10 000 RPS (Сбердокс, ВТБ).
- Настраивал Kafka для асинхронной обработки событий, повышая отказоустойчивость.
Оптимизация и рефакторинг:
- Ускорил поиск в Elasticsearch через шардинг и оптимизацию индексов.
- Уменьшил время обработки PDF-документов за счет улучшения алгоритмов парсинга.
Работа с данными и интеграциями:
- Спроектировал химическую БД с субструктурным поиском (RDKit), ускорив запросы в 3 раза.
- Реализовал BLE-навигацию с погрешностью <1.5 м (фильтр Калмана + трилатерация).
Автоматизация и тестирование:
- Автоматизировал рутинные процессы (конвертация каталогов в Excel, парсинг PDF).
- Достиг 85% покрытия кода тестами (JUnit, Mockito), сократив баги в production на 50%.
Лидерские навыки:
- Провел 100+ код-ревью, внедрял лучшие практики в командах до 20 человек.
- Участвовал в проектировании архитектуры микросервисов (ВТБ, Сбердокс).
Образование:
Санкт-Петербургский Государственный Университет. прикладная математика и информатика
2004-2009
Банковский проект
О проекте: Картотека и очереди. Команда: 20 Java Developers, 5 Бизнес-Аналитиков, 5 Тестировщиков. Роль на проекте: Senior Java Engineer. Обязанности: ● Разработка новых функций и компонентов. ● Написание сервиса по оплате платежных документов и постановке в картотеку. ● Создание технической документации для справки и отчетности. ● Определение общей архитектуры приложения совместно с командой СА. ● Построение БД, поддержка стенда. ● Рефакторинг кода, актуализация БД. ● Управления сервисами посредством Kafka. ● Написание юнит тестов. ● Написание интеграционных тестов. ● Рефакторинг, фикс багов. ● Участие в код-ревью. ● Внедрение новых технологий в проект. Достижения: ● Разработал и внедрил новые функциональные компоненты, что позволило расширить возможности продукта и улучшить пользовательский опыт. ● Создал сервис обработки платежных документов с автоматической постановкой в картотеку, сократив время обработки платежей и минимизировав ручные ошибки. ● Подготовил комплексную техническую документацию, включая руководства для разработчиков и отчетные формы, что ускорило onboarding новых членов команды и улучшило прозрачность процессов. ● Участвовал в проектировании архитектуры приложения, предложив оптимизированные решения, которые повысили производительность системы. ● Оптимизировал структуру базы данных и обеспечил поддержку тестового стенда, что сократило время выполнения запросов и улучшило стабильность среды. ● Провел масштабный рефакторинг кода и актуализировал БД, устранив узкие места и улучшив сопровождаемость кодовой базы. ● Настроил управление сервисами через Kafka, обеспечив надежную асинхронную обработку событий и повысив отказоустойчивость системы. ● Реализовал юнит- и интеграционные тесты с покрытием более 80%, что значительно снизило количество багов в production. ● Активно участвовал в код-ревью, помогая поддерживать высокое качество кода и делиться лучшими практиками внутри команды. ● Внедрил новые технологии в проект, включая современные фреймворки и инструменты, что повысило эффективность разработки и расширило технический стек команды.
Java 17+, SpringBoot, Spring Data JPA, Postgres, Kafka, Camunda, Микросервисы, Openshift, Maven, Git
Январь 2024 -Ноябрь 2025 месяцев
Проект по электронному документообороту
Система электронного документооборота. Команда: 4 Java Developers, 2 UI Developers, 2 Бизнес-Аналитика, 2 DevOps, 2 Тестировщика. Роль на проекте: Java Engineer. Обязанности: ● Разработка новых функций и компонентов. ● Полнотекстовый поиск по документам. ● Создание структуры хранения данных. ● Создание сущностей и отношений между ними. ● Оптимизация ElasticSearch. ● Разработка серверной части приложения. ● Проведение код-ревью. ● Рефакторинг кода, фикс багов. ● Модульное и интеграционное тестирование с использованием JUnit, Mockito. Достижения: ● Разработал и внедрил новые функции для расширения функциональности продукта, что позволило увеличить его ценность для пользователей. ● Реализовал систему полнотекстового поиска по документам с использованием ElasticSearch, сократив время поиска и улучшив точность результатов на 40%. ● Спроектировал оптимальную структуру хранения данных, что уменьшило объем занимаемого пространства на 25% при одновременном повышении скорости доступа к данным. ● Разработал систему сущностей и их взаимосвязей, обеспечив целостность данных и улучшив логику работы приложения. ● Провел глубокую оптимизацию ElasticSearch: - Настроил шардинг и репликацию - Оптимизировал запросы и индексы - Увеличил производительность поиска на 60% ● Разработал ключевые компоненты серверной части приложения, обеспечив стабильную работу под нагрузкой до 10 000 RPS. ● Провел более 100 код-ревью, повысив общее качество кодовой базы и сократив количество критических багов. ● Создал комплекс тестов (юнит и интеграционных): - Достиг 85% покрытия кода тестами. - Сократил количество регрессионных ошибок на 50%. - Автоматизировал ключевые сценарии тестирования.
Java, SpringBoot, Spring Data JPA, Postgres, ElasticSearch, Kafka, Микросервисы, Openshift, Git, Bitbucket, Gradle.
11.2022 - 09.2023 месяца
Проекты в области медицины и телекоммуникаций
О проекте: 1-Программа по проверке рекламных буклетов. 2-Навигация внутри зданий по блютус маякам. 3-Химическая база данных. Сфера проекта: Здравоохранение. Телеком. Медиа. Команда: PQA - Java Developer, 5 Python Developers, 2 Бизнес-Аналитика, 1 Архитектор, 2 DevOps, 5 Тестировщиков. Beacons - Java Developer, 1 Android Developer, 1 iOS Developer, 1 DevOps, 1 UI Developer. Хемуль - 4 Java Developers, 2 Тестировщика, 2 UI Developers. Роль на проекте: Java Engineer. Обязанности: ● Парсинг PDF-документов и сравнение параграфов с эталонными. ● Разработка и настройка парсеров для извлечения текстовых данных из PDF-файлов различных форматов (сканированные, текстовые, защищенные). ● Очистка и нормализация текста (удаление шумов, приведение к единой кодировке, обработка переносов строк). ● Реализация алгоритмов сравнения текста: - Точное сравнение (по хешам, совпадение строк). - Неточное сравнение (метрики Левенштейна, fuzzy-логика). - Семантический анализ ● Визуализация различий между документами (выделение изменений, генерация отчетов). ● Интеграция парсеров в автоматизированные pipelines. ● Распознавание линий и аннотаций к параграфам из изображений. ● Обработка изображений из PDF (обрезка, повышение резкости, бинаризация) с использованием OpenCV или PIL. ● Детекция текстовых блоков и аннотаций. ● Распознавание рукописных пометок и их классификация (ML-модели на основе CNN или трансформеров). ● Определение связей между аннотациями и текстом (позиционирование, анализ контекста). ● Постобработка данных (исправление ошибок OCR, сопоставление с текстовыми параграфами). ● Разработка бэкенда для навигации по Bluetooth-маякам (фильтр Калмана, трилатерация) ● Настройка считывания данных с BLE-маяков (RSSI, UUID) через библиотеки (BluePy, PyBluez). ● Реализация алгоритмов трилатерации для определения местоположения: - Расчет расстояний на основе RSSI. - Решение системы уравнений для нахождения координат. ● Фильтрация и сглаживание данных с помощью фильтра Калмана: - Настройка матриц состояния и ковариации. - Адаптация параметров под условия среды (интерференция, шумы). ● Разработка API для передачи координат (REST/gRPC, WebSockets для real-time данных). ● Тестирование системы в реальных условиях (калибровка, оценка точности). ● Разработка бэкенда для химической базы данных (поиск по веществам). ● Проектирование структуры БД (PostgreSQL, MongoDB) для хранения химических данных (SMILES, InChI, молекулярные формулы). ● Реализация поиска по веществам: - Точный поиск (по названию, формуле). - Структурный поиск (субструктурный поиск через RDKit или ChemAxon). - Поиск по свойствам (фильтрация по молекулярной массе, растворимости и т.д.). ● Оптимизация запросов (индексы, кэширование, шардинг для больших баз). ● Интеграция с внешними API (PubChem, ChemSpider). ● Разработка инструментов для визуализации молекул. ● Конвертация химических каталогов в Excel. ● Парсинг исходных данных (SDF, CSV, XML) с помощью Pandas/RDKit. ● Трансформация данных (приведение к единому формату, валидация структур). ● Генерация Excel-отчетов (OpenPyXL, XlsxWriter) с поддержкой: - Форматирования (цветовые маркеры, условное форматирование). - Динамических таблиц и сводных отчетов. ● Автоматизация процесса (скрипты для регулярного обновления каталогов). ● Разработка автокликера и парсинга PDF. ● Создание скриптов для автоматизации действий в GUI (PyAutoGUI, Selenium для браузеров). ● Парсинг PDF с динамическим контентом. ● Обработка исключений (перехват ошибок, логирование, повторные попытки). ● Интеграция с другими системами (например, автоматическая загрузка данных в CRM). Достижения: ● Оптимизировал парсинг PDF, сократив время обработки документов за счет улучшения алгоритмов очистки текста и параллельной обработки файлов. ● Достиг точности распознавания аннотаций 92%, внедрив комбинацию OpenCV и кастомной CNN-модели для детекции рукописных пометок. ● Реализовал систему indoor-навигации с погрешностью менее 1.5 м, интегрировав фильтр Калмана с BLE-маяками для складов. ● Ускорил поиск по химической БД в 3 раза, разработав индексированную структуру для субструктурных запросов через RDKit. ● Автоматизировал конвертацию 500+ каталогов в Excel, сократив ручную работу с 8 часов до 20 минут на обработку. ● Создал автокликер для ежемесячного парсинга 10K+ PDF, снизив количество ошибок при ручном вводе данных до нуля.
Java, SpringBoot, Aws Lambda, Aws S3, Aws Step Function, DynamoDb, Poppler, Maven, Git, Aws KMS, Poppler, Postgres, Docker, Tesseract, Elastic Search.
02.2013 -07.2022 месяца