Junior Java-разработчик
Контакты
Студент на последнем курсе в Хекслет колледже, здесь прошёл курс по профессии Java-разработчик. По прохождению курса реализовал 5 проектов, а также 2 проекта по учебной практике в которых был руководителем команды. Использовал Spring (Boot, Security, Test, Data JPA), привязывал базу данных (PostgreSQL, H2), применял Mapstruct для преобразования сущностей в DTO и обратно. Писал автоматические тесты на Junit, использовал Testcontainers, проверял код линтером. Разворачивал сервисы на Render используя Docker. Использовал HTML и CSS на базовом уровне, создавал сайт с помощью шаблонизатора JTE, применял стили Bootstrap. Базово настраивал CI – сборка и тестирование проекта. Имел небольшой опыт программирования на JavaScript, делал консольное приложение под Linux на NodeJS.
- Java
- Spring (Boot, Security, Web, Data JPA, Test)
- JUnit
- Mapstruct
- SQL (PostgresSQL, H2)
- Docker/Docker Compose
- HTML, CSS, Bootstrap - на базовом уровне
- JavaScript/NodeJS - на базовом уровне
- Git, GitHub Actions
- Gradle
Task Manager (GitHub)
Веб-приложение, представляющее собой систему управления задачами. Позволяет ставить задачи, назначать исполнителей и менять их статусы. Приложение основано на Spring Boot. Для тестирования используется Junit, Spring Test и библиотека Instancio для генерации моделей данных. Код организован по способу MVC. Преобразование модели в DTO и обратно реализована через Mapstruct, валидация получаемых данных происходит с помощью Jakarta Bean Validation. Настроена аутентификация в Spring Security и авторизация по JWT. Реализован поиск с фильтром через JPA Specifications. Работа с базой данных происходит с помощью Spring Data JPA. Подключен сервис мониторинга ошибок Sentry. Развёрнуто на Render через Docker.
Page Analyzer (GitHub)
Веб-сайт на базе Javalin 6, который анализирует страницы на SEO пригодность. На указанную страницу сервер делает запрос через библиотеку Unirest, получает ответ и выводит данные о проверке. Проанализированные страницы хранятся в базе данных, работает через JDBC. Страницы сделаны через шаблонизатор JTE, применены стили Bootstrap. Развёрнуто на Render через Docker.
Online Store (GitHub)
Второй проект по учебной практике, в разработке. Это фиктивный онлайн магазин электроники, в котором можно посмотреть все товары, данные о товаре, добавить в корзину. Реализована регистрация. Данные товаров генерируются на сервере. Используются те же технологии что и в Task Manager. Развёрнуто на Render через Docker.
TXT-combiner
Консольная утилита для объединения текстовых файлов с набором различных опций. Программа принимает в качестве аргументов пути до объединяемых файлов (абсолютный или относительный) и путь до файла, в который записывается результат. Имеются опции для выборки файлов, установки разделителя. Для Linux, написан на NodeJS. Проект по учебной практике.