Plan
Last updated
Was this helpful?
Last updated
Was this helpful?
функциональные требования (что пользователь хочет от системы в виде сценариев, jobs to be done)
нефункциональные требования (главные архитектурные характеристики: sizing, rps)
определить важность и интересность требований, которую разбирать на собесе
выбрать правильный способ интеграции системы: files, DB, API, messaging.
if (API) REST?, RPC?, GraphQL, AsyncAPI
выбрать сети и протоколы (TCP, UDP)
Балансировщики нагрузки (nginx, HAproxy)
обрабатываемые сценарии
happy path. Read / write path
corner cases (когда части системы отваливаются). Уточнить на собесе что именно т до какой глубины здесь прорабатывать
проговорить логи, мониторинг, миграцию данных
TODO:
stateless / stateful нагрузки (как разделять?)
how to store documents in document oriented dbs
K/V, document oriented, column oriented, graph
по конкретным базам проработать
понять гарантии. Какой диапазон нагрузок они потянут. Дрифты часов
twelve factor app
как масштабировать stateless/stateful компоненты на чтение, на запись (с использованием оркестраторов, горизонтальное, вертикальное)
Важно:
задавать правильные вопросы
не комититься на задачи, которые не нужно решать
помнить о времени
не начинать проектировать сразу
делиться своими размышлениями на собесе
проявлять самостоятельность и проактивность в проектировании
реагировать на наводящие вопросы и уточнения
в конце спросить и почему вы именно эту задачу спрашиваете?
for 10 euro here there are many of below systems designed LINK
Pastebin.com LINK
web crawler LINK
Mint.com LINK
data structures for a social network LINK
key-value store for a search engine LINK
Amazon's sales ranking by category feature LINK
Back of the envelope calculations (good example LINK)
A lot of links are taken from here
Great youtube channel Crushing Tech Education; Jordan has no life
repeat relations in DB ( 1 to many, etc)
DDD
Entity-Relationship diagram
what is failure domains
partitioning vs sharding
tik tok
twitter (Twitter timeline and search) LINK
url shortener
uber LINK
доставка еды
whatsup
tinder Example
Dropbox LINK