System Design Arcade перетворює підготовку до співбесід із системного дизайну на інтерактивні ігри в аркадному стилі. Забудьте про пасивне читання чи багатогодинні відео – навчайтеся на практиці.
ДВА НАПРЯМКИ:
КОНЦЕПТУАЛЬНА АРКАДА (10 ігор)
Опановуйте окремі будівельні блоки:
• Кешування — Redis, CDN, політики витіснення
• Бази даних — SQL проти NoSQL, індексування, ACID
• Балансування навантаження — алгоритми, перевірки стану, масштабування
• Шардування — стратегії розподілу, узгоджене хешування
• Теорема CAP — компроміси між узгодженістю та доступністю
• Мережі — DNS, TCP/UDP, HTTP, WebSockets
• Дизайн API — REST, GraphQL, обмеження швидкості, версіонування
• Асинхронна обробка — черги повідомлень, pub/sub, подієво-орієнтована архітектура
• Реплікація — лідер-послідовник, кворум, вирішення конфліктів
• Оцінка — розрахунки "на серветці", планування потужності
ПРОБЛЕМНА АРКАДА (14 ігор)
Проектуйте реальні системи від початку до кінця:
• Скорочувач URL, Обмежувач швидкості, Система чату, Стрічка новин
• Instagram, YouTube, Uber, Dropbox, Twitter
• Автозаповнення, Yelp, Ticketmaster, Веб-краулер, Google Docs
ЧИМ ВІДРІЗНЯЄТЬСЯ:
• 24 гри, 120 рівнів, понад 480 інтерактивних завдань
• 6 типів завдань: множинний вибір, впорядкування, заповнення пропусків, конструктор API, конструктор архітектури тощо
• Кожна гра має 5 рівнів: від основ до масштабування
• Миттєвий зворотний зв'язок із детальними поясненнями
• Відстежуйте свій прогрес за допомогою балів та серій
• Без підписок, без реклами
Створено для інженерів-програмістів, які готуються до співбесід із системного дизайну, або для всіх, хто хоче зрозуміти, як працюють великомасштабні системи.