第 1 轮(HackerRank 在线测试):它由 15 个 MCQ 和一个编码问题组成。 MCQ 基于 DSA、DBMS、OS。
编码问题:计算给定总和的不同对:https://www.geeksforgeeks.org/count-distinct-pairs-with-given-sum/
第二轮(技术轮 – 1):面试官非常友好。面试以简短的自我介绍开始,然后是对我的项目认证/专业化的深入讨论。然后面试官让我打开一个IDE并编写以下代码:
- 给定数字的最近(最小绝对差)回文:https://www.geeksforgeeks.org/closest-palindrome-number-whose-absolute-difference-min/
- 最长回文子串(具有恒定的额外空间):https://www.geeksforgeeks.org/longest-palindromic-substring-set-2/
- 二叉树的顶视图:https://www.geeksforgeeks.org/print-nodes-top-view-binary-tree/
接下来是一些关于 XML、XSLT、XSD 的问题。采访以 SQL 中的过程、游标、触发器和一些基本的 OOP 概念的问题结束。
第三轮(技术轮-2):面试从我的自我介绍开始,然后是对我的全栈项目的深入解释,包括数据流、数据库架构、类图、ER图。然后面试官分享了一个协作链接,我必须在其中编写以下代码:
- 排序数组中元素的第一个和最后一个索引:https://www.geeksforgeeks.org/find-first-and-last-positions-of-an-element-in-a-sorted-array/
- 埃拉托色尼筛网:https://www.geeksforgeeks.org/sieve-of-eratosthenes/。跟进:将时间复杂度从 O(Nlog(log(N)) 提高到 O(N):https://www.geeksforgeeks.org/sieve-eratosthenes-0n-time-complexity/
- 通配符模式匹配:https://www.geeksforgeeks.org/wildcard-pattern-matching/
第 4 轮(招聘经理轮):面试从我简历上的问题开始。接下来是一个系统设计问题:
LinkedIn 系统设计,具有以下内容:
- 功能性和非功能性需求。
- 带宽估计。
- 详细的组件设计。
- 数据库架构、数据流、API 调用、负载平衡。
- 实现诸如获取建议的连接、用户源等功能(具有适当类的代码以及数据库连接)。
- 性能:缓存。
- 可扩展性、安全性。
其次是:
- 异常处理,多线程。
- 项目中面临的挑战以及如何解决。
- 是什么使项目与现有项目和未来范围不同。
- 短期和长期目标。
判决:选择