Java developer

Уровень зарплаты: от 25 000 руб.
Местоположение: Россия, Москва и область (МСК +0ч)

Резюме: Java developer

# Senior Java Backend Developer / Lead Java Developer

**Java Backend Developer с опытом коммерческой разработки более 6 лет.**

Специализируюсь на проектировании и разработке высоконагруженных backend-систем, микросервисной архитектуре, информационной безопасности и интеграции корпоративных решений. Имею опыт реализации проектов с нуля: от выбора архитектуры, технологического стека и проектирования модели данных до разработки, тестирования, настройки CI/CD, мониторинга и сопровождения в production.

В Сбере выполнял функции технического лидера Java-направления в проекте **LoyaltyID / UserManager** — сервисе аутентификации и авторизации корпоративной экосистемы LMC. Отвечал за архитектуру backend-компонентов, реализацию OAuth2/OIDC, интеграции с корпоративными системами идентификации и обеспечение безопасности сервисов.

Работал как с классическим стеком Spring Boot, так и с реактивной архитектурой на **Spring WebFlux, Project Reactor и R2DBC**. Проектировал REST API, механизмы авторизации, интеграционные сервисы, системы мониторинга и аудита. Оптимизировал взаимодействие с PostgreSQL, применял Redis для кэширования и снижения нагрузки на базу данных.

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

Имею опыт самостоятельного ведения задач полного цикла, участия в архитектурных обсуждениях, проведения Code Review, оптимизации процессов разработки и внедрения инженерных практик.

---

## Ключевые компетенции

**Языки и Core Java**
- Java 8/11/17, Core Java, Collections Framework, Stream API, Generics
- Multithreading, Concurrency, Concurrent Collections
- ООП, SOLID, Design Patterns, Clean Code

**Backend-разработка и архитектура**
- Spring Boot, Spring MVC, Spring WebFlux, Spring Security
- Project Reactor, Spring Data, R2DBC
- REST API, микросервисная архитектура
- Проектирование API, интеграций и моделей данных
- Реактивное и асинхронное программирование

**Безопасность и управление доступом**
- OAuth 2.0, OpenID Connect (OIDC), JWT, PKCE
- Spring Security, RBAC, mTLS
- Active Directory, LDAP
- Аутентификация, авторизация, управление токенами и сессиями
- SAST, анализ безопасности приложений

**Базы данных и кэширование**
- PostgreSQL, SQL
- Redis
- Liquibase
- Проектирование схем БД, оптимизация запросов и миграции данных

**Интеграции и Big Data**
- Apache Trino
- Разработка Java-плагинов
- Интеграция корпоративных систем
- JSON, YAML

**Тестирование и качество**
- JUnit 5, Mockito, WireMock
- Unit-тестирование, интеграционное тестирование
- Code Review, рефакторинг, статический анализ кода

**DevOps и наблюдаемость**
- Docker, Jenkins, GitLab CI/CD
- Git, Bitbucket, GitLab
- Maven, Gradle
- Prometheus, Grafana
- Spring AOP, MDC, логирование и аудит
- Настройка CI/CD и автоматизация сборок

---

# Опыт работы и ключевые проекты

## 1. Сбер — LoyaltyID / UserManager

**Роль:** Java Backend Developer
**Период проекта:** март 2024 — январь 2026
**Отрасль:** FinTech, банковские технологии
**Проект:** система аутентификации и авторизации пользователей экосистемы LMC

### О проекте

LoyaltyID / UserManager — централизованный backend-сервис аутентификации и авторизации, обеспечивающий безопасный доступ пользователей к сервисам корпоративной экосистемы LMC.

Сервис интегрирован с API Gateway, корпоративным Active Directory и внешними провайдерами идентификации. Поддерживает различные сценарии аутентификации, выпуск и проверку JWT-токенов, управление пользователями, учётными записями и правами доступа.

### Зона ответственности

- Проектирование и разработка архитектуры сервисов аутентификации и авторизации на Java 17 и Spring Boot.
- Разработка реактивных backend-компонентов с использованием Spring WebFlux, Project Reactor и R2DBC.
- Проектирование OAuth2/OIDC-сценариев, механизмов управления токенами, интеграций с API Gateway и внешними identity-провайдерами.
- Разработка доменной модели, проектирование PostgreSQL и управление миграциями Liquibase.
- Оптимизация производительности, обеспечение безопасности, мониторинга и аудита.
- Техническое сопровождение разработки, Code Review, участие в архитектурных обсуждениях и развитии инженерных стандартов.

### Ключевые достижения

**1. Спроектировал и реализовал систему аутентификации на базе OAuth2/OIDC.**

Разработал ключевые компоненты Authorization Server, реализовал поддержку Authorization Code Flow, работу с JWT и интеграцию со Spring Security. Реализовал endpoints `/oauth/authorize`, `/oauth/token`, `/oauth/userinfo`, механизмы проверки токенов и управления доступом.

**2. Реализовал интеграцию с Active Directory и внешними identity-провайдерами.**

Разработал собственный ReactiveAuthenticationManager для интеграции Spring Security с AD/LDAP. Реализовал механизмы аутентификации через корпоративные учётные записи и внешние системы идентификации, включая SberID и SberBusiness ID.

**3. Спроектировал расширяемую доменную модель пользователей и учётных записей.**

Разработал модель User / Account / Group с поддержкой нескольких провайдеров идентификации. Спроектировал структуру PostgreSQL, реестр OAuth2-клиентов, механизмы управления группами и миграции Liquibase.

**4. Разработал собственную библиотеку мониторинга на базе Spring AOP.**

Реализовал сбор технических и бизнес-метрик, включая количество вызовов, время выполнения операций и показатели аутентификации. Организовал экспорт метрик в Prometheus и визуализацию через Grafana.

**5. Реализовал сквозной аудит и передачу контекста логирования.**

Обеспечил передачу MDC-контекста в реактивных цепочках Project Reactor, что повысило прозрачность обработки запросов и упростило диагностику ошибок в распределённой системе.

**6. Оптимизировал производительность backend-сервисов.**

Внедрил Redis для кэширования часто запрашиваемых данных, сократив количество обращений к PostgreSQL. Оптимизировал обработку данных и взаимодействие компонентов с учётом многопоточности и реактивной архитектуры.

**7. Участвовал в выборе архитектурных решений по безопасности.**

Провёл техническую оценку внедрения RASP-агента в JVM с учётом дополнительной нагрузки на runtime. Для рассматриваемого сценария обосновал применение SAST-проверок в CI/CD без внедрения дополнительного runtime-агента.

**8. Оптимизировал процессы разработки и поставки изменений.**

Настроил и адаптировал Jenkins CI/CD-пайплайны, интеграцию с Bitbucket, автоматическую сборку и запуск тестов. Участвовал в организации Code Review и контроле качества изменений.

### Технологический стек

Java 17, Spring Boot, Spring WebFlux, Spring Security, Project Reactor, Spring Data R2DBC, OAuth2, OIDC, JWT, PostgreSQL, Redis, Liquibase, Spring AOP, Prometheus, Grafana, JUnit 5, Mockito, WireMock, Docker, Jenkins, Bitbucket, GitLab, Maven.

---

## 2. МТС — MTS BigData / Apache Trino

**Роль:** Java Backend Developer
**Период:** ноябрь 2022 — март 2024
**Отрасль:** Telecom, Big Data
**Проект:** разработка инструментов обработки данных, контроля доступа и аудита SQL-запросов

### О проекте

Разработка и развитие компонентов Big Data-платформы МТС на базе Apache Trino. Основные задачи — контроль выполнения SQL-запросов, управление доступом к данным, аудит операций и автоматизация конфигурации корпоративных систем.

### Зона ответственности

- Разработка Java-плагинов для Apache Trino и backend-приложений на Spring Boot.
- Проектирование механизмов контроля SQL-запросов и разграничения доступа к данным.
- Разработка сервисов автоматизации и обработки конфигураций.
- Настройка CI/CD, управление репозиториями и процессами поставки.
- Тестирование, Code Review, рефакторинг и сопровождение production-компонентов.

### Ключевые достижения

**1. Разработал QueryLog Plugin для Apache Trino.**

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

**2. Разработал Trino SQL Plugin для управления доступом к данным.**

Спроектировал механизм контроля SQL-запросов и ограничения перемещения данных между каталогами. Участвовал в согласовании архитектуры модели белых списков и правил доступа к нескольким источникам данных.

**3. Создал RulesGenerator для автоматизации управления доступом.**

Разработал Java-приложение, автоматически генерирующее конфигурации и правила доступа на основе JSON/YAML. Решение упростило поддержку и изменение политик доступа.

**4. Оптимизировал обработку данных и повторное использование компонентов.**

Применял Stream API, Collections и Generics для обработки результатов запросов, проектирования универсальных сервисных интерфейсов и работы с многопоточными сценариями. Использовал Redis для кэширования справочных данных.

**5. Участвовал в развитии процессов CI/CD.**

Настраивал сборку, тестирование и доставку Java-компонентов, работал с GitLab, Jenkins и Bitbucket, участвовал в Code Review и поддержке процессов командной разработки.

### Технологический стек

Java, Spring Boot, Apache Trino, SQL, LDAP/Active Directory, Redis, JSON, YAML, GitLab, Bitbucket, Jenkins, CI/CD, Maven, Stream API, Collections, Generics.

---

## 3. Автоматизация бизнес-процессов ресторанного холдинга

**Роль:** Java Backend Developer (Middle)
**Период:** июнь 2020 — октябрь 2022
**Отрасль:** Retail / HoReCa
**Заказчик:** nikk.co.il

### О проекте

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

### Зона ответственности

- Разработка backend-функциональности и REST API на Java.
- Проектирование и реализация бизнес-логики новых модулей.
- Разработка моделей данных и SQL-запросов.
- Поддержка и рефакторинг существующего функционала.
- Исправление production-дефектов, написание unit-тестов и участие в Code Review.

### Ключевые достижения

- Разработал backend-компоненты для автоматизации работы со счетами, заявками и клиентскими обращениями.
- Участвовал в проектировании новых модулей и расширении существующей функциональности.
- Повышал стабильность приложений за счёт исправления дефектов, рефакторинга и тестирования.
- Оптимизировал обработку бизнес-данных с использованием Java Collections и Stream API.

### Технологический стек

Java, REST API, SQL, JUnit, Git, Collections Framework, Stream API.

---

## 4. MASA — Разработка функциональности интернет-магазина

**Роль:** Java Developer Intern
**Период:** ноябрь 2019 — июнь 2020
**Отрасль:** E-commerce

### О проекте

Коммерческая стажировка в команде Java-разработки интернет-магазина.

### Задачи и результаты

- Участвовал в разработке backend-функциональности интернет-магазина.
- Выполнял задачи по реализации и доработке существующих компонентов.
- Получил практический опыт командной коммерческой разработки и работы с Java.

**Технологический стек:** Java.

---

# Образование

**Национальный исследовательский университет «МЭИ»**
Высшее образование, январь 2025 года.

Специальность: экономика, бухгалтерский учёт, анализ и аудит.

---

# Дополнительная информация

**Языки**
- Русский — родной (C2)
- Английский — Intermediate (B1)

**Профессиональные интересы**

Архитектура распределённых систем, высоконагруженный backend, информационная безопасность, производительность Java-приложений, реактивное программирование, Big Data и автоматизация процессов разработки.

**Подход к работе**

Предпочитаю глубокое погружение в технические задачи и понимание бизнес-контекста. Умею самостоятельно проектировать решения, выбирать технологии, оценивать архитектурные компромиссы и доводить разработку до работающего production-результата. Ориентирован на создание надёжных, производительных и сопровождаемых систем.

Посмотрите похожие резюме

Senior .NET Developer
Зарплата: 250 000 руб.
Java разработчик / Java Developer
Зарплата: 250 000 руб.
Middle PHP Developer
Зарплата: 140 000 руб.
Backend Developer
Зарплата: 120 000 руб.