Внимание!!! В связи с ослаблением 2-го этапа карантина открытие метрополитена и запуска транспорта мы официально начинаем работу с 26-го мая. Учебный центр работает в обычном режиме. Также, Вы можете записаться на курсы online!

Курсы Software Engineering в Киеве. - Онлайн курсыПрограммист – это профессия, для которой необходимо постоянно развиваться и обучаться. Технологии совершенствуются, появляются новые языки и инструменты программирования. Чтобы ориентироваться во всем этом разнообразии, специалист должен прилагать усилия.

Курс Software Engineering построен таким образом, что студенты рассматривают пять составляющих процесса работы, чтобы получить полное представление о процессе разработки ПО.
Continuous Integration, Testing, Delivery, Deployment и Operation.

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

Освоив новые знания, разработчик расширяет свои возможности и получает стимул для карьерного продвижения. Сфера Software Engineering быстро развивается и привлекает все больше внимания среди инвесторов, крупных компаний. После курса обучения студенты будут обладать системными знаниями и видеть структуру процесса разработки в комплексе. Такой подход делает более эффективным усвоение материала и применение полученных навыков на практике.

Кому подходит этот курс.

  • Начинающим программистам от Junior/Junior+ уровня и до Middle.
  • Специалистам по обеспечению надежности (SRE-инженерам).
  • DevOps, специалистам, которые занимаются автоматизацией процессов разработки для ознакомления с новыми инструментами.

Что умеют выпускники курса.

  • Использовать ветки и работать в Git, знают стандарты хранения программного кода.
  • Эффективно проводить Release Management, управляя процессом выхода программного продукта.
  • Настраивать Quality Gates для SonarQube для оценки качества кода, создавать пользовательские ворота качества.
  • Проводить Code Review для повышения качества кода программных продуктов.
  • Формулировать бизнес-требования и превращать их в техническое задание.
  • Знают все этапы жизненного цикла ПО и контролируют качество прохождения каждого, начиная с планирования системы, заканчивая ее технической поддержкой.
  • Умеют отправлять Pull Request, что является необходимой частью процесса Code Review и вносить изменения в код.
  • Знают принципы TDD (test-driven development) и применяют их в своих проектах.
  • Проводят настройку систем (CI/CD), соединяя SonarQube, Jenkins, SonarQube, Github и Nexus для непрерывной интеграции.
  • Создают фреймворки тестирования и знают различия между end-to-end и юнит-тестированием.

Курсы Software Engineering. Программа.

Подготовительный этап.

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

Continuous Integration.

  • Основные понятия в разработке программного обеспечения.
  • Взаимодействие разработчика с членами команды.
  • Применение Git для командной работы над кодом.
  • Веб-приложение для управления задачами Github.
  • Составление рабочего графика и менеджмент ресурсов.
  • С помощью каких инструментов реализуют проверку качества кода.
  • Автоматизация и управление задачами с помощью Jenkins.
  • Бранчинг версий для релиза и стабилизация кода.

Continuous Testing.

  • Принципы разработки TDD (test-driven development).
  • Как происходит тестирование качества кода с применением SonarQube.
  • Юнит-тесты и покрытие кода.
  • Настройка пользовательских ворот качества Quality Gates.
  • User Story Isolation.
  • Как определить уязвимости кода.
  • Отправка кода в репозиторий.
  • Мануальное тестирование.
  • Автоматизированное тестирование.
  • E2E – тестирование функции в реальных сервисах.
  • UI – тестирование интерфейса путем имитации действий пользователя.

Архитектура программного обеспечения (Software Architecture).

  • Внешние факторы качества – robustness (устойчивость), correctness (корректность), reusability (повторное использование), extendibility (расширяемость).
  • Какой бывает архитектура ПО – Serverless, SOA, Web-Queue-Worker.
  • Типы архитектуры: Standalone, N-tier, SOA, Microservices, Big Data/Big Compute, Serverless, Web-Queue-Worker, Event-driven architecture.
  • Модели облачных сервисов. XaaS, SaaS, IaaS, PaaS.
  • Сбор требований, постановка задачи estimates, pre-sales, RFI/RFP – запрос информации и запрос предложения.
  • Работа с внешними факторами качества.

Проектирование программного обеспечения (Software Design).

  • Архитектура ПО и проектирование.
  • Архитектурное решение и дизайн интерфейса.
  • Графическое представление программного кода.
  • Распределенное вычисление – теория и алгоритмы.
  • Polyglot Persistence.
  • Polyglot Programming.
  • Что такое парадигмы программирования.
  • Функциональное и логическое программирование.
  • Процедурное программирование и ООП.
  • Структура данных.
  • Компилятор и интерпретатор.
  • Отношения между классами в ООП: композиция и декомпозиция, ассоциация, наследование, агрегация.
  • Общая структура организации проекта.
  • Компонентная модель.
  • Дизайн-шаблоны GRASP, T-diagrams, UML, MVC(MVVM).
  • Документация.
  • CAP-теорема.
  • RDBMS.
  • NoSQL.
  • Graph DB, DB Migration.
  • Написание микросервиса для API на языке Java.
  • Создание микросервиса для аутентификации с помощью Node.js.
  • Многопоточное программирование C++.
  • Алгоритмы lock-free.
  • Angular/Typescript (front-end составляющая сервиса).
  • Groovy для Jenkins DSL.
  • Подключение Postgresql, MongoDB и Neo4j.
  • Аутентификация и авторизация. Контроль доступа RBAC/ABAC.
  • Message brokering.
  • Чем различаются принципы mobile-first и mobile-only.
  • Waterfall, RUP, Agile.
  • Многопоточное программирование, клиент-серверные системы, P2P.
  • Технический долг, legacy-продукты, рефакторинг.
  • Кэширование.
  • Multitenancy, аудит, брендинг, GDPR.

Программный интерфейс приложения API.

  • Как создается интерфейс взаимодействия.
  • Принципы объектно-ориентированного программирования SOLID.
  • Контрактное программирование – спецификации интерфейсов.
  • Что такое ортогональный API.
  • Стандарты API – GraphQL, RESTful API, OpenAPI.
  • Внедрение системы API-менеджмента.
  • Как организовать пагинацию (pagination).
  • Rate Limits – ограничение частоты запросов к API для оптимизации работы приложения.
  • Обзор ML.

Continuous Delivery.

  • Внутренняя структура разработки ПО.
  • Хранилище артефактов в репозитории.
  • Что такое переменные среды.
  • NoOps, Opsless.
  • Технология Docker, как использовать Docker compose, чтобы запустить приложение-контейнер.
  • Swarm.
  • Kubernetes.
  • Service Mesh (Istio).

Continuous Deployment.

  • Среда разработки: Preview Env, Development Env, Test Env, Production Env.
  • Эффективность модели follow-the-sun.
  • Скорость развертывания версии ПО и стоимость разработки.
  • A/B, Canary, 0-downtime, Blue-Green Deployment – шаблоны развертывания.
  • Rolling updates – плавающий метод обновления ПО.

Continuous Operation.

  • Техническая поддержка как часть разработки программного обеспечения.
  • Обслуживание клиентов и доработка программы.
  • Планирование разработки с учетом задач SRE.
  • Линии поддержки L1, L2, L3 и решение клиентских проблем.
  • Соглашение об уровне обслуживания SRE, SRE, SLI, SLA, SLO.
  • Восстановление данных и data backup strategy.
  • Системы мониторинга прогнозирования.
  • Настройка оповещений о сбое.

Облачные технологии.

  • Облачные технологии как инструмент разработки.
  • Ключевые технологии облачных сервисов.
  • Обзор основных облачных платформ, их архитектура.
  • Гибридное облако – что такое и как с ним работать.
  • Создание кластера для разворачивания приложения.
  • Работа с географическими зонами.
  • Аппаратная и пользовательская виртуализация.
  • Технологии виртуализации Docker и Kubernetes.

Как проходит процесс обучения

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

  Запись на курсы через форму на сайте или по телефону
  Получение учебных материалов и инструкций
  Теория и практика в наших классах или удаленно
  Online-консультации по домашним заданиям
  Получение сертификата об окончании курса

Записаться

Наши клиенты

Преимущества «IT Cтолица»

  Удобное расположение
Мы находимся возле метро. Вам не придется тратить время на дорогу
  Преподаватели-практики
Наши преподаватели - опытные практики, имеющие огромный опыт
  С другом дешевле
Если вы приведете друга, то каждый получит 50% скидку на обучение
  Качественно и недорого
Мы постоянно улучшаем программы курсов и пересматриваем цены
  Корпоративное обучение
Мы знаем, как сделать работу ваших сотрудников более эффективной
  Трудоустройство
Выпускники имеют возможность устроиться в ведущие IT-компании
  Небольшие группы
В наших группах от 2 до 3 человек, что позволяет уделить внимание каждому
  Комфортные условия
Мы располагаем удобными классами, где царит позитивная обстановка
  Работаем по выходным
Чтобы у вас была возможность совмещать обучение и работу

Отзывы о нас

15.03.2020 Отзыв о курсе «Компьютерный дизайн в 3D MAX»

Прошол курс обучения по 3D MAX. Курсом доволен. Даже доволен тем, что за время обучения было два преподавателя, что дало возможность разногранию.... Подробнее

13.03.2020 Отзыв о курсе «3D MAX»

Прошла курс 3D max. Все понравилось, в том числе и преподаватель Андрей. Булгакова В. С. Подробнее

12.03.2020 Отзыв о курсах «3D MAX»

Я прошла курс 3D MAX. Очень довольна обучением. Преподаватель Андрей очень хорошо преподает свои предметы. Преподаватели: Кобзарь Андрей, Приходько... Подробнее

11.03.2020 Отзыв о курсах «Инженерная графика в AutoCAD»

Спасибо большое за проведенные курсы AutoCAD. Они помогли заполнить «белые пятна», новой и полезной информацией. Материал был выложен... Подробнее

Часто задаваемые вопросы

Как узнать стоимость обучения?

Стоимость обучения зависит от выбранного курса, а также от типа обучения: индивидуально или в группе. Цены указаны на нашем сайте на странице "Цены", а также на странице конкретного курса. Если у вас есть вопросы - не стесняйтесь, задавайте их по нашим телефонам или через контактные формы на сайте!

Какое время обучения возможно?

Возможное время обучения указано на странице конкретного курса. Обычно это утренние (9:00-11:00, 11:00-13:00), дневные (13:00-15:00, 15:00-17:00) и вечерние (17:00-19:00, 19:00-21:00) часы. Кроме того, есть возможность обучаться и по выходным!

Выдаются ли у вас сертификаты?

Да. Абсолютно все студенты нашего учебного центра после окончания курсов получают сертификат, в котором указывается информация о курсе, подтверждается его успешное окончание.

Как записаться на нужные курсы?

Для этого необходимо просто заполнить небольшую on-line форму заявки на нашем сайте, или просто позвонить по указанному телефону, или лично прийти к нам в офис. Кроме того, вы сможете посетить пробное бесплатное занятие!

Как и где питаются слушатели?

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

Что включено в стоимость курсов?

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

Будьте в курсе новостей Будьте всегда в курсе свежих акций и новостей

Запись на курсы

Перезвонить ?