学习指引
基于你面试的时间线(短、中、长)去复习那些推荐的主题。
问:对于面试来说,我需要知道这里的所有知识点吗?
答:不,如果只是为了准备面试的话,你并不需要知道所有的知识点。
在一场面试中你会被问到什么取决于下面这些因素:
- 你的经验
- 你的技术背景
- 你面试的职位
- 你面试的公司
- 运气
那些有经验的候选人通常会被期望了解更多的系统设计的知识。架构师或者团队负责人则会被期望了解更多除了个人贡献之外的知识。顶级的科技公司通常也会有一次或者更多的系统设计面试。
面试会很宽泛的展开并在几个领域深入。这回帮助你了解一些关于系统设计的不同的主题。基于你的时间线,经验,面试的职位和面试的公司对下面的指导做出适当的调整。
- 短期 - 以系统设计主题的广度为目标。通过解决一些面试题来练习。
- 中期 - 以系统设计主题的广度和初级深度为目标。通过解决很多面试题来练习。
- 长期 - 以系统设计主题的广度和高级深度为目标。通过解决大部分面试题来联系。
短期 | 中期 | 长期 | |
---|---|---|---|
阅读 系统设计主题 以获得一个关于系统如何工作的宽泛的认识 | :+1: | :+1: | :+1: |
阅读一些你要面试的公司工程博客的文章 | :+1: | :+1: | :+1: |
阅读 真实架构 | :+1: | :+1: | :+1: |
复习 如何处理一个系统设计面试题 | :+1: | :+1: | :+1: |
完成 系统设计的面试题和解答 | 一些 | 很多 | 大部分 |
完成 面向对象设计的面试题和解答 | 一些 | 很多 | 大部分 |
复习 其它的系统设计面试题 | 一些 | 很多 | 大部分 |