Программа курса Тинькофф Академия Бэкенда

  • Системы контроля версий
  • Чистый код
  • Парадигмы и языки программирования. Корректность программ
  • Функциональное программирование
  • Объектно-ориентированное программирование
  • Типы и эффекты в языках программирования
  • Модульное программирование
  • Шаблоны проектирования
  • Тестирование
  • Сессии парного программирования — TDD каты
  • Практики разработки
  • Моделирование предметной области
  • Управление проектами разработки ПО
    Базовые понятия и инструменты проектного управления с точки зрения члена проектной команды
  • Безопасная разработка ПО

Распределенные системы и корпоративные приложения

  • Компьютерные сети
  • Сервис-ориентированная архитектура
  • Разработка масштабируемых сервисов
  • Модели данных и языки запросов
  • Реляционная модель данных
  • Эффективное использование реляционных баз данных
  • Объектно-реляционное отображение
  • Репликация и секционирование
  • Модели согласованности и обработка транзакций
  • Шаблоны обеспечения отказоустойчивости распределенных систем
  • Шаблоны проектирования корпоративных приложений
  • Асинхронный обмен сообщениями
    Концепции, шаблоны, технологии
  • Пакетная и потоковая обработка
  • Базовые SRE принципы
  • Работа с инфраструктурой
  • Как создать идеальное приложение
  • Мониторинг
  • Балансировка нагрузки
  • Шардирование
  • Тестирование
  • Работа в командах (SRE живет только в командах)
  • SRE для мобильных приложений
  • Перепроектировать заданный код, исправив нарушение принципа подстановки Лисков
  • Отработать 55 сценариев использования git в интерактивном тренажере
  • Настроить конвейер CI, разработать консольную программу по ТЗ, используя технику TDD и пройти рецензирование кода в несколько итераций