最近几个面试system design的感受

avatar地里匿名用户OXEXH
7670
20
最近跳槽,前期的几个面试已经面完了,说说感受,请大家提供点建议。
挂掉的几家,透过反馈和自己感觉,基本都是挂了design轮,感觉这玩意有点玄学,能不能聊一块很重要。

我本身是做后台和infra为主,design的时候有个偏好就是喜欢把重点放在scalability上,这也是我过去几年主要做的事情,也算是最能展现我能力的部分。
但过去的几轮面试我发现绝大多数厂根本不care这个层面的东西,多数面试官要的就只是走得通且足够详细的API+schema+service层面的design,scalability部分只算加分项,甚至出现过对方不懂的情况。。。
比如面试某做社交的养老厂,面试官应该是组里的老TL,居然分不清sharding/partitioning和horizontal scaling,我当时就觉得这天没法聊了,鸡同鸭讲的感觉,结果设计个系统他让我不要考虑数据等后台的东西,感情就只是个API design。。。

不过话说回来,面试官也是在找他们要的signal,所以开场的时候最好问清楚对方想要的侧重点和时间分配,以免出现重大gap。
当然了,如果domain/expertise完全不匹配,也是个互相筛选的过程了。

如果general hire,碰到infra组面试官概率不高。 唯一一次碰到,那是真专家,只聊数据库,根本不聊API层的东西,从单个数据库B-tree,LSM-tree等选择和实现,聊到分布式数据库的consensus algorithm等等,backend hardcore。。。

补充内容 (2021-10-18 02:28 +8:00):
反思一下,以前自己面别人的system design,应该没少被candidate暗地里骂,我当面试官时候总是把scalability当做题眼,而不重视别人做的API/schema design.......
  • 80
20条回复