8 812 320 13 03
  • Новости
  • Расписание
  • Курсы
  • Организациям
  • Контакты
  • Перезвоните мне

    Курс Java Junior Developer – обучение Java онлайн и в СПб | Level Up

    Курс Java Junior Developer

    Курс Java Junior Developer
    Начало курса
    31.01.2022
    Продолжительность
    1,5 месяца (48 ак. часов)
    Расписание
    Пн 19:00 - 22:00 
    Чт 19:00 - 22:00 

    Онлайн
    (4 места)
    23990 записаться
    свернуть

    Описание курса

    Сертификат Курс Java Junior Developer — курс интенсивного обучения программированию на Java, целью которого является получение навыков практической разработки веб-приложений на платформе Java с использованием актуального и востребованного на данный момент стека технологий. 

    В процессе прохождения курса участники получат знания и навыки, необходимые для трудоустройства на позицию Младший разработчик Java / Младший программист Java (Java Junior Developer).


    Практика:

    • Практической частью домашней работы будет последовательная разработка java веб-приложения: прототип сайта поиска работы. 
    • Курс будет построен на активном взаимодействии с обучаемыми в форме разбора домашнего задания: выбора оптимальной доменной модели; реализации, паттернов проектирования, дизайна разрабатываемого приложения
    Для построения приложения мы будем использовать инструменты промышленной java разработки:

    • Java 11
    • Веб-контейнер Tomcat (в составе Spring Boot
    • СУБД PostgreSQL
    • Среда разработки IntelJ IDEA, Lombok
    • Инструмент постороения Maven
    • Система контроля версий Git
    • Интеграционные и модульные тесты JUnit
    • Систему логирования Log4j и SLF4J
    • Инструмент тестирования веб-сервисов SoapUI, Postman
    От скорости прохождения материалов курса группой будет зависеть объем функциональности полученного в конце курса приложения. Побочным результатом курса будет ваше личное резюме java разработчика с одним из пунктов в списке достижений: разработка веб-приложения.


    Свойства приложения:

    • Объектно ориентированная доменная модель с возможностью легкого расширения функциональности.
    • Долговременное хранение в двоичном виде в файле, в xml, в DB (PostgreSQL).
    • Веб-интерфейс

    Требования к участникам курса:

    • Умение программировать на Java (см. наши курсы уровня 1-2 по java)
    • Умение работать с СУБД(любая из популярных), знание SQL
    • Желательно иметь представление о XML, HTML, JavaScript

    Программа курса:

    1. Начинаем проект: maven, git

    • Знакомство
    • Обзор курса
    • Обзор фреймворков, библиотек, инструментов платформы Java
    • Сборка Maven, система контроля версий - git
    • Основные этапы разработки, обсуждение. Проектирование, ядро системы, бизнес-логика, тесты, пайплайн CI/CD, деплой на сервер 
    Домашнее задание:
    • Задачи на HackerRank, Leetcode- решение алгоритмических задач
    • Придумать внутреннюю структуру проекта – внутренние сервисы, DAO, DTO
    • Создать описание (например: общий Google-документ), репозиторий, чат для своего проекта

    2. Принцип SOLID

    • Dependency Inversion, Single Responsibility, Open Closed principle 
    • IoC, конфигурирование через аннотации.
    • Создание абстракций 
    Домашнее задание:
    • Практика на примерах неоптимального дизайна

    3.  Spring Boot, подробное знакомство

    • Особенности Spring Boot
    • Автоматическая конфигурация
    • Spring Boot - контейнер сервлетов
    • Контроллеры и их методы (пути в веб-приложении)
    • Жизненный цикл бинов
    • Обзор аналогов, преимущества и недостатки
    Домашнее задание: 
    • Создать проект Spring Boot, зарегистрировать на Bitbucket/GitHub
    • Спроектировать набор REST сервисов
    • Написать первый REST сервис для проекта

     4.  Сериализация и валидация данных

    • Сериализация и десериализация данных в Java - POJO
    • Форматы обмена данными – JSON, XML
    • Валидация данных – XSD, JSON Schema
    • Библиотеки сериализации - Jackson, Gson, JAXB
    • DTO классы как классы хранения данных
    Домашнее задание: 
    • Создать контракт для REST сервиса с валидацией данных
    • Написать XSD или JSON Schema
    • Написать DTO классы для проекта

    5. Работа с БД, JDBC, ORM

    • ORM – основы, виды - Object Oriented и Database Oriented (Hibernate vs MyBatis)
    • Обзор БД: PostgreSQL, HyperSQL
    • Введение в Hibernate, HQL, Entities lifecycle
    • Введение в MyBatis, понятие мапперов
    • CRUD в Spring Data
    • Connection Pool в Spring Boot
    Домашнее задание: 
    • Спроектировать модель данных проекта
    • Написать слои абстракций DAO для Hibernate и/или MyBatis
    • Написать тесты для DAO классов

    6. Архитектура веб-приложения Spring, шаблоны проектирования

    • Архитектура веб-приложения Spring Boot.
    • DAO, Entities. Spring Persistence.
    • Spring Service, как с ними работать.
    • MVC, MVP, MVVM и их различия
    • Шаблоны проектирования. Основы. 
    • Фабрика, абстрактная фабрика, прототип и синглтон
    • Обзор поведенческих, структурных и порождающих шаблонов проектирования.
    Домашнее задание: 
    • Продолжение работы над проектом (MVP)
    • Отобразить модель взаимодействия классов в lucidchart/draw.io 

    7. Generics, Collections, Time complexity

    • Повторение generics, wildcards
    • Сложность алгоритмов, оценка алгоритмов, большое О
    • Основные интерфейсы коллекций
    • Реализация и оценка сложности ArrayList, LinkedList, HashMap
    • Обзор LinkedHashMap, TreeMap, HashSet, LinkedHashSet, TreeSet
    Домашнее задание: 
    • Продолжить разработку внутренних сервисов
    • Оценить сложность (большое О) основных алгоритмов проекта

    8. Основы непрерывной разработки

    • DevOps – определение и предназначение
    • Системы контроля версий, облачные сервисы - Github, Bitbucket, интеграция CI/CD
    • Системы проверки качества кода, SonarQube
    • Системы непрерывной интеграции. Jenkins, TeamCity, Travis
    Домашнее задание: 
    • Подключить проект к CI/CD
    • Пройти проверку в SonarQube 

    9. Многопоточность, основы и шаблоны

    • Многопоточность: основные проблемы
    • Языковые средства для реализации многопоточности
    • Стандартные практики для реализации потокобезопасности классов
    • Synchronized collections и concurrent collections
    • Встроенные классы JDK для работы с многопоточностью.
    • Обзор шаблонов проектирования для многопоточных приложений
    Домашнее задание:
    • Добавить в проект коллекции с многопоточностью
    • Продолжение работы над проектом 

    10. Spring Security - аутентификация и авторизация. HTTPS, Jasypt

    • Обзор Spring Security 
    • Безопасность REST контроллеров, Basic авторизация
    • Jasypt как средство шифрования паролей
    • HTTPS как базовый протокол работы сервисов
    Домашнее задание:
    • Добавить в проект Basic авторизацию
    • Добавить в проект работу с HTTPS
    • Продолжение работы над проектом 

    11. Тестирование Spring. Работа над проектами

    • Обзор методов тестирования Spring приложений
    • Mock объекты, Mockito
    • Asserts, как применять
    Домашнее задание:
    • Пройти 70% порог тестирования в SonarQube (Sonar way)
    • Продолжение работы над проектом 

    12. Подготовка к собеседованию

    • Подведение итогов
    • Обзор вакансий, советы по прохождению собеседования
    • Куда двигаться дальше?

    Облако тегов: курс java, java, программирование на java, язык программирования java, курсы java программирования, уроки программирования java, обучение программированию java, программирование на java для начинающих, объектно ориентированное программирование java

    свернуть

    Преподаватель

    Дмитрий

    Senior Java Developer / Team Lead в компании DINS

    Закончил ПГУПС по специальности «Комплексная информационная безопасность автоматизированных систем». 

    Начал программировать еще в школе. Попробовал различные языки программирования. В университете познакомился с Java и влюбился в этот язык. "Практически все свое свободное время, посвящаю развитию в сфере разработки на Java" - говорит Дмитрий. 

    В данное время работает старшим разработчиком в отделе корпоративных бизнес-систем одной из IT-компаний Санкт-Петербурга. 

    "Не нужно обладать какими-либо талантами, чтобы начать программировать. Программирование не так сложно, как кажется на первый взгляд. Шаг за шагом, погружаясь в мир программирования, начинаешь все больше и больше увлекаться, а потом не представляешь свою жизнь без этого. Главное не бояться совершать ошибки, всегда идти вперед и верить в то, что у вас все получится!" - говорит Дмитрий.

    Андрей

    Системный архитектор в одной из GameDev-студий (NDA).

    Более 15 лет в разработке программных решений и десятки реализованных крупных коммерческих проектов в портфолио. За это время накопил не мало опыта в качестве технического лидера, системного архитектора и архитектора ПО. 

    Не смотря на разносторонний опыт и владение большинством современных языков и платформ разработки, Java остается любимым языком за его универсальность и обширную экосистему.

    В настоящий момент Андрей активно развивает серверное направление в одной из российских GameDev-студий.
    свернуть

    Фотографии

    свернуть

    Отзывы

    Всего отзывов: 34
    Курс Java Junior Developer
    Юрий
    Санкт-Петербург

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

    Курс Java Junior Developer
    Артур
    Санкт-Петербург

    Хороший курс, помогает ознакомится с основными фреймворками такими как Hibernate и Spring. Очень приятный преподаватель, доносил все ясно и понятно. Если идете на этот курс, то предполагается, что вы уже неплохо знаете сам синтаксис java.

    Курс Java Junior Developer
    Дмитрий
    Санкт-Петербург

    Курс отличный. Знания получены реальные и применимые на практике.

    Курс Java Junior Developer
    Артём
    Санкт-Петербург

    В целом курсом доволен. Научился работать с postgresql, spring boot. Преподаватель доходчиво объясняет материал, помогая с написанием проекта.

    Курс Java Junior Developer
    Александра
    Санкт-Петербург

    Посетила три курса по джаве и пошла бы еще, если бы были. Очень рада, что есть возможность научиться сложным вещам в чайник-friendly формате с примерами из котиков. Тем, кто думает, записываться ли, рекомендую запастись временем (многое нужно изучать самостоятельно) и не сомневаться.

    Курс Java Junior Developer
    Олег
    Санкт-Петербург

    Интересный и увлекательный курс, глубоко проникающий в Java.

    Курс Java Junior Developer
    Соня
    Санкт-Петербург

    Прекрасный курс с прекрасным преподавателем. Доступно, информативно и со всех сторон хорошо.

    Курс Java Junior Developer
    Павелс Сайкинс
    Санкт-Петербург

    Хороший курс с хорошим материалом под руководством хорошего тренера.

    Курс Java Junior Developer
    А. А. Бусов
    Санкт-Петербург

    Курс интересный, но сложный. Даже после второго курса по основам Java было трудно. Для успешного прохождения требуется хорошая базовая подготовка и опыт разработки готовых приложений. Хотелось бы больше практических примеров на занятиях. Сергей - отличный специалист, разбирающийся в своём предмете. Обстановка комфортная, атмосфера дружелюбная.

    Курс Java Junior Developer
    Антон Гребенников
    Санкт-Петербург

    Курс очень понравился. Хотелось бы побольше занятий, а также увеличить интервал между занятиями, чтобы успевать усваивать материал :)

    Курс Java Junior Developer
    Антон Неклюдов
    Санкт-Петербург

    Проходил первые 2 уровня тут, в Level UP-е. Своей целью ставил после прохождения третьего уровня (Junior) трудоустройство в IT-компанию. Мне очень повезло, и я попал после первого уровня в компанию, которая занимается разработкой софта. Много времени потребовалось, чтобы адаптироваться, привыкнуть к новой информации и принять новую сферу. Второй уровень прошёл уже с недостатком времени, т.к. период испытательного времени отнял силы. Данный курс показал мне некоторые направления для углублённого домашнего и самостоятельного обучения. Много новых технологий, необходимо очень много времени и концентрации. Благодарю компанию Level UP за то, что дали мне качественную подготовку для достижения моих целей.

    Курс Java Junior Developer
    Елена Дубкова
    Санкт-Петербург

    Курс отличный. Курс насыщенный и организует порядок в голове. Позволяет человеку, не работавшему с Java, написать что-то маленькое и симпатичное. Симпатичное, т.к. Сергей неустанно указывает на ошибки, за что огромное спасибо. Разбор ошибок хорошо расширяет кругозор.

    Курс Java Junior Developer
    Александр
    Санкт-Петербург

    Мой третий курс в Level UP. Преподаватель компетентен, отвечает на все вопросы и даже больше. Группа была небольшая (5 человек), что повлияло легко осуществлять коммуникацию со всеми. Предоставили ключи для среды разработки (хотя мне и не понадобилось, у меня студенческая лицензия). Думаю, возможно убрать из курса Maven / Git, т.к. про это уже было на Java 2, или оставить на самостоятельное обучение. На занятиях все пользовались своими ноутбуками, на "местных машинах", насколько я знаю, софт до сих пор не установлен. Да, и всю установку и конфигурирование перенести в Homework. Простите за некоторую косноязычность и "скачущие" буквы - привык печатать :))

    Курс Java Junior Developer
    Сергей Комаров
    Санкт-Петербург

    Курс хорош. Особенно он будет интересен людям, знакомым с теорией по учебникам и различным ресурсам, жаждущим узнать практическое применение своих навыков. Могу посоветовать курс тем, кто ещё не пробовал силы в написании приложения, соединяющего в себе несколько технологий. Преподаватель в течение курса показал свою компетентность, был дружелюбен и не оставлял без внимания заданные вопросы.

    Курс Java Junior Developer
    Иван Василевский
    Санкт-Петербург

    Для начала изучения Java курс за свои деньги вполне хороший. При приходе сюда мои знания ограничивались основными понятиями языка, по окончанию я могу создать несложное приложение web с использованием Spring MVC. Появилось понимание о тестировании, как оно делается и т.п. Основные принципы структурирования приложения, а также путь от чистого листа до результата в браузере. Как преподаватель Сергей вполне не плох. Всё, чего он касался и объяснял, уложилось и появилось понимание. Из недостатков, возможно, в некоторых местах слишком подробное разжевывание.

    Курс Java Junior Developer
    Вячеслав Заложных
    Санкт-Петербург

    Это мой третий курс по языку Java в Level UP. Все курсы построены грамотно, начиная с основ и заканчивая довольно углублёнными деталями.
    Данный курс предназначен для тех, кто уже изучает Java и продвинулись в этом деле достаточно далеко.
    На курсе нюансы работы с фреймворками, а также разъясняется разработка Web-приложения.

    В целом курсы мне очень понравились! Отличные преподаватели - мастера своего дела.

    Курс Java Junior Developer
    Артём Андреев
    Санкт-Петербург

    Спасибо большое команде Level UP за курс и материал. Каждое занятие я получал новые знания, за чем собственно и шёл.
    Помимо лекций в аудитории, помогал видео-материал.
    Преподаватели всегда отвечали на вопросы.
    Спасибо большое!

    Курс Java Junior Developer
    Александр
    Санкт-Петербург

    Курс очень понравился. Материал преподносился доступно, хотя порой в больших объёмах. Хотя для такой проблемы есть запись занятия. Преподаватель компетентен в области Java, да и в принципе, во многих языках программирования. При желании вы получите ответ на практически любой интересующий вопрос.

    Курс Java Junior Developer
    Полина Бевад
    Санкт-Петербург

    Курс дал толчок к самостоятельному изучению озвученных технологий, много было вопросов в начале курса по связности систем, к концу курса появилось общее понимание, структурность.

    Курс Java Junior Developer
    Павел Аглиш
    Санкт-Петербург

    Понравилось владение технологиями, позволяющее писать код и решать задания "с листа". Также понравилось местоположение, класс, оборудование и техническое обеспечение - 5 баллов!

    Курс Java Junior Developer
    Артём Кривошеев
    Санкт-Петербург

    Преподаватель - отличный специалист, помогает, отвечает на все вопросы. Курс достаточно насыщенный, затрагивает основные темы для Java-программиста. По сервису: замечательный персонал, превосходное обслуживание, приятная аудитория с необходимым оборудованием. Из того, что не понравилось: слишком много времени потратили, на мой взгляд, на такие ненужные вещи как инсталляция приложений, отловка багов и т.д. А так - всё отлично :)

    Курс Java Junior Developer
    Михаил Гаврилов
    Санкт-Петербург

    Мне понравился стек преподаваемых технологий, практически все элементы теории тут же демонстрируются в коде, показывается организация разработки в команде. Но слишком мало внимания Spring Framework и был не закончен пример разработки приложения с нуля, со всеми заявленными технологиями.

    Курс Java Junior Developer
    Астапкович Вячеслав

    Спасибо большое за курс, он был действительно полезен и раскрыл больше вещей, чем в остальных курсах такой-же ценовой категории.
    Для примера, я выбирал между Вашим и курсом Урансофта. Итогом их курса - калькулятор на свинге, что не есть хорошо за 10к (примерно неделя неспешного гуглинья).
    С вашим же курсом стало понятно, как должен быть написан код, как устроены классы, что такое веб приложение в простом виде, как оно вообще работает, как работают коллекции и т.д.
    ...  Примерно по такой же программе у меня знакомый на работе учится, только там в 2 раза больше цена и количество часов.

    Курс Java Junior Developer
    Алексей

    Благодарю за предоставленную возможность упорядочить свои базовые знания, расширить кругозор и начать воплощать знания на практике!

    Курс Java Junior Developer
    Людмила Александрова

    Встала на новый виток профессионального развития. Работаю Тестировщиком ПО. Java нужна везде, в том числе и в тестировании.
    Всем рекомендую именно этот курс! Очень благодарна преподавателю за терпение и внимание.

    Курс Java Junior Developer
    Анна Белова

    Основная цель данного курса - практика. И она была успешно выполена. В данном курсе раскрываются все те базовые вещи, которые необходимы при старте карьеры. Я очень рада.

    Курс Java Junior Developer
    Александр Пархоменко
    Санкт-Петербург

    Курс даёт хорошее представление о технологии и этапах разработки. Общие сведения, основные детали используемых технологий. Желательно иметь знания по синтаксису Java и алгоритмов. Считаю, что можно сделать продолжение этого курса - реализацию какого-нибудь конкретного проекта. Это позволит получить реальные навыки работы в команде.

    Курс Java Junior Developer
    Иван Мочалов
    Санкт-Петербург

    Большое спасибо. Курс был очень познавательным и интересным. Считаю, что поставленная мной задача выполнена.

    Курс Java Junior Developer
    Юрий Плевако
    Санкт-Петербург

    Был рад получше разобраться в некоторых аспектах разработки на Java, в частности в работе с Maven и Spring, однако не хватает более глубокой работы с Enterprise Edition.

    Курс Java Junior Developer
    Иван Зелтинь
    Санкт-Петербург

    Курс оставил исключительно положительные впечатления. Я получил большой объем информации, над которой я буду работать в будущем. Буду советовать знакомым курсы Level UP как серьёзную помощь в изучении языков программирования.

    Курс Java Junior Developer
    Дмитрий Черемушкин
    Санкт-Петербург

    В целом очень полезно. Есть к чему обращаться по мере использования языка программирования Java. Особенно полезно: Restful Services, Hibernate.

    Курс Java Junior Developer
    Олег
    Санкт-Петербург

    Отличный курс: достаточный охват технологий для специалистов начинающего уровня, интерактивная подача материала (единственно, чуть больше внимания к вопросам в чате), большой объем примеров, удобное расписание и варианты участия.

    Курс Java Junior Developer
    Дмитрий Пузиков
    Санкт-Петербург

    Несмотря на краткость курса, он помог мне найти работу и теперь я работаю именно Java-разработчиком. Спасибо вам огромное!

    Курс Java Junior Developer
    Анатолий Поздняков
    Санкт-Петербург

    Мне понравилась работа организаторов, отзывчивость преподавателя. Я получил ответы на все озвученные вопросы. Хороший охват курса, разобранные технологии и фреймворки. Из пожеланий: вынести установку и настройку ПО (IDEA, Maven, Git) на внеклассное время; хотелось бы больше обратной связи для самопроверки. Понравилась система с автотестирования, которая использовалась в д/х по потокам.

    Курсы программирования, тестирования, мобильных и веб-технологий от Level UP!
    Учитесь с профессионалами в сфере IT-образования!