Java Developer

Контакты


Контакты доступны после входа на сайт

Описание

Стремлюсь начать карьеру Java-разработчика в команде, где смогу применять свои знания на практике, решать реальные задачи и профессионально развиваться.

Увлечен разработкой, архитектурой веб-приложений и построением масштабируемых решений. Постоянно прокачиваю навыки через обучение на курсах Хекслета, в университете и в ходе самостоятельной разработки проектов.

Мой стек и опыт включают:
• Java (17+), ООП, принципы SOLID
• CLI-приложения с использованием Picocli
• Работа с форматами JSON и YAML через Jackson
• Тестирование с использованием JUnit 5, MockWebServer (OkHttp) для эмуляции внешних API
• Разработка REST API, включая реализацию CRUD-операций, фильтрации, DTO и мапперов
• Реализация аутентификации и авторизации с использованием JWT и Spring Security
• Опыт проектирования реляционных баз данных (PostgreSQL, MySQL), взаимодействие через JDBC и Hibernate (ORM), понимание нормализации и связей (OneToMany, ManyToMany)
• Уверенное владение Gradle (Kotlin DSL) и Git
• Создание веб-приложений на Javalin и Spring Boot с архитектурой MVC
• Работа с шаблонизатором JTE, Bootstrap, а также реализация клиентской части вручную на HTML, CSS и JavaScript
• Понимание HTTP, клиент-серверной архитектуры, организация маршрутизации и обработка HTTP-запросов
• Развертывание приложений на PaaS (Render), настройка CI/CD через GitHub Actions

Разрабатывал проекты, включающие регистрацию, аутентификацию, работу с пользовательскими профилями, управление задачами и мероприятиями, фильтрацию по категориям и статусам, реализацию прав доступа на уровне ресурсов. Освоил проектирование API и структурирование кода с фокусом на читаемость и расширяемость.

Готов к новым профессиональным вызовам, открыт для командной работы и постоянно стремлюсь к улучшению своих навыков в области backend-разработки и архитектуры веб-приложений.

Навыки

Технические навыки:
Языки программирования :
• Java
• SQL (PostgreSQL, MySQL)
• JavaScript (основы: взаимодействие с DOM, отправка HTTP-запросов)

Фреймворки и библиотеки:
• Spring Boot (включая Spring Web, Spring Security)
• Hibernate (JPA, ORM)
• Javalin (легковесный веб-фреймворк)
• JTE (шаблонизатор для Java)
• Bootstrap (CSS-фреймворк)
• Jackson (парсинг JSON и YAML)
• Picocli (разработка CLI-приложений)

Архитектурные подходы:
• MVC (Model-View-Controller)
• REST API (GET, POST, PUT, DELETE)
• DTO и маппинг
• JWT (аутентификация и авторизация)
• ООП, SOLID
• Fluent API, DSL

Тестирование:
• JUnit 5
• Интеграционные тесты (HTTP, база данных)
• MockWebServer (OkHttp) — эмуляция внешних API

Инструменты разработки:
• IntelliJ IDEA (основная IDE)
• VS Code (для верстки и JS)
• Git, GitHub (система контроля версий)
• GitHub Actions (CI/CD-пайплайны)

Базы данных и взаимодействие:
• JDBC (ручное взаимодействие с БД)
• ORM (Hibernate: работа с сущностями, связями OneToMany, ManyToMany)
• SQL-запросы, проектирование структуры БД, нормализация

Веб-технологии:
• HTML, CSS
• JavaScript (клиентская часть)
• HTTP (методы, заголовки, коды ответа)
• JWT-токены, куки, безопасность

DevOps и развертывание:
• PaaS (Render — деплой приложений)
• Linux (Ubuntu, Bash/Zsh)

Контроль версий :
• Git
• GitHub

Инструменты командной строки :
• CLI: Picocli
• Bash/Zsh (работа с терминалом в Linux)

Логирование:
• SLF4J, Logback (конфигурация и вывод логов)

Мягкие навыки:
• Быстрая адаптация к новым технологиям
• Умение договариваться и работать в команде
• Грамотная коммуникация
• Высокий уровень самоорганизации
• Ответственность и дисциплинированность
• Стремление к постоянному обучению и росту

Описание проектов

Первый проект: Игры разума
Описание: консольное приложение, состоящее из пяти логических и арифметических игр, которые помогают улучшить знания в математике и развить логическое мышление.

Результат: углубил навыки работы с Java Core, научился строить структурированный и поддерживаемый код. Применил принципы чистого кода и улучшил навыки работы с инструментами разработки.

Технологический стек:
• Java
• Gradle
• Git, GitHub
• Ubuntu
• IntelliJ IDEA

Второй проект. Вычислитель отличий
Описание: вычислитель отличий – программа, определяющая разницу между двумя структурами данных. Подобный механизм используется при выводе тестов или при автоматическом отслеживании изменении в конфигурационных файлах.
Возможности утилиты:
Поддержка разных входных форматов: yaml и json
Генерация отчета в виде plain text, stylish и json

Результат: освоил проектирование модульной архитектуры, эффективно работал со структурами данных и оптимизировал алгоритмы обработки. Улучшил навыки тестирования, работы с CLI и парсинга JSON/YAML.

Технологический стек:
• Java
• Gradle
• Git, GitHub, GitHub Actions
• Ubuntu
• IntelliJ IDEA
• Jackson
• Picocli
• JUnit

Третий проект.Валидатор данных
Описание: валидатор данных – библиотека, с помощью которой можно проверять корректность любых данных. Подобных библиотек множество в каждом языке, так как практически все программы работают с внешними данными, которые нужно проверять на корректность. В первую очередь речь идет про данные форм заполняемых пользователями. За основу для проекта взята библиотека yup.

Результат: разработал библиотеку для валидации данных с гибкой архитектурой, поддерживающей fluent-интерфейс и принципы SOLID. Улучшил навыки проектирования классов, работы с DSL, тестирования (TDD) и построения расширяемых решений.

Технологический стек:
• Java
• Gradle
• Git, GitHub, GitHub Actions
• Ubuntu
• IntelliJ IDEA
• JUnit
• OOP, SOLID, Fluent API

Четвертый проект.Анализатор страниц
Описание: Page Analyzer – сайт, который анализирует указанные страницы на SEO пригодность.

Результат: я освоил создание веб-сайтов на Javalin с использованием MVC-архитектуры, научился работать с роутингом, обработкой HTTP-запросов и шаблонизатором. Приобрел навыки проектирования баз данных, взаимодействия через JDBC и применения нормальных форм. Опыт включает верстку с Bootstrap, написание интеграционных тестов для проверки запросов и ответов, разворачивание локальной инфраструктуры (веб-сервер, БД) и деплой сайта на Render (PaaS). Теперь я понимаю, как устроена клиент-серверная архитектура, и могу объяснить процесс обработки HTTP-запросов от пользователя до получения ответа.

Технологический стек:
• Java
• Gradle
• Git, GitHub, GitHub Actions
• Ubuntu
• IntelliJ IDEA
• JUnit
• Javalin, JTE
• JDBC, SQL
• PaaS
• HTTP
• Логирование
• Bootstrap

Пятый проект. Менеджер задач
Описание: Task Manager – система управления задачами, аналогичная Redmine. Сервис позволяет создавать задачи, назначать исполнителей, устанавливать статусы и управлять ими. Для взаимодействия с системой пользователю необходимо пройти регистрацию и аутентификацию.

Результат: в этом проекте я освоил разработку полноценных веб-приложений с использованием Spring Framework и принципов MVC. Получил опыт проектирования реляционных баз данных с учетом связей между сущностями (OneToMany, ManyToMany), реализации бизнес-логики через ORM (Hibernate), а также настройки авторизации и аутентификации.
Я научился использовать ресурсный роутинг для унификации CRUD-операций, документировать API через Swagger и отслеживать ошибки в продакшене с помощью Sentry. Также приобрел практику написания интеграционных тестов, деплоя на PaaS-платформу и эксплуатации готового приложения.
Этот проект помог мне лучше понять клиент-серверную архитектуру, повысить уровень абстракции при работе с данными и научиться применять современные подходы к проектированию REST API.

Технологический стек:
• Java
• Gradle
• Spring Boot
• Spring Security
• Hibernate (ORM)
• PostgreSQL
• JDBC
• Git, GitHub, GitHub Actions
• Swagger
• Sentry
• PaaS
• JUnit
• IntelliJ IDEA
• Ubuntu
• Логирование
• HTML, CSS (Bootstrap)
• HTTP

Шестой проект. Прототип web-приложения "Поиск мероприятий для студентов КФУ"
Описание: «Поиск мероприятий для студентов КФУ» — web-приложение, предназначенное для централизованного поиска, просмотра и создания студенческих мероприятий в Казанском (Приволжском) федеральном университете. Сервис помогает студентам находить события по интересам: от научных конференций до волонтерских акций, а также создавать собственные мероприятия и управлять ими. Проект реализован как полноценная клиент-серверная система, в которой особое внимание уделено безопасности, разграничению прав доступа и удобству взаимодействия с системой.

Результаты: в рамках проекта я разработал как серверную, так и клиентскую часть приложения. На стороне сервера использовался фреймворк Spring Boot с реализацией REST API, системой аутентификации на основе JWT и распределением прав пользователей. Я спроектировал и реализовал взаимодействие между сущностями с использованием ORM (Hibernate) и DTO, настроил валидацию входящих данных и защиту API-эндпоинтов.
На клиентской стороне самостоятельно создал интерфейс с помощью HTML, CSS и JavaScript, обеспечив удобную навигацию, формы для ввода данных и отображение информации. Также реализовал фильтрацию мероприятий, регистрацию, авторизацию и защиту действий через токен.
В процессе я получил ценный опыт проектирования web-систем, построения архитектуры REST API, реализации защиты пользовательских данных и разработки полнофункциональных клиентских интерфейсов. Проект стал итогом изучения современных технологий разработки и может быть основой для внедрения в инфраструктуру КФУ.

Технологический стек:
• Java
• Gradle
• Spring Boot
• Spring Security
• Hibernate (ORM)
• PostgreSQL
• JDBC
• JUnit
• Git, GitHub, GitHub Actions
• PaaS
• IntelliJ IDEA
• Ubuntu
• HTML, CSS, JavaScript (ручная реализация клиентской части)
• HTTP
• Логирование

Опыт


Вожатый, Городской центр "Ял"
Крупнейший в Казани организатор детского отдыха с опытом работы более 15 лет.
Июль 2023 - Август 2024

Вожатый и организатор мероприятий в детских лагерях. Лучший вожатый летней смены 2023 года.

Образование


Казанский Федеральный Университет, Институт вычислительной математики и информационных технологий, Прикладная информатика
Сентябрь 2022 - по настоящее время

О себе
Начальные знания английского языка
Проживаю в городе Казань

Живу в Казани. Занимаюсь творчеством в университете.
Изучаю новую информацию, технологии по Java и отрабатываю полученные знания на практике Codewars. Прошел курсы на Хэкслете "Профессия: Java - разработчик".

Комментарии


Добавить комментарий
Для этого действия нужновойти

Рекомендации

Войдите, чтобы предложить вакансию кандидату или оставить комментарий
Последние ответы
Это резюме выглядит впечатляюще и информативно. Кандидат умеет описывать свой опыт и пр...
Кандидат имеет некоторый опыт в области тестирования и обладает базовыми навыками работ...
Извините, но ваше резюме содержит только ссылку на профиль GitHub и адрес электронной п...
Это резюме содержит множество детальной информации о вашем образовании, опыте работы и ...
Это резюме содержит много информации о вашем опыте работы и образовании, но оно может б...
Это резюме имеет некоторые сильные стороны, такие как: Хорошо сформулированный профес...
Это резюме не соответствует стандартам и не предоставляет достаточно информации о канди...
Это резюме Java-разработчика выглядит очень профессиональным и информативным. Очень хор...
Это резюме Junior Frontend-разработчика содержит достаточно информации о вашем образова...
Данное резюме содержит информацию о вашем обучении и проекте, который вы выполнили в ра...