Skip to content
@SoftwareEngineering2026

SoftwareEngineering2026

Лабораторные задания по дисциплине "Программная инженерия"

Все материалы и домашние задания хранятся в репозиториях этого проекта GitHub


Ресурсы курса

Материал Ссылка
Презентации лекций https://github.com/SoftwareEngineering2026/Lectures
Задания и лабораторные https://github.com/SoftwareEngineering2026/Tasks

Лабораторные работы

Тема Ссылка на задание
1 Git https://github.com/SoftwareEngineering2026/Tasks/blob/main/101_Git.md
2 Testing https://github.com/SoftwareEngineering2026/Tasks/blob/main/102_Testing.md
3 Refactoring https://github.com/SoftwareEngineering2026/Tasks/blob/main/103_Refactoring.md
4 Docker https://github.com/SoftwareEngineering2026/Tasks/blob/main/104_Docker.md
5 Docker Compose https://github.com/SoftwareEngineering2026/Tasks/blob/main/105_Docker_compose.md
6 Continuous Integration https://github.com/SoftwareEngineering2026/Tasks/blob/main/106_CI.md
7 Monitoring https://github.com/SoftwareEngineering2026/Tasks/blob/main/107_Monitoring.md
8 Security https://github.com/SoftwareEngineering2026/Tasks/blob/main/108_Security.md

Семинар

На последних двух лекциях курса проведётся семинар. Каждый студент должен подготовить выступление на ~10 минут.

Выбор темы

В качестве темы выступления можно выбрать:

  • Тему, связанную с вашей ВКР
  • Тему, связанную с вашей работой
  • Тему, связанную с курсом "Программной инженерии"

Основные области курса

  • Командные процессы и инженерная культура
  • Архитектура ПО и принципы проектирования
  • Инструменты CI/CD
  • Безопасность ПО
  • Исторические кейсы в программной инженерии (знаковые проекты и интересные события)
  • ИИ в разработке ПО

Предложенные темы выступлений

Командные процессы и культура разработки

  • Психологическая безопасность в команде разработки — как создать среду, где разработчики не боятся ошибаться
  • Асинхронная разработка — как организовать работу распределённой команды в разных часовых поясах
  • Code Review как инструмент обучения, а не контроля

Архитектура и проектирование

  • Микросервисы vs монолит в 2026 году — когда и почему стоит выбирать каждый подход
  • Event-driven архитектура — как событийная модель меняет разработку масштабируемых систем
  • Domain-Driven Design — как не переусложнить архитектуру на ранних этапах
  • Техдолг как стратегический инструмент — когда его нужно накапливать и когда погашать
  • Kafka vs RabbitMQ - как выбрать

DevOps и инфраструктура

  • GitOps как парадигма — инфраструктура как код и автоматизация развёртывания через Git, Kubernetes, ArgoCD

Мониторинг и наблюдаемость

  • Observability vs Monitoring — почему логов и метрик недостаточно для понимания систем

Безопасность

  • Supply chain security — как защитить проект от уязвимостей в зависимостях
  • Secure by design — встраивание безопасности на этапе архитектуры
  • Zero Trust архитектура в разработке — как не доверять никому и ничему (практики аутентификации, авторизации и микросегментации)

Исторические кейсы

  • Техногенная катастрофа: крах Knight Capital
  • Случаи, когда баги в коде привели к человеческим жертвам

ИИ в разработке

  • LLM-ассистенты — помощники или угроза для разработчиков?
  • Сравнение современных ИИ-ассистентов — что лучше?

Popular repositories Loading

  1. Tasks Tasks Public

    This repository contains the conditions for the lab tasks, as well as the source files for completing them

    1

  2. Practice101 Practice101 Public

    12

  3. .github .github Public

  4. Practice102 Practice102 Public

    9

  5. 103-refactoring-exercise 103-refactoring-exercise Public

    Forked from lamchau/refactoring-exercise

    Java 3

  6. Practice103 Practice103 Public

    7

Repositories

Showing 10 of 13 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…