Для документирования архитектуры и процессов часто выбирают между BPMN и UML. Но важнее не конкретная нотация, а понимание аудитории. Технический UML-компонент идеален для разработчиков, а для бизнеса часто достаточно простой блок-схемы или белой доски и маркера.
С бизнесом еще отлично работает C4 model - начинаете с простой контекстной диаграммы, и по необходимости углубляетесь в детали. PlantUML + C4 = отличная документация в git без сложных инструментов.
А вот Enterprise Architect используйте, только если это действительно требуется процессами компании.
#SystemDesign #Documentation #Architecture
С бизнесом еще отлично работает C4 model - начинаете с простой контекстной диаграммы, и по необходимости углубляетесь в детали. PlantUML + C4 = отличная документация в git без сложных инструментов.
А вот Enterprise Architect используйте, только если это действительно требуется процессами компании.
#SystemDesign #Documentation #Architecture
❤7👍3
🎤 Выступил! Делился историей о том, как мы не справились с нагрузкой в 20 000+ RPS, и какие уроки из этого вынесли.
Если честно – это было самое волнительное выступление в моей карьере. И дело не только в масштабе конференции и количестве слушателей, но и в самой теме. Хотелось честно рассказать о том, что проблемы случаются у всех – важно не это, а то, как мы с ними справляемся 💪
Надеюсь, теперь у инженеров будет под рукой наглядный кейс, который можно показать менеджменту – вот что бывает, если игнорировать технические риски на старте 😉
Презентацию можно посмотреть тут
А сейчас пойду немного выдохну и пройдусь по стендам – мерч сам себя не соберет 🎁
#Highload2024 #PublicSpeaking #SystemDesign #DevOps #ITConference
Если честно – это было самое волнительное выступление в моей карьере. И дело не только в масштабе конференции и количестве слушателей, но и в самой теме. Хотелось честно рассказать о том, что проблемы случаются у всех – важно не это, а то, как мы с ними справляемся 💪
Надеюсь, теперь у инженеров будет под рукой наглядный кейс, который можно показать менеджменту – вот что бывает, если игнорировать технические риски на старте 😉
Презентацию можно посмотреть тут
А сейчас пойду немного выдохну и пройдусь по стендам – мерч сам себя не соберет 🎁
#Highload2024 #PublicSpeaking #SystemDesign #DevOps #ITConference
Яндекс Диск
2024-12-02,03 HighLoad++
Посмотреть и скачать с Яндекс Диска
👍15🔥1
Всем привет! Я думаю, все знают, что прохождение интервью и работа в компании – это две большие разницы.
Для разработчиков и технических менеджеров есть этап, который вызывает у меня одновременно огромное удовольствие и сильный стресс — System Design.
Суть его в том, чтобы за час уточнить требования, спроектировать рабочую систему и углубиться в детали.
Даже если вы отлично умеете проектировать, в формате интервью это адская сложность. Всего 60 минут, за которые надо обсудить всё:
- Уточнение требований
- Оценку нагрузки
- OSI-уровни
- Шардирование, репликацию
- Метрики
- и многое другое
Нужно не просто предложить систему, но и защитить её перед интервьюером. Самое интересное – правильного ответа нет, только аргументированные решения.
---
Как к этому подготовиться?
Лидеры в России по System Design – Авито. У них сильнейший подход, которому они ещё и обучают.
Рекомендую посмотреть видео: https://youtu.be/eRUHvOJsGwk?si=DQlX7iCouI94BAaz
Если проектируете backend, и интервьюер сказал, что фронтенд не важен, после подсчетов можно сразу переходить к архитектуре в два этапа:
1. Подходы – сначала объясняем, почему делаем так, а не иначе. Например, очередь или синхронные запросы? SQL или NoSQL? API Gateway или прокси?
2. Решение – проверяем, бьётся ли система с цифрами, объясняем компромиссы, выбираем финальный вариант.
В конце ещё раз проверяем, что система выдерживает нагрузку, и объясняем, какие метрики будем отслеживать.
---
Что почитать и где тренироваться?
📖 Книга: *Алекс Сюй – System Design. Подготовка к сложному интервью*
Идеально – тренироваться на реальных задачах.
Берите задания, решайте, сравнивайте с чужими решениями.
Лучший вариант – найти ментора, который будет вас гонять.
Самое крутое в этом типе собеседований?
Он реально помогает в жизни: вы начнёте лучше понимать компромиссы в разработке и будете осознанно строить архитектуру.
А вы проходили такое собеседование? Как вам? Что оказалось сложнее всего?
#SystemDesign #Backend #Frontend #Архитектура #DevOps #Разработка #ITКарьерa
Для разработчиков и технических менеджеров есть этап, который вызывает у меня одновременно огромное удовольствие и сильный стресс — System Design.
Суть его в том, чтобы за час уточнить требования, спроектировать рабочую систему и углубиться в детали.
Даже если вы отлично умеете проектировать, в формате интервью это адская сложность. Всего 60 минут, за которые надо обсудить всё:
- Уточнение требований
- Оценку нагрузки
- OSI-уровни
- Шардирование, репликацию
- Метрики
- и многое другое
Нужно не просто предложить систему, но и защитить её перед интервьюером. Самое интересное – правильного ответа нет, только аргументированные решения.
---
Как к этому подготовиться?
Лидеры в России по System Design – Авито. У них сильнейший подход, которому они ещё и обучают.
Рекомендую посмотреть видео: https://youtu.be/eRUHvOJsGwk?si=DQlX7iCouI94BAaz
Если проектируете backend, и интервьюер сказал, что фронтенд не важен, после подсчетов можно сразу переходить к архитектуре в два этапа:
1. Подходы – сначала объясняем, почему делаем так, а не иначе. Например, очередь или синхронные запросы? SQL или NoSQL? API Gateway или прокси?
2. Решение – проверяем, бьётся ли система с цифрами, объясняем компромиссы, выбираем финальный вариант.
В конце ещё раз проверяем, что система выдерживает нагрузку, и объясняем, какие метрики будем отслеживать.
---
Что почитать и где тренироваться?
📖 Книга: *Алекс Сюй – System Design. Подготовка к сложному интервью*
Идеально – тренироваться на реальных задачах.
Берите задания, решайте, сравнивайте с чужими решениями.
Лучший вариант – найти ментора, который будет вас гонять.
Самое крутое в этом типе собеседований?
Он реально помогает в жизни: вы начнёте лучше понимать компромиссы в разработке и будете осознанно строить архитектуру.
А вы проходили такое собеседование? Как вам? Что оказалось сложнее всего?
#SystemDesign #Backend #Frontend #Архитектура #DevOps #Разработка #ITКарьерa
❤2
Читаю книгу System Design, Алекс Сюй. Один из кейсов - создание архитектуры для чата, но мне стала интересна современная реализация высоконагруженной платформы.
Думаю дай-ка сделаю, проектов и работы же мало, надо еще больше :)
Пошел смотреть, а чем все-таки можно заменить достаточно старый Websocket, неужели не появилось более современных альтернатив.
Нашел - gRPC bidirectional streaming. Возбудился, стал рыть - преимущества большие, но как всегда с gRPC все плохо с браузерами, до сих пор поддержка HTTP 1/2, можно через grpc-web и envoy проксировать, но полноценной поддержи bidirectional streaming нет. Только server streaming + unary calls.
Надежда еще живет, немного покопаю, но чувствую кроссплатформу можно сделать только на старом добром Websocket.
Есть еще WebTransport, вроде поддерживает UDP-like streaming. Еще Server Sent Events, но я так понял это что-то типо Long Polling. Тоже покопаю.
#systemdesign #архитектура #OpenSource
Думаю дай-ка сделаю, проектов и работы же мало, надо еще больше :)
Пошел смотреть, а чем все-таки можно заменить достаточно старый Websocket, неужели не появилось более современных альтернатив.
Нашел - gRPC bidirectional streaming. Возбудился, стал рыть - преимущества большие, но как всегда с gRPC все плохо с браузерами, до сих пор поддержка HTTP 1/2, можно через grpc-web и envoy проксировать, но полноценной поддержи bidirectional streaming нет. Только server streaming + unary calls.
Надежда еще живет, немного покопаю, но чувствую кроссплатформу можно сделать только на старом добром Websocket.
Есть еще WebTransport, вроде поддерживает UDP-like streaming. Еще Server Sent Events, но я так понял это что-то типо Long Polling. Тоже покопаю.
#systemdesign #архитектура #OpenSource
👍4🌚1