System Design для мобильных приложений: примеры и подсказки, опыт Google/Facebook
System Design Prep
Пример из Google: в гугле например могут попросить задизайнить вообще что-то левое, например extension для chrome, который предотвращал бы открытие какого-либо сайта может быть:
1. Тестовое на дом, запилить моб приложение.
2. ФБ может дать на сис дизайне сис дизайн бекенда мобильщикам.
3. Нормальный сис дизайн, но пока в чате не было историй по кейсам собесов ф фаанги на мобайл с моб сис дизайном.
По мотивам систем дизайн собесов в ФБ и Гугл на мобильщика написал статейку. Может пригодится опыт.
Grokking the Mobile System Design Interview
Пример 2:
Мне дали задизайнить что-то типа ленты постов(точно не помню чего, но ленту) с бесконечной прокруткой. По сути, просто кусок приложения. Мне показалось, что там важно ещё рассказать про альтернативы и трейд-оффы, почему выбрал одно, а не другое. Но в целом не выглядело чем-то особенным, ну или я на задачах больше фокусился.
Пример 3, Uber:
У меня в Убере была секция задизайнить мобильное приложение для морского боя с разными постепенными усложнениями (то на одном устройстве, то peer-to-peer, то через сервак, потом с сохранением стейта, етс).
Tips & Tricks:
Особенность, видимо, была в том, что первоначально рассматриваем самый простой вариант с игрой оффлайн на одном устройстве. Просто продумываешь модели данных, какие экраны могут быть, слои, как они взаимодействуют. А потом уже накручивались разные усложнения, вместе с которыми нужно было менять архитектуру.