1. Профиль

  • Архитектор программного обеспечения

  • Ведущий разработчик

  • Инженер по оптимизации производительности

  • Архитектор баз данных

2. О себе

Старший архитектор программного обеспечения с опытом более 20 лет в области создания эффективных и инновационных решений на основе Java / Open source / Linux. Занимался руководством проектами и разработкой архитектуры корпоративного уровня. Обладаю экспертизой в обеспечении безопасности, оптимизации производительности и разработке масштабируемых систем. Готов принимать руководящую роль в команде разработчиков. Имею опыт проведения технических собеседований. Умею эффективно работать как по классическим, так и по гибким процессам разработки, фокусируя внимание на задачах заказчика и тщательно соблюдая установленные сроки. На протяжении всей профессиональной деятельности моё увлечение программированием и активное участие в разработке никогда не прекращались.

Некоторые мои опен-сорс проекты:

3. Образование

Белорусский государственный университет, Факультет прикладной математики и информатики, Математик - системный программист, 1996-2001 гг.

4. Языки

  • Русский (родной)

  • Английский (B1)

5. Навыки и технологии

  • Теория: Глубокое понимание алгоритмов, структур данных и основ компьютерных наук успешно интегрирую в практическую разработку, обеспечивая создание эффективных и оптимизированных решений в области программного обеспечения.

  • Проектирование ПО: Навыки в проектировании отказоустойчивых, масштабируемых и высоконагруженных систем, применении архитектурных шаблонов и принципов.

  • Языки программирования: Java (а также Groovy, Kotlin) — основной язык.

  • Библиотеки, фреймворки и продукты: Знание и опыт работы с популярными библиотеками и фреймворками в Java-экосистеме а также с комплементарными продуктами (Apache Commons, Caffeine, GeoIP, gRPC/Protobuf, Gson, Guava, Hibernate, HikariCP (и другие пулы соединений), Jackson, Jetty JUnit, Kafka, Logback, Mockito, MySQL, Oracle Database, POI/jXLS, PostgreSQL, Project Reactor, Quartz, Redis (Jedis/Redisson), SLF4J, Spring Boot, Spring Framework (и Spring Projects), Spring Security, SQL Server, Thymeleaf, Tomcat, Wicket, Wildfly, etc.).

  • Сборка, интеграция и доставка: Практический опыт в сборке и доставке проектов, включая современные инструменты для автоматизации сборки, тестирования и развертывания, что обеспечивает эффективный, надежный и непрерывный цикл интеграции и доставки программного обеспечения.

  • Проектирование БД: Разработка и оптимизация структуры баз данных, опыт работы с реляционными и NoSQL базами данных.

  • SQL: Глубокие знания и практический опыт работы с SQL.

  • Контейнеры: Опыт работы с контейнеризацией, включая Docker.

  • Нагрузочное тестирование: Разработка, проведение и анализ нагрузочных тестов.

  • Оптимизация производительности: Умение оптимизировать производительность приложений на различных уровнях.

  • Проверка кода: Использование метрик для оценки качества кода и принятия решений по его улучшению.

  • Организация процесса разработки: Управление процессом разработки, внедрение лучших практик разработки ПО.

  • Проведение интервью: Опыт проведения технических собеседований и оценки квалификации кандидатов.

  • Широкий кругозор: Понимание методологий разработки ПО, принципов и процессов тестирования, практик DevOps.

6. Опыт работы

6.1. Auxilium Wealth Place, 04.2022 - 11.2023

Auxilium Wealth Place — технологическая платформа, предназначенная для управления активами и финансового планирования. Она позволяет менеджерам по работе с клиентами и специалистам связывать потребности клиентов с утвержденными поставщиками услуг, учитывая правила консультирования в разных странах.

С точки зрения технологии система представляет собой каталог поставщиков и их услуг. Она включает в себя публичную часть с поиском и фильтрами и раздел администратора для управления информацией.

6.1.1. Задачи

  • Организация разработки проекта, включая планирование, выделение задач и управление командой разработчиков.

  • Реализация структуры модулей и сборки, обеспечивая легкость сопровождения и масштабирования проекта.

  • Проектирование базы данных, включая разработку схемы, оптимизацию запросов и обеспечение надежности данных.

  • Полная реализация модуля по миграции гетерогенных данных заказчика (базы данных, файлы) в новую БД, включая нормализацию данных и обеспечение их целостности.

6.2. Интернет- и мобильный банк для группы Raiffeisen Bank International, 07.2020 - 02.2022

Raiffeisen Bank International — одна из крупнейших австрийских банковских групп, кооперативный банк. Штаб-квартира находится в Вене. Помимо Австрии ведёт работу ещё в 14 странах Центральной и Восточной Европы, обслуживая 17,2 миллиона клиентов.

В рамках проекта было разработано IT-решение для Райффайзен Банка. Мы создали комплексную систему, объединяющую онлайн и мобильные каналы банка, портал для частных и корпоративных клиентов, интегрированную логику PFM, функциональность цифровых продаж, административную консоль, а также интеграцию системы безопасности и расширенные возможности отчетности.

6.2.1. Задачи

  • Разработка архитектуры монолитного приложения на платформе Java с учетом требований проекта и оптимальной интеграции с существующей инфраструктурой.

  • Шаблоны модулей, система сборки проекта и доставки заказчику.

  • Полная реализация модуля аутентификации/авторизации, включая проектирование БД, учитывая стандарты безопасности и строгие требования по производительности.

  • Интеграция с IBM MQ для обеспечения надежного и асинхронного обмена данными в рамках системы.

  • Разработка механизмов обнаружения и защиты от сбоев для обеспечения высокой доступности модулей.

6.3. Интернет- и мобильный банк для Росбанка, 05.2019 - 10.2020

ПАО Росбанк — российский универсальный банк, главным акционером банка является российская Группа Интеррос. Штаб-квартира находится в Москве. Включён Банком России в перечень системно значимых кредитных организаций.

Проект включал разработку нового мобильного приложения. Проект обеспечил доступ более 4 миллионов физических и юридических лиц из 70 регионов России к основным банковским услугам через различные каналы, поддерживая высокие стандарты безопасности и кредитные рейтинги.

6.3.1. Задачи

  • Участвовал во всех этапах agile-разработки, включая проведение сессий груминга для детализации требований, планирование спринтов, активное участие в оценке задач через методологию покера планирования, обеспечивая высокую степень прозрачности и взаимодействия в команде разработки.

  • Разработка нескольких микросервисов.

  • Разработка модуля чата пользователя со службой поддержки, включая проектирование API для мобильного приложения, бэкенд модуля и проектирование соответствующей базы данных.

  • Отладка и интеграция модуля чата с CRM-системой Банка.

6.4. Интернет- и мобильный банк для BNP Paribas, 07.2017 - 10.2019

BNP Paribas — французский финансовый конгломерат. На 2018 год занимает девятое место среди крупнейших банков мира по активам. Входит в число глобально системно значимых банков.

Проект по созданию нового решения интернет-банкинга для обслуживания частных лиц (розница) и корпоративных клиентов малого и среднего бизнеса (выделен в отдельный проект) через веб- и мобильные (iOS/Android) каналы.

6.4.1. Задачи

  • Разработка архитектуры монолитного приложения на платформе Java с учетом требований проекта и оптимальной интеграции с существующей инфраструктурой.

  • Шаблоны модулей, система сборки проекта и доставки заказчику.

  • Разработка механизмов обнаружения и защиты от сбоев для обеспечения высокой доступности модулей.

  • Разработка, выполнение и анализ нагрузочных тестов.

6.5. Интернет- и мобильный банк для Société Générale, 03.2014 - 08.2017

Société Générale — французский финансовый конгломерат. На 2017 год был третьим крупнейшим банком Франции и 20-м в мире по размеру активов. Входит в число глобально системно значимых банков.

Мобильное и веб приложения, предоставляющие пользователям доступ к основным продуктам банка, позволяющие совершать платежи и денежные переводы, получать выписки по счетам и т.д.

6.5.1. Задачи

  • Разработка архитектуры монолитного приложения на платформе Java с учетом требований проекта и оптимальной интеграции с существующей инфраструктурой.

  • Взаимодействие с Microsoft SQL Server для эффективного хранения и управления данными.

  • Реализация более 10 точек интеграции с работающими в Банке системами, учитывая разнообразие протоколов и каналов взаимодействия.

  • Полная реализация демо-режима, предоставляющего гостевому пользователю доступ ко всем функциональным возможностям приложения без обращения к системам ядра Банка.

  • Разработка подсистемы автоматических платежей по расписанию.

  • Разработка собственной системы для инкрементальных бэкапов базы данных, обеспечивающей надежное и эффективное восстановление данных в случае необходимости.