申请岗位:AI工程师 AI软件开发
bg: 海外本硕,两段实习(>=3个月): 微软 swe x 1,亚马逊 sde x 1,硕士期间一段科研(正在做),hci方向
一面
复盘了笔试(不过我用的是四月份的笔试成绩,现在也忘的一干二净了。。。)
主要是在挖项目(包括实习和科研),项目挖的很深,我还跟他简单讲了一下DynamoDB论文涉及到的版本冲突解决机制
Java如何保证数据一致
协程和线程的区别
JVM GC机制
虚拟内存分页和分段的区别(没答出来,这个我没看。。。)
不同的显卡在机器学习模型训练完之后如何汇聚数据(这个我不了解,不过我还是尽力的回忆了一下上课讲过的CUDA的Array结构,然后跟他简单说了一下,然后面试官追问我是不是学过这方面的东西,我就跟他讲了一下我们学这方面内容的课程)
PyTorch训练模型的步骤
算法题:跳跃游戏2
二面
问了一些项目的问题
讨论了我学过的算法课涉及到的数据结构和算法
问了一下我对图这个数据结构的看法(我结合图神经网络答了一下)
算法题:电话号码的字母组合(如果输入同样的数字,不允许相同组合出现,比如同时输入"22", 返回答案不能同时有"ab", "ba")
总的来说面试难度还行,不过我没想到居然主要提问java相关,我准备的机器学习八股反而没问太多,可能是因为岗位还是AI软开吧。。。不过还好之前背过java八股。算法题这块也还好,但是我之前都在复习dp相关,所以导致第一题花了很久才想出来。算法题还是要经常复习,因为自己在刷题时,处于放松状态下其实很多题非常容易做出来,但是在面试这种高度紧张的环境下还是很难,即使是一些很简单的题。项目问题也很开放的,都是结合实际做的事情来问。希望对后来者有所帮助吧。