-2

我是为 FANG 公司招聘的产品经理。我想请你就如何准备系统设计面试提出建议。

背景:我看过视频来学习各种概念,并且可以设计简单的系统,如 Pastebin 和 TinyURL。

挑战:我在组件设计或对复杂系统(如 Instagram、Whatsapp、Uber 等)的深入研究中挣扎。当我研究队列等概念时,我觉得我知道,但后来我发现它们以我不知道的方式使用熟悉。

你能分享一下如何进一步准备吗?感谢您的建议。谢谢

4

1 回答 1

1

当你被问到“设计 Twitter”时,我期望的几件事:

  1. 用例说明
  2. 将系统拆分为可管理的块 - 微服务。这些天没有人想看到一块巨石。

对我来说重要的部分:作为产品经理,我不希望您知道并能够解释所有各种类型的复制等;但我确实希望为每个盒子定义出色的 API。我建议在 youtube 上观看 Joshua Block 的演讲“如何设计一个好的 API 及其重要性”。

最初的拆分是基于常识的——比如搜索和文件存储是不同的服务——API 也应该很简单。

在你能做到这一点之后,是时候学习基本的架构设计模式了(谷歌这些)。

当你学完所有这些?好吧 - 武士没有目标,只有道路。

于 2022-03-03T05:09:44.323 回答