📜  CodeNation 面试经历

📅  最后修改于: 2021-11-21 06:09:37             🧑  作者: Mango

我与 CodeAgon 一起被列入了 CodeNation 讨论列表——他们的编辑竞赛。我的位置在前 200 名之列,我真的没想到会被选中。

一共4轮面试。在所有这些周期之后,我比以往任何时候都更有信心,我不会有资格参加下一个。所以,我从来没有费心准备任何面试,但我很幸运地每一轮都打破了:

TL; DR:两轮是基于对之前项目的问题解决和讨论,另外两轮专注于设计软件/系统/库。除了第一个周期,每个周期大约需要一个小时。审讯者向我保证,我理解这些问题,并让我通过一些调整来思考同一问题的解决方案。

关于面试的更多细节:承诺自己,这将是一个很长的答案。我希望你能从中得到一些有用的东西!

第0轮(调试):时间:25分钟

  1. 与我共享的共享 URL,该 URL 具有我必须处理的 C++函数。提供了预期的投入和产出。

问题是使用稳健的系统确定线内回文层的数量。给定的任务有一些我必须纠正的逻辑和简洁的错误。更正错误后,我解释了面试官的更正,并没有给出很好的答案,所以我对谈话的进展持怀疑态度。

第 1 轮(算法题):时间:60 分钟

这应该是我经历过的最好的谈话之一。

  1. 受访者花了 15-20 分钟讨论了我的实习项目和我对计算机科学的兴趣。
  2. 接下来,他给了我一个算法问题要解决。好久没接触竞技类节目了,有点生锈了。我花了大约 8-10 分钟才找到解决方案。与受访者确认解决方案后,我将其应用到C++中,确保使用不同的合适词并处理角落中的案例。

一度,我有放弃这个问题的危险,认为没有更好的解决方案,但和我说话的人强迫我重新思考,最后

我看到了一个快速的解决方案。我真正了解到不放弃这次讨论的重要性。

第 2 轮(循环设计问题):时间:60 分钟

我打算跳过这次谈话,因为我认为我已经受够了这个过程,清理一些回合不是我的菜。

然而,我父亲敦促我尝试。

这是整个过程中最困难的一个循环。面试官似乎很有经验,问了几个问题,让我问了我4年的计算机科学研究。

  1. 我被要求设计文本编辑器 API,例如记事本,具有一些基本功能,例如添加字母、删除字符、复制文本块、剪切文本块等。我必须决定我可以明智地使用哪些数据结构。我还不得不写一个伪造的作品代码。

我的审讯者一直在询问我所做的各种设计决定。所有的决定都以某种方式扰乱了另一个项目的工作,我正在进一步改进我的解决方案。

面试结束时,我被问到我在大学的平均成绩(大约 65% – 使用 85% + 分的卡通片)。跟我说话的人告诉我,“仅仅解决 GeeksforGeeks 的算法问题是不够的。软件工程远比这些问题复杂。 ”

在我的脑海中,我在想,“我没有为这一轮做准备!”

我知道一切都结束了,我必须加入制造自动取款机的公司。我很高兴我打破了 2 轮。

一周过去了,有一天我收到了注册服务商寄来的一封邮件,说我有资格参加下一轮。我还检查了我的电子邮件,看看它是否真的适合我。它是。

下一轮将在两天后进行。

第 3 轮(设计问题):时间:45-50 分钟

我只是想和面试官好好谈谈,就像我和我的朋友一样——关于我们如何发明一些东西,有时指出我自己设计中的缺陷并尝试修复它,增加更多机会,并尝试设计和思考在箱子外面。

  1. 这个周期的第一个问题是在几种文本编辑器语言中创建文本突出显示功能。
  2. 下一个问题是为文本编辑器创建查找和替换功能。

此时,我已经在想 CodeNation 创建了文本编辑器。

以上两个问题都很有吸引力。我所知道的所有与电缆相关的算法都在我的脑海中盘旋,我试图平衡事情,包括困难和决定我的面试官的解决方案。

我的受访者还讨论了我是否会以不同的方式使用 C 的 malloc,以及我将如何改变。

在这次讨论之后,我在参与那些让我思考、学习和成长的具有挑战性的对话中感到一种奇怪的满足感。

我在 CodeNation 交互方面的体验真的很棒!