📜  耐力国际集团面试体验(校内)

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

耐力国际集团面试体验(校内)

耐力国际集团来到我们的校园进行全职招聘。

职位:软件工程师和运营工程师

它对所有分支机构开放。大约有 450 人参加了面试。

有 1 轮 MCQ,1 轮编码,然后是 3 轮 PI。

第一轮(MCQ):
时间:45分钟
题目:45道选择题
格式:我们必须在一张纸上写下我们的答案,然后将答案上传到他们的网站上
专为测试而设计。

问题来自操作系统、DBMS、网络、DS 和算法、C/C++。这些问题测试了基本概念
计算机科学的,并不太难。

大约有100人进入了第二轮。

第 2 轮(编码轮):

时间:2.5小时
问题:5

我们可以使用我们自己选择的任何 IDE 来使用我们自己的笔记本电脑。没有提供互联网接入。

我们必须使用我们选择的语言(C、C++、 Java、 Python )构建一个简单的文本处理工具
红宝石, PHP等)。为提到的每种语言都提供了文件。

问题是这样的:

给定一个文件contacts.txt:

阿米特,沙阿,+9800123456
普拉米特,辛格,+9801345678
沙利尼,沙阿,+9801341876

解决以下问题:

1. 如果执行“program_name input_file column_no”,将列从输入文件打印。

例如,./awkward contacts.txt 1

输出将是:
阿米特
普拉米特
沙里尼

2. 如果“program_name 字符串 column_no pattern”被执行,仅当模式为
包含在其中。

例如,./awkward contacts.txt 1 mi

输出将是:

阿米特
普拉米特

3.如果执行“program_name input_file column_no ^pattern”或“program_name input_file column_name pattern$”,打印
来自给定列的字符串仅在以下情况下:
a)字符串以给定的模式开始(如果提供了 ^pattern)
b)字符串以给定的模式结尾(如果提供了 pattern$)

例如,./awkward contacts.txt 1 ^Am

输出将是:

阿米特

4. 现在,将给出一个目录名称,而不是 input_file 参数。该程序应处理包含的所有文件
在问题 1 到 3 中所做的目录中。

我们有一个目录“test”和两个文件“contacts.txt”,“newcontacts.txt”里面。

测试/contacts.txt:

阿米特,沙阿,+9800123456
普拉米特,辛格,+9801345678
沙利尼,沙阿,+9801341876

测试/newcontacts.txt:

约翰,多伊,+9800123456
阿曼,维尔玛,+9801345678
沙鲁,辛格,+9801341876

./尴尬的测试 1 ^Sh

输出:

测试/contacts.txt
====================

沙里尼

测试/newcontacts.txt
=====================
沙鲁

5. 现在,对给定目录名称作为参数的子目录中的所有文件执行 1-4。如果没有找到匹配项
在任何给定文件中,确保不要打印与该文件相对应的任何内容。

测试
子目录1
一个.txt
b.txt
子目录2
c.txt
d.txt

命令:./awkward test column_name ^pattern

和模式匹配文件 test/subdir1/a.txt 和 test/subdir2/b.txt

输出:

测试/subdir1/a.txt
===================

一些字符串1
some_string2

测试/subdir2/b.txt
===================

一些字符串1
some_string2

大约有 15 人到达了 PI。

问题主要来自操作系统、DBMS 和网络。还问了我在简历中提到的项目和实习的问题。
问了很多问题。我会尽量添加我能记住的。

第三轮(PI):

.有人问我喜欢计算机科学的什么。
.说明 Linux OS 的整个 Boot 过程。
.什么是内核?说明内核的所有功能。操作系统和内核有什么区别?
.有哪些不同类型的 HTTP 请求? PUT 和 POST 有什么区别?
.电子邮件是如何工作的?提及发送和接收电子邮件的整个过程。
.什么是 SMTP?
.什么是 TCP/IP 和 UDP?它们之间有什么区别?
.什么是 IMAP 和 POP3?它们之间有什么区别?使用 POP3 协议时提到一个序列
会有用的。
.什么是 ARP 和 RARP 协议?
.描述 OSI 层。
.什么是IP地址?什么是 MAC 地址?它们有何不同?
.路由器和交换机有什么区别?
.为什么需要 MAC 地址?
.什么是 DNS?使用哪种协议向 DNS 服务器发出请求?
.即时消息应用程序中使用了哪些类型的协议?为什么?
.我在简历中提到了 3 个项目。我被要求按照我的偏好顺序解释这些项目。他问
我关于与项目相关的主题的问题。我们详细讨论了这些项目以及我在每个项目中的角色
项目。
.什么是标准化?规范化给定的表。
. DBMS 中的索引是什么?
.什么是 DDL 和 DML?
.什么是 git? git fork 和 git merge 的区别。
.有人问我更喜欢哪个角色(软件工程师/运营),为什么?


第 4 轮(PI):

.当我在浏览器地址栏输入 URL 并点击“Enter”时会发生什么?描述整个过程。
.网络服务器如何工作?
. Web 服务器如何知道根据请求获取哪些资源?
.什么是 DNS?操作系统如何知道向哪个 DNS 服务器发出请求?解释 DNS 层次结构。
.解释根 DNS 服务器。
.我被要求解释这些项目。我们再次对它们进行了详细讨论。
.解释电子邮件架构。如果从 yahoo 邮件帐户向 gmail 帐户发送电子邮件,该电子邮件如何
实际上得到发送?
.什么是虚拟内存?它有什么需要?
.如何知道 Linux 中的内存使用情况?
.如何知道 Linux 中各个进程的内存使用情况?
.什么是信号量?
.什么是比赛条件?
.什么是死锁?
. DBMS 中的索引是什么?

第 5 轮(PI):

.关于简历中提到的特定项目的问题。
.设计一个缓存。我不得不问很多问题才能了解设计的具体要求。我们对各种方法进行了详细讨论。讨论了我的设计的优缺点。我被问到关于我选择数据结构的各种问题。就像,在我的一种方法中,我提到了堆。因此,询问了有关堆数据结构中的插入/删除/更新的问题,它如何实现插入/删除的 O(logn)。
.与缓存设计相关的线程和锁的问题。
.如果缓存可通过网络使用,将如何修改设计?

感谢 Geeksforgeeks。

希望对其他有志者有所帮助。 🙂