Junior Java Developer
Контакты
Ищу работу на позицию Junior Java Developer.
Предпочтительный формат работы — офис или гибрид.
Обладаю учебным опытом разработки и готов применять свои навыки и знания на практике.
На данный момент имею пять законченных проектов:
Игры разума
Набор из пяти консольных математических игр. Движок реализован отдельно, что позволяет дополнять проект новыми играми.
Полученные навыки:
* IntelliJ IDEA
* Работа с Git и Github;
* Подключение CodeClimate;
* Применение принципов SOLID;
* Использование встроенных и сторонних библиотек;
* Использование линтера Checkstyle;
Вычислитель отличий
Консольная утилита, вычисляющая различия между двумя файлами в форматах JSON/YAML.
Результат выводится в форматах: stylish, plain and JSON.
Полученные навыки:
* Создание интерфейса взаимодействия с программой через консоль (утилита Picocli);
* Автоматическое тестирование, JUnit, анализ покрытия кода тестами (плагин Jacoco), подключение test coverage на CodeClimate;
* Непрерывная интеграция (СI) - создание workflow на GitHub Actions;
* Работа с коллекциями и структурами данных;
* Работа с файлам (JSON, YAML);
* Организация чтения файлов, парсинг входящих данных (библиотека Jackson);
Валидатор данных
Библиотека для проверки корректности данных. Реализована проверка объектов типа String/Number/Map на соответствие заданным условиям:
* Валидацию строки (содержимое, минимальная длина, наличие заданных подстрок);
* Валидацию числа (числовой тип, знак числа, присутствие в заданном диапазоне);
* Валидацию объектов типа Map (тип данных карты, соответствие заданному размеру);
* Вложенную валидацию;
Полученные навыки:
* Применение принципов SOLID;
* Работа с функциональным интерфейсом Predicate;
* Проработка логики работы валидаторов;
Анализатор страниц
Это приложение позволяет анализировать веб-страницы для SEO. Приложение проверяет доступность указанной страницы, наличие заголовка и описания. Информация о введенных URL и результатах проверки сохраняется в базе данных.
Проект выполнен в виде веб-сайта на базе фреймворка Javalin.
При разработке использованы базовые принципы построения современных сайтов на MVC-архитектуре: работа с роутингом, обработчиками запросов и шаблонизатором, взаимодействие с базой данных через ORM.
Полученные навыки:
* Фреймворк Javalin (маршрутизация, представление);
* База данных, (ORM Ebean, PostgreSQL, миграции, query builders);
* Фронтенд (Bootstrap, использование шаблонизатора Thymeleaf);
* HTTP (в том числе выполнение запросов);
* Деплой на Render;
* Интеграционное тестирование (библиотеки Unirest, MockWebServer );
Менеджер задач
Позволяет создавать задачи и назначать их пользователем, искать задачи и классифицировать их при помощи меток. Поддерживается аутентификация с помощью JWT токенов и шифрование паролей.
Полученные навыки:
* Java 17, Gradle 7.4
* Spring (Web, Data, Boot, Security)
* Hibernate/JPA, Liquibase
* MockMvc, JUnit
Hard skills:
- Java Сore
- Java Сollections
- Spring Framework
- Hibernate/JPA
- Ebean, Javalin
- SQL: Postgres, H2
- HTML/CSS
- Git, Github
- Gradle, Maven
- ООП
- JUnit 5
- Ubuntu
Soft skills:
- Могу глубоко проникать в суть предмета и увидеть фундаментальные основы.
- Способен разобраться в новом, привычен к постоянному обучению.
- Целеустремлён.
Опыт
Проектирование металлоконструкций разного уровня сложности, например: лестничные ограждения, входные группы, стеклянные козырьки, детские игровые площадки, каминные топки и многое другое.
Достижения: изучил SOLIDWORKS, постоянная работа с новым материалом, с новыми входными данными.
Разработка деталей, узлов упаковочного оборудования в Компас 3Д, выпуск КД.
Достижения: модернизация станка по упаковке чая, выпуск полного комплекта КД для производства.
Образование
Начальные знания английского языка
Проживаю в городе Москва