AthenaHealth 面试经历 |校园虚拟2020
学院:班加罗尔 MS Ramaiah 理工学院
日期: 2020 年 8 月 26 日和 2020 年 8 月 27 日
Athena Health 是一家总部位于美国的 IT 公司,其愿景是创建一个蓬勃发展的生态系统,为所有人提供可访问、高质量和可持续的医疗保健。公司携星级礼包来我院考察,并为我校指定技术人员副职进行发展。共有 433 名学生报名参加了此次校园招聘活动。
只有最后一年的本科生被允许参加这次驾驶。
入职前谈话:与其他招聘活动一样,Athena health 也进行了虚拟入职前谈话,主要关注职位描述、公司成本、工作文化和公司愿景。
第 1 轮(MCQ 和编码):这一轮在 HackerRank 上举行,这一轮的持续时间为 90 分钟。 First question: 50 marks Second Question: 75 marks10 Multiple Choice Questions 2 Coding Questions Total Marks 5 marks Each = (5×10) = 50 (5×10) + 50 + 75 Topics: OS, DBMS, Pseudo Code Output, Data Structure, and Algorithms Topics: Data Structures and Algorithms Total: 175 marks
编码问题:
第一个 50 分的编码问题是一个简单级别的问题,可以使用多种方式解决,但由于时间复杂度限制,需要以最大 0(n) 的时间复杂度解决这个问题,才能通过所有测试用例。
每天的股票成本在大小为 N 的数组 A[] 中给出。找出你买卖股票的所有日子,以便在这些日子之间你的利润最大。
例子:
Input: A[] = {100, 180, 260, 310, 40 ,535, 695} Output: 865 Explanation: We can buy stock on day 0, and sell it on day 3 and again buying on day 4 and sell it on day 6, which will give us maximum profit.
75分的第二个编码问题也有几种解决问题的方法,但我使用散列数据结构解决了它。
给定两个大小为 N 的未排序数组 A 和大小为 M 的不同元素的 B,任务是从两个数组中找到总和等于 X 的所有对,并输出所有不同对的计数。
例子:
Input: N=5 M=5 X=9 A[] = {1, 2, 4, 5, 7} B[]={5, 6, 3, 4, 8} Output: 3 Explanation: (1, 8), (4, 5), (5, 4) are the pairs which sum to 9.
433名学生中约有50名学生入围下一轮。
第 2 轮(技术面试):在第一轮之后,所有入围的候选人都会在他们的注册电子邮件中收到一个代码对会议链接。由于 COVID-19 大流行,面试是虚拟的,是在专门为虚拟面试设计的 HackerRank 代码对平台上进行的。我的面试是在第一批面试中,因为他们会根据学生的姓名按字母顺序给学生打电话。
面试官很友好,让我做自我介绍,问了我一些简历相关的问题,直接进入了技术方面,他问的一些问题是:
- 数据库事务是什么意思,什么是 ACID 属性?我解释了
- 您喜欢哪种编程语言,为什么?我告诉Java
- 为什么你喜欢Java而不是 C/C++?我说是因为我不喜欢指针的概念,在Java中,我们不使用指针,而是在Java中使用对象,我发现自己对对象更满意。
- 对象如何去掉指针的概念?我讲述了有关这些物品的一切并正确解释。
- Java中的抽象类和接口有什么区别?
- 解释动态分配内存时会出现外部和内部碎片吗?
在这之后,他给了我一个有竞争力的编程问题,并让我解决它。
他问了我在编码回合中提出的相同的 75 分问题,但做了一些小的改动,并要求我解释算法并编写最优化的解决方案。
由于 codepair 平台包含一个白板和Java编辑器,我在示例的帮助下口头解释了算法,并在编辑器上编写了相同的代码,幸运的是,它工作并通过了他提供的所有随机输入测试用例。
考虑一个字符串S 和文本 T。输出字符串S 中具有文本 T 的所有字符的最小窗口。字符串S 和文本 T 都包含小写英文字母。
示例:是给定字符串S 中包含 T 的每个字符的最小子字符串。 (ahte nahealt h)
Input: S = athenahealth T=nlt Output:"nahealt"
PS:这个问题我已经解决过不止一次了,因为它是一个标准的哈希问题,所以我也非常自信和兴奋🙂
我告诉他可以有两种方法来解决这个问题,第一种是使用两个 for 循环遍历 S 和 T 并同时检查这将花费 0(n2) 时间复杂度,所以我想使用更有效的方法我猜散列数据结构需要 0(nlogn) 时间复杂度。
他让我在白板上解释算法,我一解释算法,他就做了一些小改动,比如在 T 中添加重复字符,然后询问我的方法和代码。
幸运的是,我的代码是正确的,它适用于他提供的随机输入。 (面试官非常友好,在我输入代码时帮助我)。
之后,他想检查我的逻辑推理并给了我一个数学系列,并要求我在使用Java的编辑器上找到一般的数学模式和代码。
当我在编码时,他问我,在Java中为什么我们将 main函数写为
public static void main(String args[])
然后他问我“你有什么问题吗?” ,我问了他一些关于 Athenahealth 的问题,工作描述和我应该做的事情,他非常合作,对所有问题都给予了非常积极的答复。
注意:面试官总是关注被面试者解决问题的方法,他们也会给出提示并帮助你用适当的算法解决问题,只是不要假装面试,不要找借口。
21:00 左右,所有入围的学生都在他们注册的电子邮件中获得了 Microsoft Team 会议链接,以进行第二天进行的管理轮。他们为管理轮筛选了大约 15 名学生。
第三轮(管理轮):管理轮是为了使招聘人员的决定更加严格和完善,所有进入这一轮的学生都是有能力和适合职位的。这一轮,面试官可能会给你一些反馈。我的这一轮从标准的面试问题“告诉我关于你自己”开始?
这是 IT 新人自信地回答这个问题并给面试官留下良好印象的基本格式。 (也可以在此答案中提及他们的 CGPA,但这取决于个人选择)
继续前进,他检查了我在简历中提到的项目,并要求我解释我的项目
- 客观的
- 使用的技术和库。
- 面临的挑战。
- 纠正和解决这些挑战。
- 该项目的成果和该项目的未来努力。
- 我团队中的一些成员以及我对该项目的贡献。
- 在这个大流行期间,我们所有人都在家工作,我们是如何设法作为一个团队为这个项目工作的?
在我解释上述几点时,他问了我一些与数据库和项目之间的连接相关的正常技术问题。
之后,他又翻了我的简历,问了我关于我们学院创业发展中心(E-cell)的问题,因为我是俱乐部的核心成员,他还问了关于我们所做的工作,我们组织的活动以及如何我们是否作为一个团队工作,然后他给了我一个与管理、团队合作有关的情况,并问我在那种情况下我会做什么。
然后他问我“你有什么问题吗”?
我问了他一些关于 Athena health 的产品和用于制造这些产品的技术的问题,我还问了他关于工作角色的问题,还对 Athenahealth 的产品提出了一个建议。他以非常礼貌和积极的方式回复了所有答案,并为我的项目提供了反馈。
在管理轮中,他们也向我的一些朋友提出了难题,但幸运的是,他没有向我提出任何难题🙂
注意:在进行这一轮之前,请先了解您的项目及其所有技术方面,您应该了解他们在简历中提到的所有内容,因为面试官可以提出任何问题,但不能超出您的简历。
做好充分准备,以自信和微笑进行沟通。
在我的管理回合大约 35 分钟后,我的电子邮件中又收到了一个人力资源回合的 Microsoft 团队会议链接。
第 4 轮(人力资源回合):每家公司都会进行人力资源回合,以判断你的性格、行为、弱点、优势、背景、处理角色的能力,并确保你适合这份工作。人力资源轮通常是公司招聘过程中的最后一轮。
我的这一轮以“您对 Athenahealth 及其工作方式了解多少?”这个问题开始。
我从公司的愿景开始,然后提到了它的一些产品,并讲述了我所知道的关于公司的一切。
之后,她又看了我的简历,问了很多关于我的学历、家庭、证书、实习、课外活动、技能等方面的问题。
HR问我的一些最重要的问题是:
- 你有更高的学习计划吗?
- 你有什么工作地点偏好吗?
- 你的长期计划是什么?
- 我们为什么应该录用你?
等等。
之后,她向我解释了有关 CTC 解体、公司福利和津贴、我的工作角色描述以及他们正在研究的技术的一切。她还谈到了 AthenaHealth 未来的机会和工作文化。
然后她问我“你有什么问题吗”?
我问了一些与公司在 COVID-19 大流行期间所面临的工作文化和挑战有关的问题。
她非常友善和专业,对我的所有问题都给予了非常积极的回应。
笔记:
- 在进行 HR 面试之前,应始终浏览公司的网站或 LinkedIn 帐户,并应收集有关公司愿景、工作、产品等的信息。
- 一个人应该在参加这一轮之前总是做好准备,并且应该为他给出的每一个答案都有一个合理的理由/故事。
最终入选学生公告:平台为微软团队。 19:00左右,所有最终入选的学生都收到了微软团队会议链接。他们选择了 6 名学生,我就是其中之一 :-))。
会议很专业,招聘团队满满当当,恭喜所有入选的学生。气氛非常愉快,环境友好。总的来说,这是一次非常愉快的经历,事情进展得非常顺利和准时。
重要的提示:
- 一个人应该在安置季节开始之前开始为安置做准备,如果他们的目标是进入任何 IT 巨头,则应该主要关注竞争性编程、数据结构和算法。
- 人们应该经常复习 DBMS、操作系统、计算机网络和 OOPS 等技术主题的概念。
- 应该练习基本的能力和逻辑推理。
- 可以在 GeeksforGeeks practice、InterviewBit、HackerRank 等平台上练习竞技编程。
- 永远保持自信,相信自己。
祝您未来的努力和愉快的编码一切顺利。