Junior Java-разработчик
Контакты
Ищу работу на позицию Junior Java-разработчика с полной занятостью или стажировку по своей специальности.
Рассматриваю вакансии с любым типом занятости (офис/гибрид/удаленно). Проживаю в г. Новокуйбышевск, Самарская обл., но готова к работе в г. Самара.
Раньше я работала в сфере медицины. Мотивацией для перехода в программирование послужило достижение потолка в карьерном развитии. В профессии Java-разработчика вижу больше возможностей для развития своего потенциала и новых свершений. В будущей работе интересует проектирование и разработка бизнес и интеграционных модулей; продуктовая разработка, реализация бизнес-требований заказчиков. Хочу продолжить развивать свои навыки в программировании, повышать уровни и приносить пользу компании.
На данный момент завершила обучение по программе "Java-разработчик" в школе программирования Hexlet.
Мною были реализованы следующие проекты:
Игры разума
Консольное приложение с пятью играми на выбор. Каждая игра задает вопросы, на которые нужно дать правильный ответ.
Полученные навыки:
● настройка рабочего окружения Java;
● работа со встроенной библиотекой java.util.Scanner (взаимодействие с пользователем через консоль);
● работа с Gradle (создание Java-проектов с помощью Gradle, управление зависимостями в проектах JVM);
● работа с Git и Github (управление историей исходного кода и работа с удаленными репозиториями на GitHub);
● работа с утилитой make, Makefile (стандартизирование типовых команд, разделение их на цели);
● работа с Code Climate (настройка автоматического отслеживания качества кода, подключение Maintainability);
● работа с линтером Checkstyle (использование стандарта кодирования компании Sun);
● использование принципов DRY, YAGNI, KISS, SOLID (создание простого, читаемого кода).
Технологический стек: Java, Gradle, GNU Make, Checkstyle, Code Climate.
Вычислитель отличий
Консольная утилита, вычисляющая различия между двумя файлами в форматах json/yaml и генерирующая отчет в виде plain text, stylish и json.
Полученные навыки:
● создание интрефейса коммандной строки (библиотека picocli);
● работа с коллекциями (LinkedHashMap, TreeSet) и структурами данных (хеш-таблица);
● работа с разными форматами данных (json, yml);
● организация работы с файлами (библиотека java.nio.file классы Path, Paths, Files);
● организация сериализации и десериализации данных (библиотека Jackson класс ObjectMapper);
● работа с системой непрерывной интеграции (CI) — Github Actions (создание workflow, запускающего сборку проекта, тесты и проверку кода линтером на команду git push);
● автоматическое тестирование с помощью JUnit, анализ покрытия кода тестами (библиотека Jacoco);
● работа с CodeClimate (настройка автоматического отслеживания качества кода, подключение Test Coverage);
● использование техники TDD (написание тестов до кода).
Технологический стек: Java, Gradle, GNU Make, Checkstyle, JUnit, Jacoco, GitHub Actions, Code Climate.
Валидатор данных
Библиотека для проверки корректности данных. Реализована проверка объектов типа String/Number/Map на соответствие заданным условиям.
Полученные навыки:
● проектирование архитектуры в объектно-ориентированном стиле;
● создание интерфейса библиотеки на основе паттерна fluent-интерфейс;
● применение принципов SOLID;
● работа с функциональным интерфейсом Predicate;
● использование техники TDD (написание тестов до кода).
Технологический стек: Java, Gradle, GNU Make, Checkstyle, JUnit, Jacoco, GitHub Actions, Code Climate.
Анализатор страниц
Анализатор страниц – сайт, который анализирует указанные страницы на SEO пригодность.
Полученные навыки:
● создание веб-сайта на базе фреймворка Javalin;
● освоение MVC-архитектуры: работа с роутингом, обработчиками запросов и шаблонизатором, взаимодействие с базой данных через ORM;
● использование архитектурного стиля REST API;
● взаимодействие с базой данных с помощью JDBC (использование библиотеки HikariCP для соединения с базой данных);
● подключение логгирования SLF4J;
● работа с шаблонизатором Jte (фронтенд Bootstrap);
● парсинг URL сайта;
● использование Java HTML парсера (библиотека Jsoup);
● интеграционное тестирование с помощью Unirest и MockWebServer;
● деплой на PaaS Render с помощью Dockerfile. Локальная БД - H2, продакшн - PostgreSQL.
Технологический стек: Java, Gradle, Javalin, JDBC, HikariCP, Docker, PostgreSQL/H2, PaaS Render, JUnit/AssertJ, Unirest, MockWebServer, Jacoco, Jsoup, GNU Make, Checkstyle, GitHub Actions, Code Climate, Jte, Bootstrap.
Менеджер задач
Менеджер задач – система управления задачами. Она позволяет ставить задачи, назначать исполнителей и менять их статусы. Для работы с системой требуется регистрация и аутентификация.
Полученные навыки:
● работа с Spring Boot (создание приложения на Spring, настройка конфигураций);
● работа с Spring Data JPA (создание сущностей с помощью ORM и описание связей между ними (o2m, m2m));
● реализация API со сложной фильтрацией по параметрам на базе JPA Specifications;
● работа с Spring Security (аутентификация и авторизация пользователя с JWT-токеном);
● работа со статическими ресурсами (подключение фронтенда на React);
● интеграционное тестирование (JUnit/AssertJ, Instancio, Faker);
● использование коллектора ошибок Sentry;
● написание интерактивной REST API документации приложения с помощью Swagger;
● деплой на PaaS Render с помощью Dockerfile. Локальная БД - H2, продакшн - PostgreSQL.
Технологический стек: Java, Gradle, Spring Boot, Spring Security, Spring Data JPA, Docker, PostgreSQL/H2, PaaS Render, Sentry, Swagger, JUnit/AssertJ, Jacoco, GNU Make, Checkstyle, GitHub Actions, Code Climate, React.
Hard skills:
• Java SE, Java EE, алгоритмы и структуры данных
• Gradle , Checkstyle, Code Climate
• OS Linux, Git, GitHub, CI/CD (GitHub Actions)
• ООП, Collections Framework
• Junit/AssertJ, Unirest, TDD, Sentry
• HTTP/HTTPS, REST API, OPEN API, Swagger, Postman
• SQL, PostgreSQL, H2
• Servlets, JSP, CRUD, JDBC, Hibernate, Javalin
• Docker, PaaS Render
• Spring Boot, Spring Security, Spring Data JPA
Soft skills:
• умение работать в команде;
• коммуникабельность;
• ответственность;
• инициативность;
• умение работать в стрессовых условиях;
• способность к целенаправленному освоению знаний.
Опыт
Должностные обязанности:
• ведение амбулаторного приема и обход населения прикрепленного участка;
• осмотр пациента, сбор жалоб и анамнеза, назначение лечения;
• ведение электронной документации.
Образование
Читаю профессиональную литературу на английском языке
Проживаю в городе Новокуйбышевск