Программа и содержание

Расширяем круг компетенций или готовимся к интервью в BigTech.

Для кого этот курс:

1. Системный администратор

2. Разработчик

3. Аналитик

4. Архитектор

5. Продакт и проджект менеджер

6. Инженер

Модуль 1 - Сбор требований и оценка нагрузки

Начнём проектирование системы с выбора ограниченного круга функциональных и нефункциональных требований, которым она должна соответствовать.

Исходя из предположений о количестве пользователей и паттернах использования оценим трафик и требования к необходимому железу.

Модуль 2 - Высокоуровневые схемы и модульный дизайн

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

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

Модуль 3 - Масштабирование и повышение отзывчивости

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

Модуль 4 - Подсистема для хранения данных, поиска и аналитики

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

Настроим поиск по геоданным, мониторинг и сбор логов для аналитики и внешних команд.

Модуль 5 - Финальный проект

Спроектируем дизайн популярной системы, которой пользуются миллионы людей по всему миру.

Применим для этого все знания, полученные в рамках курса.