SchelleyYuki

系统设计面试 System Design

我推荐的系统设计面试资源,既以视频讲解为主的 SystemsExpert,又有图文讲解为主的 Alex Xu系统设计课程,还有系统设计模拟面试资源。至于哪个更适合你,取决于你的系统设计基础,和学习偏好。

This post contains my affiliated links. I may receive compensation if you make a qualifying purchase through my link. 

如果你是初次准备系统设计面试

如果你是一个新手, 比如在校学生或者非资深的工程师, 那 SystemsExpert(链接:http://algoexpert.io/schelley  折扣码:schelley)会很适合你,能够帮你把基础打得很扎实。通过观看视频里的模拟面试, 你也能更好地学到面试中如何把控节奏, 各个设计步骤的时间如何分配, 如何用英文精准表达你的思路和想法, 如何与面试官有效沟通, 甚至巧妙地索要提示。

SystemsExpert是AlgoExpert旗下的系统设计课程。课程内容分两大块,第一大块是系统设计的基础知识点介绍, 覆盖了计算机网络, 数据库, 分布式系统这几个领域里与系统设计面试相关的关键知识点, 每个知识点对应一个讲解视频, 以及关键信息的文字笔记, 方便你快速复习视频内容。

第二大块是高频题讲解,每道题对应一个45分钟的带英文字幕的视频讲解, 通过Clement和面试官的互动讨论, 来高度还原一场45分钟的系统设计面试,把你置身于面试现场, 身临其境地感受如何与面试官沟通, 如何一步步地把设计和架构图细化, 以及如何做tradeoff。每道题都有完整的图文版本的答案, 把每一个步骤的设计细节呈现给你。这样你以后再复习内容时,直接看图文答案就可以了,省很多时间。 

SystemsExpert的链接是: http://algoexpert.io/schelley ,使用折扣码schelley 可获得10%折扣

如果你有系统设计面试经验

如果你是一个老手,已经知道系统设计应该怎么面,把一堆系统设计高频题从头快速复习一遍, 那么 Alex Xu的系统设计课程(链接:https://schelley.co/alex  折扣码: schelley)很适合你。

这门课先是告诉读者,一个成功的system design conversation大概长啥样,有哪些步骤,面试官希望你讨论哪些内容。比如, 面试官会希望你先沟通明确需求, 然后设计架构图, 设计数据库, 最后解决系统的各种瓶颈。其实就是一个层层深入的设计过程, 就像画画一样, 先勾好框架, 再把细节逐步填进去。

接着,这个课程深度讲解了25道高频的系统设计题,每道题都按照一开始介绍的那个通用设计模板来做,反复训练你运用同一套思维框架,来解决不同的问题。课程还有一大亮点,就是Alex为每道题都给出了多种设计方案,并且讨论每种方案的trade-off。比如Proxmity Service这道题,也就是设计一个类似Yelp的系统,Alex在设计nearby business的索引方式时,给出了5种方案。这种在面试中主动列出多种方案,讨论trade-off的能力,是面试官非常看中的加分项。

Alex Xu的课程链接是: https://schelley.co/alex   使用折扣码schelley 可获得10%折扣

如果你想进行System Design模拟面试

如果你复习得差不多了,想通过模拟面试进一步提升你的成功率,你可以通过Exponent平台(链接: https://schelley.co/coach  )预约一名Google或者Facebook的资深面试官,来给你做几次模拟面试。与这些资深面试官进行模拟面试的最大价值之一,就是获取他们的真实feedback和建议,从而帮你进一步提升你的面试技术,特别是你在面试现场的沟通应变能力,以及对面试节奏的控制。这样无疑能增大你通过面试的机率。

Exponent的模拟面试链接是 https://schelley.co/coach 该链接自带10%折扣

我的编程相关影片(YouTube)