Алексей Сурков (aka_srkv), 34 года, Россия, МоскваАлексей Сурков (aka_srkv), 34 года, Россия, Москва

Алексей Сурков

Java (Kotlin) Back-end Software EngineerБэкенд разработчикСтарший (Senior)
От 500 000 ₽Не ищу работу

Контакты

Войти
Возраст: 34 года
Опыт работы: 5 лет и 4 месяца
Регистрация: 30.11.2022
Последний визит: 1 день назад
Гражданство: Россия
Местоположение: Россия, Москва
Дополнительно: готов к удаленной работе
Знание языков: Английский В2Русский родной язык

Обо мне

Backend Java (Kotlin) Software Engineer с 5+ годами опыта разработки распределённых систем на базе микросервисного подхода. Специализируюсь на создании отказоустойчивых и масштабируемых решений с использованием Spring Framework, Kafka, PostgreSQL, Docker и Kubernetes. Имею опыт работы как с синхронным (REST over HTTP), так и асинхронным (event-driven) подходами к межсервисному взаимодействию. 


Приверженец agile-методологий в организации рабочего процесса. Увлечён информационными технологиями и их влиянием на трансформацию бизнеса.


Техническая экспертиза


  • Java (Kotlin) Programming Language
  • JVM platform
  • Разработка back-end'ов enterprise уровня

Навыки

Java
Kotlin
Spring Boot
Apache Kafka
PostgreSQL
Docker
Kubernetes
ActiveMQ Artemis

Опыт работы

  • Универсальный digital-банк, создающий продукты для розничных и корпоративных клиентов
    МоскваБолее 5000 сотрудников
    Бэкенд разработчик (Старший)Senior Java (Kotlin) Software Engineer
    Апрель 2024 — По настоящее время (1 год)

    Система управления проектами и задачами организации 
    В составе команды проектирую и разрабатываю продукт, основанный на микросервисной event-driven архитектуре с сотнями тысяч сообщений ежедневно

    • Разработал библиотеку для перехода на Event Sourcing подход. Возможности: поддержка аудит-лога изменений, снимков (snapshots), проекций (read models) и гибкой замены event store
    • Оптимизировал throughput сервисов за счет реализации api-gateway на базе Kotlin Coroutines и Project Loom (Virtual Threads)
    • Разработал Spring-starter для эффективного взаимодействия с Artemis MQ (mediator, неблокирующая отправка, производительные listener'ы, обрабатывающие тысячи сообщений в секунду)
    • Внедрил базовый шаблон JVM сервиса для быстрого старта разработки (зависимости, структура гексагональной архитектуры
    • Разработал платформенный движок "Комментарии" (a.k.a Reddit, Habr). Древовидная структура, форматирование, оценки

    Tech Stack
    Kotlin 1.9.3, Spring 6, Spring Boot 3, PostgreSQL 16, ArtemisMQ, Kafka, Docker, Kubernetes, GitLab

    Бэкенд разработчик (Старший)Senior Java (Kotlin) Software Engineer
    Апрель 2021 — Август 2023 (2 года и 5 месяцев)

    Система управления операционными рисками Банка

    • Спроектировал и разработал public API продукта (REST over HTTP, Kafka, IBM MQ) в масштабах организации, что позволило стать полноценной мастер системой
    • Разработал модули системы, реализующие требования Банка России 716-П от 08.04.2020, что привело к существенному сокращению резервов
    • Реализовал интеграцию с Data Lake (JDBC + Hive) для повышения качества данных системы
    • Разработал Аудит действий пользователей при изменении бизнес-данных (PostgreSQL triggers + custom logic)
    • Ускорил CI благодаря миграции интеграционных тестов на Test Containers, что привело к возможности параллелизма выполнения

    Tech Stack
    Java 21, Kotlin 1.9, Spring 6, Spring Boot 3, Hibernate/JPA, PostgreSQL, Flyway, Kafka, IBM MQ, Docker, Kubernetes, GitLab

    • Информационные технологии и услуги
      МоскваБолее 5000 сотрудников
      Бэкенд разработчик (Старший)Senior Software Engineer
      Август 2023 — Апрель 2024 (9 месяцев)

      Стрим "Внешнеэкономическая деятельность (ВЭД)"

      В составе команды дизайнил сервисы ВЭД удобными, быстрыми и современными

      • Спроектировал, разработал и вывел в production новый cloud-native сервиса "Лента операций" для широкого круга клиентов («ВТБ Бизнес»)
      • Разработал внутренние библиотеки (на базе spring-starter) для разработчиков, сокращающих boiler-plate код в работе разработчиков
      • Внедрил технологии TestContainers для production-like среды исполнения
        интеграционных тестов
      • Аргументировал преимущества Kotlin/JVM, осуществил рефакторинг рефакторинг legacy сервисов, используя Kotlin
    • Помогаем крупному бизнесу становиться цифровым
      КазаньОт 10 до 100 сотрудников
      Бэкенд разработчик (Средний)Java Developer
      Сентябрь 2020 — Апрель 2021 (8 месяцев)

      Система заказа корпоративного транспорта на производственные объекты. 
      Оптимизация построения маршрутов развоза сотрудников

      • Реализовал отказоустойчивую очередь (на базе Kafka) для математического движка по решению систем линейных уравнений для нахождения координат оптимального маршрута (simplex-method)
      • Внедрил S3-compatible (MinIO) решение вместо существовавших прямых файловых обменов между сервисами организации 
      • Реализовал переход от HTTP к GRPC в межсервисном взаимодействии, что сократило время на сетевое взаимодействие и десериализацию сообщений ~ в 5 раз

      Tech Stack
      Java 11, Spring 5, Spring Boot 2, PostgreSQL,  Kafka, MinIO,gRPC, Gurobi Optimizer (Math Engine)

      • Крупнейшая цифровая платформа. Технобренд, объединяющий лучшие мировые практики и самый современный стек
        МоскваБолее 5000 сотрудников
        Бэкенд разработчик (Средний)Java Software Engineer
        Декабрь 2019 — Август 2020 (9 месяцев)

        Сервис обработки массовых реестровых платежей (зарплатные проекты, соц. выплаты и т.д.)

        Главная задача задача сервиса - быстро и качественно выполнить проверку реестров  произвольного размера выплати на корректность. Средняя нагрузка ~15 000 реестров час, средний объем реестра - 1000 записей.

        • Внедрил параллелизм обработки в CPU bound этапах процесса (Fork‑Join Pool)
        • Перевел сервис с session-based авторизации на JWT-based. Сервис стал stateless, что открыло возможность горизонтального масштабирования без дополнительных сложностей
        • Внедрил асинхронную обработку I/O bound задач для увеличения throughput
        • Внедрил инструмент для управления и применения изменений схемы базы данных (Liquibase) 

        Высшее образование

        • МГТУ «СТАНКИН»

          Московский государственный технологический университет «СТАНКИН»
          Информационных технологий (ИНТЕХ)
          Сентябрь 2007 — Январь 2013 (5 лет и 4 месяца)

          Компьютерные системы управления качеством для автоматизированных производств