📜  SE-1 的 Zynga 面试体验(有经验)

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

SE-1 的 Zynga 面试体验(有经验)

采访在班加罗尔工作室进行。

超过 1 年的经验。

有 3 轮技术 F2F 轮次,所有轮次都是白登轮轮,其中将编写生产就绪代码(如果被要求)。

第 1 轮:1 小时

本轮共有 3 个问题:

  1. 解析并检查 IP 地址列表是否为有效地址 – https://www.geeksforgeeks.org/program-to-validate-an-ip-address/
  2. 将罗马数字转换为十进制 - https://www.geeksforgeeks.org/converting-roman-numerals-decimal-lying-1-3999/
  3. 扫雷游戏设计和代码——更多关于不同组件以及如何编写代码——可以使用 DFS/BFS 等图形算法来解决。

除上述问题外,深入讨论Java和 C++ 中的 Maps。地图如何处理碰撞——线性探测和链接概念。哈希函数是如何实现的。

讨论以前的工作经验和使用的技术。

第 2 轮:1 小时

  1. 详细讨论 OS 中的并发性——信号量、互斥锁、线程——二进制信号量与计数信号量。
  2. 讨论垃圾收集和线程等Java概念。垃圾收集器如何删除未使用的引用?
  3. 什么是 C++ 中的智能指针。
  4. 进一步讨论 Maps 和Java中不同类型的地图实现(TreeMap、Linked Hash Map 等)
  5. 设计和编码聊天 UI 如何处理有界屏幕(Whatsapp、Facebook 聊天屏幕)中的传入消息流。关于android UI的一些想法帮助我解决了这个问题。我使用 LinkedLists 和 RecyclerView(Android 概念)给出了一个解决方案。面试官对解决方案并不完全满意。关于 UI 上的滚动速度、手势控制等内容的讨论。

第 3 轮:招聘经理轮 – 1.5 小时

  1. 讨论以前的工作经验和所从事的技术。
  2. 关于树的问题 - https://www.geeksforgeeks.org/print-level-order-traversal-line-line/
  3. https://www.geeksforgeeks.org/zigzag-tree-traversal/ - 上述问题的变体。
  4. https://www.geeksforgeeks.org/given-a-sequence-of-words-print-all-anagrams-together/ - 首选使用哈希图和排序的解决方案。
  5. 关于地图和碰撞的讨论。
  6. 面试官让我粗略地画出我在以前的公司工作的应用程序的架构。他问我使用的技术和架构中每个组件的作用。
  7. 简要讨论 TCP 与 UDP。 TCP/IP 模型中的不同层以及每层负责的内容。
  8. 讨论以前的项目。
  9. 为什么我想加入 Zynga 以及对公司的期望。

我最终被选中并接受了这个提议。

面试体验真的很棒,面试官非常友好和乐于助人。