Java-разработчик
Контакты
Начинающий Java разработчик, нахожусь в поисках стажировки. Рассматриваю любой формат работы.
В данный момент прохожу обучение по направлению Java разработчик на Hexlet, осваиваю современные IT технологии и занимаюсь разработкой учебных проектов.
Хочу найти работу в команде таких же увлеченных людей, работать над реальными проектами.
Выполненные учебные проекты:
Игры разума
Полученные навыки в ходе выполнения проекта
* Настройка окружения (IDEA, Gradle, Terminal, Makefile,)
* Работа с системой контроля версий git, и хранилищем github
* Настройка линтера Checkstyle, значков CodeClimate, Code coverage
* Построение модульной архитектуры приложения
Вычислитель отличий
Ссылка на профиль в ГитХаб
Программа, определяющая разницу между двумя структурами данных. Это популярная задача, для решения которой существует множество онлайн-сервисов. Подобный механизм используется при выводе тестов или при автоматическом отслеживании изменении в конфигурационных файлах.
Возможности утилиты:
* Поддержка разных входных форматов: yaml и json
* Генерация отчета в виде plain text, stylish и json
Приобретённые навыки:
* Написание автоматических тестов
* Умение вести разработку через тестирование
* Подключение и работа с JaCoCo
* Работа с утилитой make
* Настройка GitHub Actions
* Опыт работы с файлами
* Опыт работы с библиотеками jackson-databind и jackson-yaml
* Опыт работы с библиотекой piccocli
Валидатор данных
Ссылка на профиль в ГитХаб
Данный проект - библиотека, предназначенная для валидации данных по заданным критериям. Всего реализовано три типа данных (Map, String, Integer).
Список схем для валидации:
*1) StringScheme
*2) NumberScheme
*3) MapScheme
Описание функций.
StringSchema содержит такой набор методов:
- required() — делает данные обязательными для заполнения. Иными словами добавляет в схему ограничение, которое не позволяет использовать null или пустую строку в качестве значения
- minLength() — добавляет в схему ограничение минимальной длины для строки. Строка должна быть равна или длиннее указанного числа
- contains() — добавляет в схему ограничение по содержимому строки. Строка должна содержать определённую подстроку.
NumberSchema содержит такой набор методов:
- required() — добавляет в схему ограничение, которое не позволяет использовать null в качестве значения
- positive() — добавляет ограничение на знак числа. Число должно быть положительным
- range() — добавляет допустимый диапазон, в который должно попадать значение числа включая границы.
MapSchema содержит следующие методы:
- required() — добавляет в схему ограничение, которое не позволяет использовать null в качестве значения. Требуется тип данных Map
- sizeof() — добавляет ограничение на размер словаря. Количество пар ключ-значений в объекте Map должно быть равно заданному.
Анализатор страниц
Ссылка на профиль в ГитХаб
Анализатор страниц - веб-сайт на базе Javelin framework, анализирующий SEO-пригодность страниц. Реализует принципы современной разработки веб-сайтов с использованием архитектуры MVC: обработка маршрутизации, обработчиков запросов и шаблонов, а также взаимодействие с базой данных через ORM.
Использовавшийся стек инструментов:
* Java 20;
* Gradle 8.3;
* Javalin
* H2, PostgreSQL;
* Lombok;
* JUnit
Для запуска приложения необходимо установить следующие зависимости:
* JDK 20
* Gradle 8.3
* Node.js 16.13.1
* Makefile
Менеджер задач
Ссылка на профиль в ГитХаб
Менеджер задач – система управления задачами. Она позволяет ставить задачи, назначать исполнителей и менять их статусы. Для работы с системой требуется регистрация и аутентификация.
Использовавшийся стек инструментов:
* Java 20;
* Gradle 8.3;
* Spring Boot, Spring Web, Spring Data JPA, Spring Security;
* Liquibase;
* QueryDSL;
* H2, PostgreSQL;
* Lombok;
* JUnit
Для запуска приложения необходимо установить следующие зависимости:
* JDK 20
* Gradle 8.3
* Makefile
Hard-skills:
- Java
- JSON
- Инструменты вёрстки (HTML, CSS)
- Gradle
- Автоматическое тестирование (JUnit)
- Основы Git (GitBash), GitHub Actions;
- Основы работы с Непрерывной интеграцией (GitHub Actions);
- PostgreSQL
Soft-skills:
- За здоровый оптимизм;
- Коммуникабельность;
- Умение слушать других;
- Желание учиться.
Опыт
Hyundai Machinery
- Контроль работы сборочной линии и качества выпускаемой продукции.
- Ежедневная проверка работы роботизированной секции линии сборки, логов на наличие ошибок.
- Проверка продукции на соответствие стандартам компании.
Достижения:
Добился увеличения объема выпуска продукции на 7% в смену за счет перенастройки роботизированной линии и оптимизации ПО.
Отделение Hyundai Heavy Industries
- Контроль качества выпускаемой продукции.
- Проверка на соответствие стандартам компании.
- Обеспечение бесперебойной работы конвейера.
Представительство "ExportGroup" Sp.Z.o.o. (Польша) в Москве.
- Комплексное коммерческое обслуживание польских компаний по вводу их на российский рынок.
- Анализ рынка и конкуренции.
- Назначение деловых встреч и сопровождение партнеров с представителями крупных торговых сетей, организация участия компаний-партнеров в Международных выставках в Москве.
- Перевод и создание рекламной продукции.
- Создание концепции сайта, его структуры и наполнение текстами.
Достижения:
В результате комплексной работы по развитию партнеров, товары были представлены в крупных торговых сетях: "Ашан", "OBI", "Леруа Мерлен", "Hoff".
Генеральное представительство компании "Zemat TG" Sp.z.o.o(Польша) в России.
- Презентация товара на международных выставках в Москве.
- Ведение клиентов и обеспечение качественного сервиса.
- Поиск новых рынков сбыта и торговых площадок.
- Создание концепции, структуры сайта и продвижение его в поисковых системах yandex и google.
Достижения:
Обеспечил выход компании на рынок СНГ за счет поиска клиентов, расширения каналов сбыта и предоставления качественного сервиса.
Образование
Свободно владею английским языком
Проживаю в городе Уфа