📜  Media.net (Directi) 面试经历 |在校园

📅  最后修改于: 2022-05-13 01:58:12.435000             🧑  作者: Mango

Media.net (Directi) 面试经历 |在校园


Media.net 来到我们的校园担任站点可靠性工程师角色。选择过程有 MCQ 轮,然后是编码轮,2 次技术面试,最后是 HR 轮。

成功的关键:良好的系统设计知识和一点计算机安全知识。还需要对 CN、OS 和 DSA 有深入的了解。此外,套接字编程是必须的,而基本的 linux 命令知识是一个加分项(可选)。

第 1 轮:多选题(45 分钟)
第一轮入围有 45 个 MCQ 问题,需要在 45 分钟内完成。这些问题来自各种主题,例如:CN、操作系统、Linux 命令、数据结构和算法以及 DBMS。错误答案没有负面标记。根据分数,从大约 230 名学生中选出前 50 名进入下一轮。

第 2 轮:编码轮(约 2 小时)
这一轮主要需要 Socket 编程,解决方案可以用 C、C++、 Java或Python编写。我们需要为下面提到的问题编写服务器端代码。然后,我们评估人员使用“telnet”作为客户端向服务器查询来测试我们的代码。
1. 编写从客户端接收字符串“ping”并以“pong”作为响应的服务器代码。
2. 编写服务器代码读取指定文件(由客户端指定),并将其内容在缓冲区中一一发送给客户端。
3. 现在如果在指定文件中添加了一些内容,那么新的内容应该会自动发送到客户端。
4. 额外问题:仅将那些包含指定子字符串的行发送给客户端。

这一轮之后,只有15名学生被选中进行下一轮技术面试。

第 3 轮:技术面试 1(约 20 分钟)
面试从面试官的快速介绍开始,然后他问了我的介绍。
然后我们就简历中提到的项目进行了讨论。面试官详细询问了我的GSoC项目。然后很少有后续问题。

然后面试官问了我对编码轮最后一个问题的处理方法。现在面试转向CS基础。面试官问了我最喜欢的科目以及原因。我回答操作系统。然后他问了与操作系统相关的基本问题,例如:进程和线程、并发性和并行性、多道程序、死锁及其避免、虚拟内存等。他的目的是测试我对操作系统基本概念的了解。

然后他转向计算机网络。他问——在 OSI 模型中有不同层的需要是什么? OSI 层中使用的不同功能和协议。 TCP和UDP之间的区别。 3 次握手以及为什么 2 次握手在现实中不起作用。然后他询问了路由协议。

最后面试官问了几个关于linux命令的问题。我记得其中之一是:软链接和硬链接之间的区别。我无法回答任何与 linux 相关的问题。他说,没关系。他们是奖金问题。
最后,他询问了负载均衡器。这一轮过后,15名学生中只有8名被选中。

第 4 轮:技术面试 2(约 70 分钟)
再次,采访以快速介绍开始。面试官对我的 GSoC 项目非常好奇,以至于他在项目网站上看到了我的项目、我的 Github 个人资料以及我在 GSoC 期间对组织的贡献。他对我的项目印象深刻。

然后他开始就 OS、DBMS、CN 和 Linux 命令提出非常详细的问题。但这一轮的主要焦点是系统设计。我被赋予了不同的场景,在这些场景中,我需要根据我之前的系统设计知识提出高效且可扩展的解决方案。我的答案是基于负载平衡概念、数据库分片、备份服务器等。必须对所有这些概念有详细的了解。面试官问我负载均衡器是如何工作的。然后我收到了许多后续问题,例如:哪个哈希函数最适合在负载均衡器中使用。如果系统中的负载均衡器本身发生故障怎么办。如果很少有服务器停止向客户端发送响应等怎么办?

他们的重点还在于计算机安全。他询问了中间人攻击和不同的情况,以及我该如何克服它们。最后,他问我——你是否知道服务器通常会在 1 毫秒内响应,但现在它会在 3 秒内响应。有哪些不同的可能性可能导致服务器端出现这种延迟?我还被要求提出问题的快速解决方案。

经过这一轮,8名学生中选出了6名。

第 5 轮
虽然 HR 说这将是一个技术轮,因为它将由 DevOps 团队的主管负责,但它更多的是 HR 轮。面试官问了几个关于我的简历的基本疑问,他看不懂。比如:我们大学实验室的助教(TA),因为我是两个大三学生实验室的助教。这一轮主要是文化适应轮。面试官试图评估我是否真的对 DevOps 以及他们在 Media.net 所做的工作感兴趣。他问了几个关于 SRE 角色的问题。我对这个角色有什么期望?为什么我对这个角色特别感兴趣,而不是适当的软件开发?然后他详细解释了他们作为 SRE 的工作。

在这一轮之后,所有 6 名学生都被选中在 Media.net 实习(6 个月)和全职工作。幸运的是,我是其中之一! 🙂