docs-isharkfly-com/work/interview/2021/2021-aws-interview-with-ope...

3.0 KiB
Raw Permalink Blame History

2021 年一次比较奇葩的 AWS 面试

面试的时间是在 2021年的 11 月左右。从 2021 年开始后 AWS 貌似也不怎么狂发 OA 了,很多时候的面试就直接跳过了 OA 环节进入到白板测试中了。

非常不幸的是第一轮面试就被提示不进入下一轮了。

面试的时间是在 2021年的 11 月。

相关背景

本次面试的原因是有招聘的同事在 Linkedin 上找到我。

做的项目是 OpenSearch https://opensearch.ossez.com/ 项目相关的内容,这个项目主要因为 elasticsearch 版本许可证的问题AWS 不能够再使用 elasticsearch 相关服务和技术了。

因此 AWS 自己开发了一个基于开源的 OpenSearch 项目来替换掉将要过期的 elasticsearch 服务。

第一轮面试相关

第一轮面试是和印度人面试的。

使用的是 AWS 自带的面试视频软件。说心里话,整个面试的过程并不是非常专业,比如说面试到一半对方消失了 10 分钟左右。

对方孩子一直在视频中叫唤等等情况。

面试题目

面试主要问了 2 个题目,同时针对这 2 个问题展开了一些讨论。

大数据情况的用户管理

在大数据情况下的用户管理,主要希望问的是假设你有一个 Google 数量级别的用户,你应该如何设计用户管理和用户数据查询。

个人感觉这个问题我的回答不是非常好,原因非常简单,因为我没有怎么设计过这类的系统,在一般的通用环境下,大部分都会使用 SQL 来解决。

但,我知道这类的设计肯定是不会使用 SQL 来解决的,因为 SQL 达不到这类的效果和访问需求。

但是如何设计,这个如果没有做过的话,那么可能会有点晕。我给的方案应该是索引和 NoSQL 的方案,但是后面他又问道了服务应该如何安排。

我知道在这里基本上会使用集群,一般可以考虑使用 ZooKeeper 来进行同步或者可以参考下 Druid 的数据设计模式,但是可能没有说的非常清楚。

个人感觉这个问题的回答不是非常好。

ATM 函数功能相关设计

ATM 中通常有取款,存款,查询余额度的相关操作。

在这里他希望设计一个函数或者程序结构什么的,这个设计可能会比较复杂也可能会比较简单。

在这里我考虑了 OO 设计中的接口和实现的方式,针对 取款,存款,查询余额设计不同的接口以及实现。

在考察面试的过程中,并不需要你完全下下所有的代码,你可以使用伪代码表达自己的意图就可以了。

总结

针对这上面 2 个面试的问题,其实还是有些坑的。

如果你没有设计过或者没有太多经历,可能会入坑的情况比较多。

在几天后,收到了拒绝的邮件,我也不知道上面的回答有什么问题,也不明白现在的 IT 面试都这么内卷了吗?

欢迎有相同经历的同学参与下讨论。


https://www.isharkfly.com/t/2021-aws/13788