|
Senior/Lead Java Developer |
|
-
Формирование и реализация мероприятий по оптимизации системы в результате которого
удалось
снизить нагрузку при промышленной эксплуатации на 75% с помощью внедрения
кэширования и
асинхронных операций, оптимизации взаимодействиц между серверами, упрощение запросов БД,
конфигурирования сервера приложений/БД.
-
Составление плана переноса реализованных компонентов системы для использования в новых проектах
с расчётом требуемых ресурсов, обоснованием и описанием особенностей их реализации. План учитывался
заказчиками при принятии положительного решения о целесообразности запуска нового проекта.
-
Реализация планировщика
заданий с многопользовательским web-интерфейсом и возможностью
гибкой настройки расписания запусков задач для управления и просмотра результатов
работы консольного граббера сайтов на стеке Guice/Jdbi/Quartz/JQuery.
|
|
- Backend:
- API:
Collections,
Concurrency,
Java 8
(Date/Time,
Streams),
JDBC,
Servlet
- DB: PostgreSQL, MySQL, MongoDB,
H2,
HSQLDB
- EE: JSP, JSTL, JPA, JTA, JNDI, JMX, JAX-WS,
JAX-RS, XML (JAXB, StAX)
- Frameworks:
Spring
(Boot, Data, HATEOAS, MVC, Security),
Guice,
- JPA:
Hibernate,
OpenJPA,
EclipseLink
- Libraries:
JDBI,
MyBatis,
Quartz,
Hazelcast
- Messaging:
JMS,
AKKA,
JGroups
- Utils:
Apache Commons (CLI,
Collections, DBCP, Email, FileUpload),
Guava,
StreamEx,
Lombok
- Testing: JUnit 4-5,
Mockito,
PowerMock,
AssertJ,
Spring Test (Context, MVC, Security)
- Tools:
jvisualvm,
Apache JMeter
- Frontend:
- Инструменты:
- Build: Maven
(Checkstyle,
Dependency,
Enforcer,
Shade
plugins),
Gradle
- Server: Tomcat (configuring, launching,
deploying), Apache HTTP
-
CI:
Travis CI,
Codecov,
Codacy,
Heroku
- IDE: IntelliJ IDEA, Jmix Studio
- VCS:
Git (branching, merging, rebasing, etc),
Gitlab,
Liquibase (configuring, scripting)
- Management:
Jira,
Confluence,
YouTrack
- знание и опыт применения концепций ООП, SOLID, шаблонов проектирования,
архитектурных шаблонов, UML
- родной русский, английский "intermediate", немецкий "elementary"
|
|
Smart Solution Team
|
07/2021 - н.в.: |
- Development Team Lead
- Участие и управление backend и frontend частями разработки ПО для автоматизации документооборота, ускорения бизнес-процессов и систематизации хранения документов на стеке Spring, OpenJPA, MyBatis, Vaadin, CUBA, jBPM, Gradle с помощью Youtrack, Confluence, Github.
- Проектирование, разработка и поддержка интеграций с внешними сервисами, обмена данными в распределённых системах с использованием кэширования, асинхронных операций, REST API, JAVA RMI, JSON, XML. Миграция проектов на Java 8/11.
- Развёртывание разработанного командой ПО на тестовых и продуктовых контурах. Конфигурирование и мониторинг серверов (Tomcat, Apache HTTP Server) и БД (PostgreSQL, MongoDB).
- Анализ системы и поиск оптимальных вариантов реализации бизнес-требований. Определение ресурсоёмких операций в программной логике с последующей их оптимизацией.
- Участие в обсуждении найденных вариантов решений с заказчиком, оценка и планирование проведения работ.
- Код-ревью, перфоманс-ревью, проведение тех. собеседований, составление планов развития для разработчиков, выстраивание и оптимизация процессов коммандной разработки.
-
Сертификат Тезис-разработчика (2021)
|
Altarix
|
05/2020 - 07/2021.: |
- Инженер / Ведущий разработчик-программист
-
Участие в разработке высоконагруженной системы для автоматизации
документооборота, ускорения бизнес-процессов и систематизации хранения
документов на стеке Spring, OpenJPA, MyBatis, Vaadin, CUBA, jBPM, CryptoPro с
использованием Jira, Confluence, Gitlab
как инструментов ведения командной работы.
-
Проектирование и разработка новых модулей, расширение и доработка имеющегося
функционала.
Исследование и проведение оптимизации/рефакторинга кода, мониторинг и проведение
замеров
работы сервера. Написание, анализ и упрощение скриптов манипуляции данными
(sql/jpql/groovy), запись тест-кейсов для проведения нагрузочного
тестирования (jmetter).
-
Участие в обсуждении технических решений, обмен опытом с
коллегами-разработчиками
(в т.ч. активная помощь в их обучении),
проведение код-ревью. Тесная коммуникация с бизнес-аналитиками, специалистами QA
и тех. поддержки на понятном для них языке.
- Тестовое задание: CUBA Web
application «Dealer App»
Проектирование и реализация web-приложения учёта заявок на продажу автомобилей
с использованием фреймворка CUBA.
-
Сертификат Тезис-разработчика (Altarix)
|
Job4j
|
09/2018 - 05/2020: |
- Фуллстек-программист (Java + JS)
- Проект «Площадка по продаже машин».
Код.
- Проект «Граббер вакансий».
Код.
Разработка архитектуры и реализация логики работы многопользовательских
web-приложений с применением принципов REST.
Реализация серверной и клиентской частей многопользовательского web-приложения по автоматическому сбору информации с заданными критериями по расписанию с применением принципов REST и поддержкой загрузки файлов.
Реализация механизма серверной валидации данных запроса (с последующим отображением в формах на клиенте).
Написание обработчиков исключений с формированием ответа на клиент.
Реализация клиентской части для отображения полученных данных.
Написание SQL-скриптов, управление миграциями БД с Liquibase, тестов.
Конфигурирование параметров автоматической сборки проекта и запуска контейнера сервлетов.
|
Java Online
Projects
|
01/2019 - 01/2020: |
- Java-разработчик корпоративных приложений
-
Многопоточность. Веб сервисы.
- REST
API Web Service
«Restaurant voting system»
- Java
Enterprise, наиболее востребованные
технологии /инструменты / фреймворки Java
-
Разработка полнофункционального многомодульного Maven-проекта,
состоящего из 3-х
веб-приложений на технологическом стеке: XML (JAXB, StAX, XPath, XSLT), SOAP
(JAX-WS, MTOM),
JAX-RS (Jersey), JMS (ActiveMQ), AKKA (Typed и Untyped Actors), servlet 3.0,
jDBI,
LiquiBase, Guava, Thymeleaf, Lombok, StreamEx, Typesafe Config, Java
Microbenchmark JMH.
-
Разработке Spring 5/JPA enterprise-приложения c авторизацией и правами
доступа на основе ролей на стеке: Maven, Spring MVC, Spring Security, REST
(Jackson), Java 8 Stream API. Реализация сохранения в базы Postgres и HSQLDB на основе Spring JBDC,
JPA(Hibernate) и Spring-Data-JPA. Реализация и тестирование REST и AJAX контроллеров.
Реализация клиента на Bootstrap (css/js), datatables, jQuery + plugins.
-
Сертификат об окончании
-
Сертификат
об окончании
-
Сертификат
об окончании
|
Freelance
|
до 2019: |
- Автор, ментор, консультант
- Помощь студентам технических и IT-специальностей в выполнении курсовых,
контрольных, лабораторных работ, в т.ч. написание проектов и программ на
Pascal и HTML/Javascript. Консультирование и подготовка к защите,
написание пояснительных записок.
|