Infosys举办了HackWithInfy ,这是一场面向 2022 年在印度毕业的工程专业学生的编码竞赛。今年2021年5月只进行了一轮编码测试,2021年6月出结果,有机会参加Power Programmer面试。
采访定于 2021 年 7 月 22 日上午 9 点进行,采访时间为一小时。
面试在上午 9:03 加入会议,然后:
采访者:你好 ${myName}
我:先生您好。
采访者:我对你的称呼正确吗?
我:是的,先生。
面试官:所以${myName},面试分为两部分,首先是编码轮,然后是技术讨论。
我: *点点头
采访者:有一个图书馆,卖书,打折……
我:对不起先生打扰了。 我可以写下问题吗?? (我还没准备好,我认为根据我阅读的所有面试经验,面试通常以“自我介绍”或“告诉我你的技能组合”等开始。)
采访者:当然可以,共享您的屏幕并使用任何编辑器
我:共享我的屏幕并使用 VSCode 作为我的编辑器。
采访者:继续提问。 (问题类似于滑动窗口最大值(大小为 k 的所有子数组的最大值) 来自 GFG)。
我:思考(曾经在思考时提到堆)问了几个与问题相关的问题,然后再次思考( 5分钟)。然后给了他时间复杂度为O(n*k)的 Brute Force Solution 。
面试官:编写代码并使用您选择的任何语言。
我:用Python编写代码。
采访者:你为什么不考虑堆的想法?
我:给他理由。
面试官:好的。让我们转到第二个问题。给定一个回文数,找出下一个最小的回文数。
我:告诉他我的方法。
面试官:给了一些测试用例。
我:在这些测试用例上试运行我的方法。
采访者:说说你的一个项目和你遇到的一些困难。
(讨论进行了 7 到 10 分钟)
面试官:你做过任何数据库吗?
我:是的,先生。我曾在 NoSql 数据库 (MongoDb) 上工作过。
面试官:为什么是NoSql??为什么不是传统的 SQL 数据库?
我:告诉他我的要求以及 NoSql 如何解决我的问题。
面试官:给我一些 NoSql 相对于 SQL 的缺点?
我:告诉他缺点(我在回答中提到了规范化)
采访者:正如你所说的规范化。什么是规范化?你能举例说明吗?
我:给他下定义。并通过示例讨论了所有步骤。
采访者:你了解操作系统吗?
我:是的,先生。
采访者:哦,你是一名 CSE 学生,你的学术中有操作系统。我对吗?
我:是的,先生。
采访者:有两个过程(A 和B)。 B 正在读取一个文件,而进程 A 想要访问同一个文件。操作系统将如何处理这种情况?
我:告诉他关于信号量的事情。
面试官:正如你在简历中提到的 NodeJs,请告诉我NodeJs 和Java之间的一些技术差异。
我:(我没有在我的简历与Java和Java中做代码)提到有关社区的NodeJS,NPM。
面试官:(提到Java社区并告诉我Maven)给我一些技术差异。
我:向他提及 NodeJs 如何执行异步操作 Javascript 是单线程的。详细描述事件循环的工作原理。
面试官:你知道 NodeJs 内部是如何工作的。你能给我代码的输出吗?
Javascript
let a = new Promise(resolve => {
console.log(1);
});
a.then(_ => console.log(2));
Javascript
let a = new Promise(resolve => {
console.log(1);
setTimeout(() => {
resolve();
}, 3000);
});
console.log("Hello")
a.then(_ => console.log(2));
我:再想一想
采访者:你就说说你的想法,然后我们再讨论。
我:
1
2
(再次思考)
面试官:运行代码。
VS代码:
1
我:哦。承诺没有得到解决。
采访:现在给我这个输出。
Javascript
let a = new Promise(resolve => {
console.log(1);
setTimeout(() => {
resolve();
}, 3000);
});
console.log("Hello")
a.then(_ => console.log(2));
我:思考
1
Hello
2 (After 3sec)
面试官:运行代码
VS代码:
1
Hello
2 (After 3sec)
采访者:(微笑) 你有任何问题问我吗?
我:询问一些反馈。
面试官:反馈一下。并告诉我了解基本原理和工作原理很好。
(随后是一些其他一般性讨论和一些 HR 问题)然后
采访者:很高兴和你交谈。
我:谢谢你的时间,先生。