📜  Citrix 研发工程师面试体验(校内)

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

Citrix 研发工程师面试体验(校内)

GeeksforGeeks 的面试经历对我来说是一个福音,同时我也在为我的校园实习做准备。非常感谢,现在我被安排在班加罗尔的 Citrix R&D。我想为什么不帮助别人用我的面试经验。所以在这里,我为其他使用 GeeksforGeeks 进行准备的有抱负的学生记下了我的面试经历。

Citrix R&D, Bangalore 于 8 月 28至 29访问了我们的园区。整个选拔过程包括在线测试和 3 轮 F2F(虚拟)面试。该公司使该流程符合 CS、IT、CC、EC、EE 分支机构的条件。大约 350 人申请了在线测试。

第 1 轮(在线测试):在线测试在 Hackerrank 上进行。总时长为2小时。有 2 个编码问题

编码问题:

  1. 给定一个包含移动成本的长度为 n 的数组。起始位置是索引 0。您可以采取一步或以 3 结尾的素数步。任务是计算最大得分(成本加法)以达到最后 (n-1)索引。
  2. 给定一个正整数数组(可能包含重复),任务是找到乘积等于给定数 t 的三元组的数量。

40 道 MCQ: MCQ 来自流行的 CS 学科,如数据库系统、计算机网络、操作系统、数字电子学的理论概念、基本能力和 C 编程输出。

29人入围面试。

第 2 轮(技术):面试官在 Citrix 有 10 年的工作经验。面试是在codepair(Hackerrank)上进行的。总时长为 45-50 分钟。这些问题涉及操作系统概念,如抖动、多线程和进程调度。然后提出了一个需要通过 6 个测试用例的编程问题。

  1. 它们是 3 个输入,a-AP 的第一个元素,d-AP 的共同差,n-AP 系列的第 n质数。我被要求返回算术级数的第 n素数。如果 a 和 d 的值不是互质的,则必须返回 0。相当简单,但我被要求进一步降低代码的时间复杂度。

然后问了一些与我的项目相关的基于简历的问题。在我编码时,面试官询问了我的兴趣和我所知道的技术。

20人入围第二轮。

第 2 轮(技术):这一轮更多地面向 CS 科目,在代码对上进行。本轮比赛总时长为2小时。提出的问题是:

  1. 通过现实生活中的例子来解释死锁
  2. 解释在这种情况下如何防止死锁
  3. 解释如何避免死锁
  4. 过程中上下文切换的概念是什么?
  5. 什么是系统调用?
  6. fork() 和 exec() 调用有何不同?
  7. 客户端和服务器进程如何在分布式系统中通信?
  8. 在分布式系统中拥有父进程和子进程的重要性是什么?
  9. 上下文切换期间的进程存储在哪里?
  10. 什么是虚拟内存?它的大小是多少?
  11. 解释分页概念。
  12. 有哪些不同的缺页算法?
  13. 命名 OSI 模型的所有层。
  14. 表示层的工作是什么?
  15. 网络中有哪些不同的编码技术?
  16. 什么是路由器?它们在哪一层使用?
  17. 路由器、网桥和交换机有何不同?
  18. DBS 中有哪些不同类型的联接?
  19. 什么是标准化?
  20. 解释归一化的所有条件。

他问我关于重载的概念。我被要求为给定函数以实现重载。类型转换如何工作?什么是压倒一切的?编写一些示例并进行解释。

讨论结束后,面试官问了我一个谜题,100 Doors Puzzle,这个讨论持续了大约 30 分钟。然后是一些问题,比如我的高等教育计划以及我在公司中适合担任什么角色。

12人入围第三轮。

第 3 轮(管理):这是公司的网络工程师在代码对上进行的最后一轮。回合的总时长为 30 分钟。

  • 我被要求解释我最近的项目。为什么我选择flutter而不是Java/Kotlin 来开发应用程序?该应用程序的目标受众是什么?应用程序可以缩放吗?
  • 然后他问我日常生活中使用的所有应用程序都有哪些。他让我指出那些应用程序中的一些缺陷,比如 Whatsapp、Facebook 等。
  • 然后我被要求用 C++、 Python给自己打分。他问我除了课程之外我知道的所有技术。
  • 然后他让我用栈来实现一个队列数据结构。有人询问该方法,他指出时间复杂度很高。因此,我被要求对其进行优化,最后对其进行编码。然后他问我前几轮的经验。

结果: 4名学生被选中获得全职员工+实习offer,3名学生被选中获得实习offer。我获得了 FTE+实习。