ОБ
Олег Б.
Мужчина, 24 года
Россия, Санкт-Петербург, UTC+3
Ставка
3 875 Р/час
НДС не облагается
Специалист доступен с 21 сентября 2024 г.
Добавьте подходящих специалистов в список и оформите заявку для предварительного бронирования времени специалистов. После оформления заявки ваш персональный менеджер организует прохождение всех необходимых проверок с вами и каждым кандидатом из заявки. Специалист привлекается к проекту только после окончательного подтверждения его выхода с вашей стороны.
Подробнее
О специалисте
Специализация
Java разработчик
Грейд
Навыки
Отрасли
Проекты
(5 лет 6 месяцев)
Информационная система лесного комплекса
Роль
Team Lead|Senior Java
Обязанности
О проекте:
Подсистема администрирования и мониторинга (часть Федеральной государственной
информационной системы лесного комплекса). Администрирование и мониторинг баз данных.
Сфера проекта:
Government & Public Sector
Команда:
1 PM, 3 Frontend, 5 Backend, 3 аналитика, 3 QA, 1 DevOps
Роль на проекте:
Team Lead java.
Обязанности:
Спроектировал модель данных;
Спроектировал REST API;
Выбрал необходимое для реализации подсистемы стороннее ПО: (Prometheus, Grafana Loki, Grafana)
Реализовал структуры хранения данных в PostgreSQL;
Реализовал объектную модель данных в коде;
Реализовал REST API;
Произвел интеграцию с Prometheus для получения из него данных по метрикам и дальнейшего отображения их на интерфейсе подсистемы, разделенных по модулям всем системы
Произвел интеграцию с Grafana для двусторонней связи в части графиков метрик, была необходимость синхронизации графиков Grafana с аналогичными графиками на интерфейсе разрабатываемой системы в реальном времени;
Произвел интеграцию с Grafana Loki для получения логов и отображения их на интерфейсе подсистемы, разделенных по модулям всем системы;
Произвел интеграцию с Kubernetes API для получения данных о ресурсах, с которыми запускаются поды системы, а также для перезапуска деплоймента;
Реализован функционал, позволяющий менять конфигурацию микросервиса без повторной компиляции с помощью Spring Cloud Config Server;
Нашел обходные пути для реализации смены конфигурации без повторной компиляции для сервисов, написанных не на Java;
Реализовал сервис отправки уведомлений, возникающих в случае превышения значения метрики Prometheus, на интерфейс системы и в Telegram посредством tg-бота. На данный момент разрабатываемая моей командой подсистема сдана заказчику и запущена в опытную эксплуатацию.
Задачи руководителя:
Настроил процесс разработки;
Создал GitFlow;
Настроил все регулярные встречи в команде;
Мотивировал сотрудников на работу в выходные (работа в выходные не оплачивалась);
Регулярно помогал в нахождении решения;
Решил несколько конфликтов между моей командой и смежными, выявил корень проблемы и нейтрализовал его;
Справился вместе с командой с критическими для проекта ситуациями, (внезапно поставленный показ заказчику в середине спринта по новой фиче);
Помог сотрудникам с дальнейшим развитием. Подводя итог здесь, могу также выделить сданный проект, так как это работа всей команды. а также развитие своих сотрудников: - два Junior - разработчика стали middle - разработчиками; - один middle - разработчик стал senior - разработчиком; - один стажер стал junior+ разработчиком. - подготовил себе замену).
Из личностных достижений:
Успешная работа в команде, количество людей, с которыми необходимо было взаимодействовать, резко увеличилось из-за должности teamlead, но это не вызвало проблем;
На проекте отсутствовал должный уровень анализа, поэтому приходилось ставить задачи, формулировать текст технического задания и пояснительной записки, строить диаграммы подсистемы;
Стек специалиста на проекте
Grafana, Kubernetes, Spring Data, Spring MVC, Liquibase, Java, Git, Prometheus, Kafka, Feign Client, Spring Cloud Config, Loki, Docker, PostgreSQL, Identity Server, Spring Boot, Spring
Отрасль проекта
Government & Public Sector
Период работы
Февраль 2022 - Июль 2024
(2 года 6 месяцев)
NDA
Роль
Java developer
Обязанности
О проекте:
Навигационно-информационная платформа для ГАИС «ЭРА-ГЛОНАСС»
Сфера проекта:
Transportation & Automotive
Команда:
1 PM, 2 Frontend, 4 Backend, 2 аналитика, 1 QA
Роль на проекте:
Java developer.
Обязанности:
Реализовал REST-API для закрытия функциональных требований;
Реализовал подключение MyBatis к проекту;
Реализовал централизованное решение для обработки исключений, возникающих в коде, и отправки их клиенту посредством Spring Handler Interceptor;
Реализовал централизованное решение для валидации приходящих от клиента данных;
Спроектировал и реализовал часть структуры базы данных, а также реализовал для нее с объектную модель Hibernate и мапперы MyBatis;
Подключил и настроил плагины Maven для развертывания проекта на стендах, подсчета покрытия тестов, генерации отчета о проделанной работе в спринте (подсчет коммитов, разделение коммитов по категориям: задача, исправление, улучшение и создание красивого отчета в формате .md);
Реализовал unit - тесты, покрывающие мой код;
Реализовал интеграционные тесты для проверки работоспособности нескольких функциональных требований.
Управленческие навыки
Дали в опеку стажера и поставили задачи:
Достичь покрытия кода unit - тестами в 80%;
Обеспечить логирование кода;
Исправить ошибки и уязвимости кода, выявленные SonarQube;
Для выполнения данной задачи:
Проанализировал ошибки, полученные SonarQube и выявил самые частые;
Подготовил формат логов и согласовал его со своим тимлидом;
Обучил стажера писать unit - тесты;
Дал стажеру свой отчет по SonarQube, предложил ему придумать исправление ошибок, остальные прописал сам;
На примере одного класса, который сам покрыл логами, продемонстрировал стажеру, как это делать;
Курировал выполнение задач и помогал в случаях, когда у стажера были проблемы. По итогу нашей совместной работы, поставленные задачи были выполнены. Продолжил работать наставником для стажера на более сложных для него задачах: реализация классов - контроллеров, бизнес - логики, ДАО слоя. Через 3 месяца после прихода стажера взяли в штат junior - разработчиком
Стек специалиста на проекте
Spring Data, MyBatis, Spring Cloud, Spring MVC, SonarQube, Java, Git, Feign Client, Handler, Hibernate, Maven, PostgreSQL, Spring Boot, Spring
Отрасль проекта
Logistics & Transport
Период работы
Май 2021 - Январь 2022
(9 месяцев)
NDA
Роль
Java developer
Обязанности
О проекте:
Web - версия сервиса проверки контрагентов (личный кабинет клиента), микросервис взаимодействия с СМЭВ для сервиса предоставления транспортной субсидии системы "Одно окно".
Сфера проекта:
Government & Public Sector
Команда:
1 PM, 3 Frontend, 5 Backend, 2 аналитика, 3 QA
Роль на проекте:
Java developer.
Обязанности:
Реализовал классы-контроллеры, классы-сервисы и слои данных на Spring для закрытия функциональных требований в рамках трехслойной архитектуры;
Реализовал обращения к другим сервисам посредством Spring Feign Client;
Реализовал несколько планировщиков с помощью Spring scheduler; - реализовал много скриптов миграции FlyWay;
Реализовал unit - тесты, покрывающие код моих коллег и мой;
Реализовал интеграционные тесты для проверки работоспособности нескольких функциональных требований;
Отрефакторил примерно 60% кода для соответствия принципам SOLID, тимлид остался доволен выполнением.
Работал с протоколом SOAP,
Успешно реализована интеграция с СМЭВ.
Стек специалиста на проекте
Spring Data, Spring Cloud, Spring MVC, SonarQube, Java, Git, Feign Client, Handler, Hibernate, Maven, PostgreSQL, Spring Boot, Spring
Отрасль проекта
Government & Public Sector
Период работы
Февраль 2019 - Апрель 2021
(2 года 3 месяца)
Формат работы
Формат работы
Удаленно
Командировки
Не готов
Релокация
Не готов
Готов работать на зарубежных проектах
Нет
Образование
Высшее
Учебное заведение
ИТМО
Специальность
Информационных технологий и программирования, Информационные системы и технологии
Завершение учебы
2021 г.