Ведущий Java Fullstack разработчик с опытом коммерческой разработки больше 5 лет. На протяжении карьеры активно разрабатывал как Backend, так и Frontend (JS, VAADIN) компоненты систем, что позволило сформировать продуктовое мышление, видеть в разрабатываемых системах продукт для конечного пользователя.
Успешно внедрил более 10-ти ключевых технологических решений в рамках 10+ проектов, которые ускорили ключевые бизнес-процессы заказчиков, достигнув значительного уменьшения времени их выполнения. Обеспечил эффективное управление командой Java-разработчиков, налаживая процессы менторства, мотивации и оптимизации работы. Инициативы по развитию команды привели к повышению квалификации сотрудников и ускорению разработки проектов.
Проект: разработка, внедрение и обслуживание систем электронного документооборота для В2В и B2G.
Стек: Java 8/11, Spring, JPA (OpenJpa, EclipseLink), Databases (PostgreSQL, MongoDB), jBPM, JGroups, Hazelcast, CryptoPro, Vaadin, CUBA/Jmix.
Достижения:
• Для крупнейшего из проектов, позволившего технологически объединить более 100 организаций в единую сеть, ускорение процессов принятия решений и ведения документооборота достигло десятки раз: от 2 дней (3 недель в отдельных случаях) до 2 часов.
• Разработал и внедрил множество оптимизаций, которые увеличили производительность системы в десятки раз и снизили нагрузку на ресурсы в 4 раза.
• Реализовал масштабирование системы для ее адаптации под увеличившиеся требования, что позволило поддерживать резкий рост пользовательской активности, включая 10-кратное увеличение зарегистрированных пользователей и 12-кратное повышение одновременных подключений.
• Провёл декомпозицию и оптимизацию программной логики, что значительно улучшило её модульность и облегчило её переиспользование как в текущих, так и в новых проектах.
• Провел рефакторинг и внедрил такие инженерные практики, как код ревью, паттерны проектирования в процесс разработки, что ускорило процесс исправления ошибок и поддержки кода с 2 дней до 2 часов.
• Лидировал команду разработки из 3 человек, менторил новичков, вырастил 2 middle и 1 senior-разработчиков с junior-позиций.
Проект: разработка высоконагруженного web-приложения для автоматизации документооборота, делопроизводства и управления поручениями.
Стек: Java+Spring, Open JPA, MyBatis, Vaadin, Cuba, jBPM.
Достижения:
• Спроектировал логику и вел 5 сложных бизнес-процессов внутри ключевого проекта, что позволило заказчику унифицировать и ускорить процессы более 20 подразделений (80% документов заказчика проходят через систему, ранее 5%).
• Провел нагрузочное тестирование, что помогло выявить и устранить узкие места, как итог — выпустить систему в эксплуатацию.
• Вынес из монолитного сервиса в микросервисы компоненты, обрабатывающие критические высоконагруженные операции, что позволило команде облегчить внедрение новых задач и обеспечить 100% отказоустойчивость.
• Внедрил и оптимизировал CI/CD процессы, используя Git, Bash, JMX, автоматизировав больше 90% операций деплоя и сократив ТТМ на 20%, а также снизив время простоя QA команды на 40%.
• Настроил систему мониторинга и логирования, что улучшило процесс идентификации и устранения проблем, повысив стабильность и надежность системы, используя Java и сопутствующие инструменты для сбора и анализа данных, такие как Zabbix, Java VisualVM, Pg_stat, Linux command-line utilities.
• Тесно взаимодействовал с бизнес-аналитиками и QA командой, наладил процесс разработки.
Ключевые проекты:
• Реализация серверной и клиентской частей многопользовательского web-приложения по автоматическому сбору информации с заданными критериями по расписанию с применением принципов REST и поддержкой загрузки файлов.
• Реализация механизма серверной валидации данных запроса, написание обработчиков исключений с формированием ответа на клиент.
• Покрытие модульными тестами функционала с помощью JUnit, Mockito, PowerMock
• Разработка полнофункционального многомодульного 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.