Java-разработчик
Skypro от Skyeng
Описание
"Java-разработчик" занимает 1 место в топ-50 востребованных профессий в IT, согласно исследованию Министерства экономического развития РФ. В данный момент рынок испытывает дефицит специалистов, из-за чего начинающие разработчики пользуются большим спросом.
В процессе обучения студенты
- освоят объектно-ориентированное программирование и различные подходы к созданию консольных и визуальных кроссплатформенных программ,
- познакомятся с понятиями и языком предметной области,
- получат навыки работы в команде и подготовятся к профессиональной сертификации Java-программиста.
Отличительной особенностью программы является то, что с первых уроков студенты будут работать в среде разработки IDEA, а также Git и Github, используемых профессиональными разработчиками на регулярной основе. Кейсы и практические задания, выполняемые студентами, симулируют реальные рабочие задачи Java программиста. Обучение носит практико-ориентированный характер: 247 ак. ч. (более 50% программы) предусмотрены для выполнения практических заданий.
Программа ДПО «Разработчик Java» включает в себя следующие модули:
- Введение в профессию и синтаксис языка (66,5 ч.);
- Работа с Java и его окружением. Тестирование кода (100 ч.);
- Работа с кодом (47 ч.);
- Рефакторинг кода (40 ч.);
- Техническое собеседование (20,5 ч.);
- Итоговая работа (19,5 ч.);
- Командная работа (15,5 ч.);
- Работа над реальными задачами (38,5 ч.);
- Собеседование с работодателем (18 ч.);
- Дипломный проект (97,5 ч.).
Модули "Введение в профессию и синтаксис языка", "Работа с Java и его окружением. Тестирование кода", "Работа с кодом" и "Техническое собеседование" являются базовыми (234 ч.).
В результате освоения программы выпускник должен обладать следующими универсальными, общепрофессиональными компетенциями и профессиональными компетенциями в соответствии с выбранными типами профессиональных задач:
Общекультурными компетенциями (ОК)
- способностью работать в коллективе, толерантно воспринимать социальные, этнические, конфессиональные и культурные различия (ОК-6).
- способностью к самоорганизации и самообразованию (ОК-7).
Общепрофессиональными компетенциями (ОПК):
- способностью использовать нормативно-правовые документы, международные и отечественные стандарты в области информационных систем и технологий (ОПК-1);
- способностью анализировать социально-экономические задачи и процессы с применением методов системного анализа и математического моделирования (ОПК-2);
- способностью использовать основные законы естественнонаучных дисциплин и современные информационно-коммуникационные технологии в профессиональной деятельности (ОПК-3);
- способностью решать стандартные задачи профессиональной деятельности на основе информационной и библиографической культуры с применением информационно-коммуникационных технологий и с учетом основных требований информационной безопасности (ОПК-4)
Профессиональными компетенциями (ПК):
- способностью разрабатывать, внедрять и адаптировать прикладное программное обеспечение (ПК-2).
Часов в программе
Цель программы
Актуальность
Java-разработчик пишет код, благодаря которому работают сервисы Яндекс, сервисы Сбербанк и другие компании-банки. Язык Java является популярным и востребованным.
Java-разработчик — одна из самых сложных позиций для рекрутера: на рынке дефицит специалистов. В данный момент на начинающих Java-разработчиков есть большой спрос.
Входная диагностика 5 часов
Итоговая аттестация 98 часов
Компетенции
Профессиональные
Работа в IDE
Знает плагины;
Знает, что такое commit и ветка;
Знает, что происходит при merge;
Знает, что такое конфликт, почему он возникает и как его решить;
Знает, что такое pull-request;
Умеет устанавливать плагины;
Умеет настраивать внешний вид программы;
Умеет писать и запускать код;
Умеет использовать горячие клавиши при написании кода;
Умеет писать и читать комментарии к коду;
Умеет работать с репозиториями;
Умеет вести совместную работу над кодом в команде (GitFlow);
Умеет использовать дополнительные полезные команды (Git reset).
GitFlow
Git reset
Github
Java
Горячие клавиши в Java
Написание кода на языке Java
Знает спецификацию Swagger Specification;
Понимает, как устроена связка Backend и Frontend;
Знает и может объяснить, что такое REST, умеет работать с ним;
Знает и понимает, что такое HTTP/HTTPS;
Имеет базовые знания многопоточности;
Знает, как работает Garbage collector, устройство памяти;
Знает, что такое переменные, условия, циклы, операторы, классы, объекты, лямбды;
Знает, как работает память в Java;
Знает, что такое коллекции, мапы и списки;
Знает стандартные библиотеки Java;
Знает, что такое рефакторинг, умеет проводить рефакторинг кода;
Знает на базовом уровне Java Reflection;
Знает о процессе проектирования приложения (распределение ролей внутри команды);
Умеет пользоваться Lombok;
Умеет работать с JUnit и Mockito;
Умеет работать с фреймворком Hibernate;
Умеет работать с исключениями;
Умеет решать задачи с использованием циклов и условных операторов;
Умеет создавать собственные методы;
Умеет писать код на Java, используя правила именования, стилистику кода;
Умеет читать код, написанный на Java;
Умеет подключать библиотеку и подбирать методы из библиотек;
Умеет находить ошибки в коде и исправлять их;
Умеет применять стримы и optional;
Умеет принимать решение, какую структуру данных лучше использовать для решения задачи;
Умеет собирать и запускать проекты с помощью Maven;
Умеет работать со Spring Framework;
Умеет создавать сервисы с использованием Spring Boot
Lombok
JUnit, Mockito
Hibernate
Maven
Spring Framework
Spring Boot
Знание ООП (объектно-ориентированного программирования)
Знает методологии разработки программных систем;
Знает, что такое инкапсуляция;
Знает, что такое наследование;
Знает, что такое полиморфизм;
Знает принципы solid.
Применять разные методологии при разработке программных систем
Владеть:Язык программирования Java. Инкапсуляция, наследование. Принципы solid
Тестирование
Что такое инструменты для тестирования своего приложения (Postman, IDEA);
Алгоритм запуска интеграционного тестирования;
Алгоритм запуска модульного тестирования
Умеет использовать инструменты для тестирования своего приложения (Postman, IDEA);
Умеет запускать интеграционное тестирование;
Умеет запускать модульное тестирование (Unit-тесты);
Умеет использовать инструменты для создания тестов.
Postman, IDEA;
Unit-тесты для проведения модульного тестирования
Базы данных
Понятие баз данных;
Конфигурация для подключения к базам данных;
Как работать с базами данных и наполнять их
Умеет подключаться к базе данных;
Умеет заполнять конфигурацию к подключению к базам данных;
Умеет работать с Liquibase;
Умеет создавать и наполнять базы данных;
Умеет манипулировать структурой таблицы и данными в ней.
Liquibase;
Базы данных;
Конфигурация в базах данных
База: математика и программирование
Знает основы математической логики;
Знает основы алгоритмов;
Знает, как устроен процесс преобразования кода в команду.
Умеет работать с командной строкой;
Умеет применять алгоритмы
Командная строка;
Алгоритмы;
Язык программирования Java
Рабочее окружение
Как пользоваться мессенджерами в работе;
Как пользоваться таск-трекерами в работе
Умеет использовать Телеграм, Slack в работе;
Умеет использовать таск-трекеры и мессенджеры команд (Trello, JIRA, Youtrack, Confluence, Asana, GitHub).
Телеграм, Slack,
Trello, JIRA, Youtrack, Confluence, Asana, GitHub
Знание и применение Frontend
Знает об ограничениях Frontend (функционал устройств)
Уметь:Умеет тестировать свой код средствами Frontend разработки;
Владеть:Frontend-разработка для языка программирования Java
Soft skills
Основы работы в команде;
Основы проджект-менеджмента;
Самопрезентация;
умеет самостоятельно принимать решения;
умеет учиться на рабочем месте и работать с ментором;
умеет брать на себя ответственность за результат;
развивает свои навыки английского языка для профессионального роста;
умеет презентовать себя, проходить собеседования;
умеет искать и проверять информацию в открытых источниках;
умеет работать в команде.
Создание презентаций;
Применение инструментов для ведения проекта
Требования
Нет
Образование
- Среднее профессиональное образование
Модули
свернутьПреподаватели

Сазонов
Федор
Сбер
Руководитель направления Java разработки

Сазонов
Илья
Всегда. Да
Руководитель бэкенд-разработки

Белый
Зураб
Reksoft
Руководитель подразделения Java разработки

Латышев
Дмитрий
Сервис экспресс-доставки продуктов питания «Самокат»
Техлид
Профстандарт
Программист
06.001Ответственный за программу
+74951378599