📜  SDE-1 的 Citrix 面试体验(校园)

📅  最后修改于: 2021-11-18 01:02:55             🧑  作者: Mango

第 1 轮(在线测试): Citrix 访问了我们的校园,担任只对 ME 学生开放的软件工程师职位。

有 2 个编码问题和 40 个 MCQ:

  • 其中之一是基于图形的问题,即寻找可通过某条路径到达且距离最多为“K”的城市数量最少的城市。
  • 另一个是关于 DP 的中级问题。
  • MCQ 是中等难度的。

这一轮有 13 人从大约 40 人中脱颖而出。解决一个编码问题和相当数量的 MCQ 就足以让我们进入下一轮。

第二轮(技术面试):我被要求自我介绍。面试官挑了一个他喜欢的项目,让我解释一下。这是一个基于网络的项目(关于负载平衡),我详细解释了它。然后他谈到了我最擅长的科目,我说了数据结构和算法。所以他立即开始了编码问题。

问的问题是:

  1. https://www.geeksforgeeks.org/non-repeating-element/
  2. 然后我被要求设计一个具有以下 3 个功能的音乐播放器:
    1. 从播放列表中随机播放一首歌曲。
    2. 确保一旦选择了一首歌曲,就不会再次选择它。
    3. 将新歌曲添加到播放列表。

    我无法实现第二个功能(尽管后来他解释了该方法时,我意识到这真的很容易)。

  3. 本轮最后一道题是打印二叉树的左视图。 https://www.geeksforgeeks.org/print-left-view-binary-tree/

8人入围下一轮。

第三轮(技术面试):这一轮直接从一个编码问题开始。问的问题是:

  1. https://www.geeksforgeeks.org/toggling-k-th-bit-number/
  2. 有 n 个内核,为请求端口的内核分配一个随机端口(最初可用的 65535 个端口中)。
  3. 第三题是关于Hashing and Sliding Window的中级题。当我运行测试时,我的代码在某些测试用例中失败了,但是,即使是面试官也不确定它在哪里失败。

7人入围下一轮。

Round 4(Technical + Managerial):这又是从互相介绍开始,然后我被问到一个设计问题。

  • 我被要求设计一个 URL 缩短服务。这个讨论持续了大约 45 分钟。
  • 我被问到一些基本的操作系统问题,比如“什么是颠簸?”。
  • 给定排序算法的可执行文件,您将如何估计每个代码所需的时间复杂度。假设它们都是某种排序算法的正确实现,即都产生了正确的输出。

最后,我被问到了一些行为问题,例如:

  • 告诉我你在团队中遇到一些挑战的经历,以及你是如何解决的。
  • 告诉我你在做一个项目时与任何团队成员有一些意见分歧的时间,以及你是如何解决的。
  • 最后,他问我有没有什么问题要问他们,我的采访就这样结束了。

3个人拿到了最终offer,可惜我不是其中之一。