天下数据官网 | 加入收藏 | 网站地图 天下数据新闻资讯平台!
免费定制全球大数据安全解决方案
广告 1000x90
您的当前位置:天下数据IDC资讯 > 大数据 > 大数据动向 > 正文

系统设计面些啥?Palantir 面官教你如何准备系统

来源:大数据动向 编辑:天下数据 时间:2017-06-21

大数据

翻译:九章算法

Palantir主要考察三方面的系统设计能力

我们面试时,我们希望看到面试者表现出基本的系统知识,同时了解一些设计的技巧。这与算法面试和程序面试有什么不同呢,那就是,我们在整个过程中,其实主要看中的是你思考论述的过程,而不是你最后提出的解决方案(当然如果你提出的解决方案实在太挫……)。

也就是说,系统设计面试最重要的一点是“沟通”(communication)。

这也正体现了Palantir的企业文化。在Palantir,工程师们有着充分的自由。Palantir不会要求工程师一下子就开发出非常完美的功能。相反地,我们的工程师对于这些开放性问题有着充分的自主权。而且,我们的工作就是各自去为这些问题提出最佳的解决方案我们希望寻找的是那些我们可以完全信任的人。这样,他们自己就可以做出非常棒的方案,而不需要我们的监管。也就是说,我们需要的工程师,是那些可以管理一个很大项目,同时保持项目持续朝正确方向发展的人。这意味着,你必须可以高效地与身边的同时进行沟通。因为“闭门造车”在我们的大规模项目中是不可能的。

开放式面试

通常,我们会先让你按给定的题目设计一个系统。面试官给你的提示往往很简单 ——但你千万不要太天真,这些题目往往都是“深不可测”的,面试官们想要看的是在45分钟内,你可以解决掉多少问题。

大多数时候,我们会把握谈话的方向。不过你可以按照自己的理解去解答面试题。

也就是说,你可以提问、在白板上画示意图,甚至可以激发出面官的想法。这道问题的限制条件是什么?系统设计时需要什么输入?这些都是你在展开思考时所需要先向面试官澄清的。一定要记住,现实生活中的问题,都不是只有一个答案的哦。任何事情都是一个博弈。

考察内容

系统是非常复杂的。当你在设计一个系统时,你必须直面所有的复杂性。基于这一点,你必须熟知以下内容:

  • 并发性(concurrency)。你知道线程(threads)、死锁(deadlock)和starvation吗?你知道如何并行化算法吗?你了解一致性(consistency)和连贯性(coherence)吗?你大概了解IPC和TCP/IP吗?你知道吞吐量(throughput) 和延迟(latency)的区别吗?
  • 现实表现(real-word performance)。你应当熟悉你电脑的速度和性能,包括RAM、硬盘、SSD以及你的网络状况。

网友评论:

资讯首页 | IT业界 | 网络安全 | 解决方案 | CDN | 云计算 | 大数据 | 虚拟化 | 操作系统 | 电子商务 | 行业报告

《中华人民共和国增值电信业务经营许可证》 ISP证:粤ICP备07026347号-6

深圳市朗玥科技有限公司版权所有

7×24小时服务热线:4006388808 0755-83460248 7×24小时售后支持:0755-83460017

7×24小时销售热线:0755-83460032 83461241              香港服务电话:+852 67031102

深圳总部:中国.深圳市福田区车公庙苍松大厦北座13层 香港总部:香港上環蘇杭街49-51號建安商業大廈7樓

Top