楼主: architect
跳转到指定楼层
上一主题 下一主题
收起左侧

[经验总结] 旁听了10+场系统设计面试的观察经验

   
全局:
只看Grokking或者DDIA很容易流于high level和纸上谈兵的东西,很难往落地实现的细节深挖下去。对基本概念有了理解以后还不如分主题多看大公司的tech blog或者tech talk,比那些什么模板有用多了。系统设计的能力本来就是逐步积累的过程,靠突击的在资深面试官眼里很容易看出来,只是senior以及以下的级别要求没这么高也就让过了。
回复

使用道具 举报

全局:
本帖最后由 ymsfd007 于 2021-11-6 17:56 编辑

多数厂都是楼主说的这种考察方式,但面infra的话就不太一样了,很多infra的面试官不喜欢candidate纠结于API和schema的细节,允许你一笔带过,但期待你对于系统层面的设计有深入讨论和权衡,网上那个亚麻的俄国哥们的系统设计面试就是那个风格,但一般公司的面试官是不会接触和设计那样的系统的,所以不是他们想要讨论的重点,不广泛适用。
刚找到了他的视频:https://www.youtube.com/c/SystemDesignInterview/featured
这哥们好像是亚麻做数据库之类infra/backend的,你能明显感觉到他的所有design都很“high level”,他总是绕着CAP+performance这几个系统层面的需求作为核心点来做设计,其实给绝大多数要求把API和schema细节弄清楚的面试官面试,他很可能就挂了,因为他的设计“流于high level”。

我也碰到过面试官要求把API的实现层面的sql  query写出来的那种系统设计,我感觉这种面试又是另一个极端,过于low level,变成了半个coding轮。。。

我觉得面试的时候首先就是要搞清楚面试官想要的是哪个level的design,狗家内部就有些convention,不知道是不是普遍存在的,一般的产品/service的design就定义为general design,或者product design,里面的核心确实是API,schema,各种use case,compliance,security,wipeout这些乱七八糟的都要面面俱到,基本是SWE去review;
而如果上升到比较high level,也就是系统架构的层面,甚至要考虑CAP这些了,就会定义成system design,那就是SWE+SRE都要review,其实一般都难见到这种design review。



评分

参与人数 1大米 +1 收起 理由
三十又二要出国 + 1 给你点个赞!

查看全部评分

回复

使用道具 举报

🔗
brtt13 2021-11-7 08:47:58 来自APP | 只看该作者
全局:
architect 发表于 2021-11-06 12:58:28
亚麻的staff level engineer
最近新增了这个职位么……亚麻只有senior和pe,普遍都认为pe高于其他厂staff
回复

使用道具 举报

🔗
追寻 2021-11-7 10:09:54 | 只看该作者
全局:
应该说本来就有不同类型的系统设计吧,举个例子LZ说的设计twitter和设计一个message queue这应该就不会是在同一个abstraction level设计了, 在message queue设计里面你肯定不会纠结什么api里面传啥参数了。
回复

使用道具 举报

全局:
Mark mark
回复

使用道具 举报

🔗
jsjqm 2021-11-7 10:49:59 | 只看该作者
全局:
马一个之后来看
回复

使用道具 举报

🔗
AlvinUp 2021-11-7 11:06:19 | 只看该作者
全局:
也不是每个SWE都是搞数据库的,感觉这样的面试还是太focus on low level implementation了。

属于做过的就知道,没做过一下子也很难答到点上。

如果人家不是来面试这方面的,这样拒了对方是不是不太make sense? 也体现了面试者本身水平(除了对自己的那块熟练)。

如果是专门的组招当然就没有问题。
回复

使用道具 举报

🔗
bambu 2021-11-7 11:07:59 | 只看该作者
全局:
ymsfd007 发表于 2021-11-6 20:25
多数厂都是楼主说的这种考察方式,但面infra的话就不太一样了,很多infra的面试官不喜欢candidate纠结于API ...

我感觉俄罗斯大哥的视频之所以是high level,是因为他的那几个视频都是很general的 platform,什么 rate limiter, topK,notification。 他估计要是设计一个 twitter,应该也能搞出来 api, schema。  但是显然第一种系统的设计更加的困难一些。
回复

使用道具 举报

🔗
lulunini 2021-11-7 11:10:37 | 只看该作者
全局:
其实系统设计这种东西跟经验相关。有经验的人真的满脑子都是主意。不是生搬硬套书上的理论或者模板,而是自然而然水到渠成。工作中解决问题与看书相辅相成,日积月累。有些人为了跳槽升级别,把面试当作考试,硬看书套模板,即使面上了之后在工作中也会被吊打,很痛苦的。。。
另外很同意前面说的,面试过程中面试官需要的点可能各不相同,有人喜欢high level,有人喜欢细节,有人可能对某一块比较了解就更加侧重问这方面。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表