В этом выпуске мы поговорили с Владимиром Ивановым, Senior Engineering менеджером в Bolt, о системном дизайне и его роли в создании крупных сервисов. Обсудили, как подойти к проектированию, начиная от простых односерверных решений и заканчивая распределёнными системами с балансировкой нагрузки, резервированием и шардированием баз данных. Разобрали, чем на самом деле отличаются реальная жизнь и собеседования по системному дизайну, затронули тему микросервисов и того, когда они действительно нужны, а когда нет. Поделились практическими советами, как соотносить бизнес-требования с техническими решениями, и почему разработчику важно мыслить шире, чем просто написание кода. Не пропустите — в выпуске много живых кейсов и инсайтов из реальных проектов!
Подписывайтесь на канал «Организованное программирование» в Telegram: https://ttttt.me/orgprog
– Список подкаст-платформ (Apple Podcast, Google Podcast, Spotify, Яндекс.Музыка и другие): https://podcast.ru/1734325321
– Смотреть в YouTube: https://youtu.be/5A7ncMHfB1g
Полезные ссылки:
Business Oriented System Design Course: https://vvsevolodovich.dev/business-oriented-system-design-course/
https://www.linkedin.com/in/%F0%9F%93%9A-vladimir-ivanov-a4440226/
https://twitter.com/vvsevolodovich
https://t.me/@vvsevolodovich
https://t.me/@architectureweekly
https://youtube.com/@architectureweekly
(00:00) - – Введение и анонс
(00:22) - – Проблемы с самокатами: рост количества, отсутствие инфраструктуры, ужесточение законодательства.
(01:18) - – История системного дизайна: различия между российским и западным подходами, восприятие дизайна в индустрии.
(02:17) - – Три типа компаний: продуктовые, сервисные и оффлайновые – их подход к системному дизайну.
(05:00) - – Образование в IT: почему большинство разработчиков не готовы к проектированию сложных систем.
(07:52) - – Проблемы с обучением системному дизайну: нехватка учебных материалов, передача знаний только через практику.
(09:46) - – Сложности оценки системного дизайна: нет универсальных метрик, важность инженерного мышления.
(11:38) - – Проектирование сложных систем: аналогии с машиностроением, влияние изменений на всю систему.
(12:34) - – Влияние организационных и бизнес-требований: почему IT-решения часто усложняются искусственно.
(14:29) - – Кейсы из бизнеса: пример с биллингом Bolt и необходимость технологических изменений.
(17:40) - – Влияние команды: квалификация и мотивация разработчиков определяют эффективность решений.
(20:47) - – Базовые навыки архитектора: облачные технологии, сети, безопасность, управление данными.
(23:37) - – Организация работы в IT: роль стейкхолдеров, инвесторов и технических специалистов.
(24:35) - – Найм правильных людей: 70% разработчиков не могут стать эффективными менеджерами.
(25:50) - – Оптимизация решений: использование облачных платформ и их влияние на разработку.
(29:29) - – Риски облачных технологий: необходимость осознанного подхода, стоимость и ограничения.
(34:14) - – Взаимодействие с бизнесом: как упрощение требований сокращает время разработки.
(37:05) - – Веб-разработка и системный дизайн: важность понимания архитектурных решений.
(39:54) - – Масштабирование и доступность: почему стабильность требует сложных решений.
(41:43) - – Проблемы с производительностью: важность кэширования, индексов и оптимизации баз данных.
(44:32) - – Архитектурные ошибки: неоправданное усложнение систем и «архитектурные астронавты».
(49:16) - – Стадии компетентности: путь от неосознанной некомпетентности к экспертному уровню.
(51:21) - – Вопросы для оценки решений: какие риски могут убить продукт.
(56:03) - – Бэкапы и отказоустойчивость: примеры реальных провалов и их последствия.
(01:00:45) - – Практическое тестирование: важность проверки резервного восстановления данных.
(01:08:22) - – Региональные требования и блокировки: как они влияют на хранение данных.
(01:12:07) - – Ошибки хранения данных: почему нельзя хранить их внутри приложения.
(01:14:55) - – Kubernetes и масштабирование: как правильно строить отказоустойчивые системы.
(01:30:41) - – Микросервисы vs. монолит: плюсы и минусы подходов.
(01:35:41) - – Разница между интервью по системному дизайну и реальной архитектурой.
(01:38:30) - – Оценка зрелости разработчика: что показывают вопросы на собеседовании.
(01:42:13) - – Стоимость решений: баланс между затратами, производительностью и бизнес-логикой.
(01:45:55) - – Итоги: системный дизайн как ключевой навык, анонс курса по бизнес-ориентированному системному дизайну.
★ Support this podcast ★
Слушайте онлайн полную версию подкаста «#32 Почему микросервисы могут разорить, а монолит выручить: инсайты из практики | Владимир Иванов» автора Кирилл Мокевнин с озвучкой от Анонимный чтец на сайте электронной библиотеки MyBook.ru. Скачивайте приложение для iOS или Android и слушайте «#32 Почему микросервисы могут разорить, а монолит выручить: инсайты из практики | Владимир Иванов» где угодно даже без интернета.
- Дата написания:
- 16 февраля 2025
- Год издания:
- 2025
- Дата поступления:
- 16 февраля 2025