Analyst IT
13.1K subscribers
160 photos
103 videos
7 files
1.19K links
Авторский канал для аналитиков в индустрии ИТ. Все, что надо знать аналитику в одном месте.

Сотрудничество: @the_real_bird
BA/SA: @ba_and_sa

Регистрация РКН: https://knd.gov.ru/license?id=673c6a15b7aeb106ce045ee5&registryType=bloggersPermission
#J6THB
Download Telegram
Дарим Яндекс станцию ‼️

М
ы с друзьями решили порадовать одного из вас Яндекс станцией мини 3 - за подписку!

С нашими каналами познавать мир IT проще и интереснее. Здесь вы найдете: авторские посты, полезные статьи и самые свежие новости про управление проектами, менеджмент, системный анализ, бизнес-анализ и многое другое. Будь в курсе вместе с нами!

Условия максимально простые:
- подписаться на каналы;
- нажать «участвую».

1. Analyst IT
2. Project management | IT

11 февраля мы проведем розыгрыш и одному из вас улыбнется удача и он получит подарок 🎁
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2811👍7🤣3
System Design Интервью. Как готовить? 🍳

• Пойду по наитию ->
• Буду ждать подсказок ->

• Моя экспертиза позволит вырулить ->


❗️ По опыту прохождения таких интервью в BigTech делаю маленький вывод для больших размышлений:
"System Design Интервью - вещь в себе."

☀️ Оказывается у такого интервью:
• Свой пайплайн прохождения
• Аккуратно расставленные грабли
• Разбросанные по IT миру лайфхаки
• Не простая подготовка

💯 Такое осознание специфики интервью поможет к нему подготовиться и успешно его пройти!

С какого конца взяться?
1. Понять основные шаги интервью
2. Выяснить ожидания интервьюера

✏️ Пошаговый фреймворк прохождения
Существуют разные фреймворки прохождения. Чтобы не потонуть в море информации предлагаю рабочий:
1) Выяснить требования

Сюда относим Функциональные и Нефункциональные.
ФТ - какая функциональность доступна пользователю.
НФТ - Какие качества должны быть у проектируемой системы.
2) Построить api
Обычно это REST с несколькими ручками. Одну из которых нужно описать очень хорошо.
3) Спроектировать архитектуру
Начать с монолита. Позволит описать основные user flow голосом. Показать уже работающую минимальную систему.
4) Поговорить о масштабировании
Здесь многие тонут. Но мы подготовимся:
а) Сделать stateless сервисы, которые можем масштабировать горизонтально.
б) Сделать read реплики, поскольку, скорее-всего, запросов на чтение будет больше.
в) Обозначить шардирование, если идём в мир. К примеру, шардирование по гео для букинга. Допустим, ищем отели во Франции. Пускай по признаку "Страна" все данные находятся на определенном сервере. Чтобы не делать кросс серверных запросов. Удобно. Быстро.
5) Упомянуть технологии
Обычно выбираем PostgreSQL, если нужен ACID, схема данных, join.
6) Приправить всё кэшем и мониторингом
Именно здесь. В конце. Избегаем широко известной истории в узких кругах.
Рассказывает СТО: "Ко мне пришёл кандидат и предложил использовать кубернетиз для всех случаев.". Как бы да. Но сначала хочется увидеть спроектированный сервис. Который обслуживает основные пользовательские сценарии. А фразу "кубернетиз всё разрулит" можно припасти на потом. А не спасаться с помощью неё в самом начале.

👎 Нам не нужны:
• Диаграммы последовательности
• BPMN диаграммы, ...
• Подробное описание интеграций внутренних и внешних систем с проработкой их контрактов

🆗 Из диаграмм - максимум аналог С4 контейнерной схемы:
а) Актор - пользователь, админ, ...
б) API GATEWAY
в) Сервисы
г) СУБД
д) Мониторинг
изображенные в таком виде, чтобы получить от интервьюера:
💭 «Ага! Теперь ясно!».

⚡️ Так и закончатся ваши 60 минут крови и пота приятного времяпрепровождения в рамках решения архитектурной задачи.

❗️ Если вышесказанное too much for me now, заберите первые 3 этапа. Отработайте их на "отлично" на пятерке(5️⃣) популярных задач.
И это будет уже базовым прохождением.

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

Автор - Невзоров Владимир. Телеграмм канал - @system_design_world
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥92👍2