阿里达摩院/字节后端研发一面凉面经

刚面试完字节的后端,基本是凉了。正好上周也面试了阿里达摩院,那个是被捞起来的简历,问的也比较随便,字节这次算是比较正式严肃的一次。从这次面试来复盘一下,看看整个过程暴露出的问题以及接下来应该继续学习哪些东西。
先说一下本人的基础:
  • 本科专业是通信工程,做过一些硬件的比赛和项目,用的编程语言是C,掌握程度基本就是最基础的C的语法结构。
  • 研究生专业是网络安全,不过做的都是偏向于学术性的工作,平常需要编程的东西就是一些实验验证性的东西,大多用的是Python。
  • 计算机网络是考研专业课,所以学得还算不错,然后去年把数据结构过了一遍,计算机组成原理大概看了一半,操作系统今年三月底刚学完,数据库还没开始。
  • LeetCode是用Python刷的,到目前为止刷了81道题,基本熟悉了80%常用的各种算法,但是还不能说完全掌握。

一、阿里达摩院面试

面试官:先给你半个小时做一个编程题吧,用哪种语言都行,实在不行可以写伪代码。题目是翻转部分链表,从中间取一段进行翻转(LeetCode原题!!!然而面试前没刷到……)
我:写了一下,没实现出来。然后把这个题的思路说了一下。
面试官:你平时自己会额外学一些东西么?还是只是跟着课程去学?
我:平时自己会学一些自己感兴趣的东西,因为以后想往C++开发的方向发展,所以最近准备学C++的东西。
面试官:挺好的,那你对rust有所了解么,我们部门业务用的基本是rust,也会用到一点C。
我:听说过这门语言,但是没有学过相关的东西。
面试官:哦哦,那你对我们部门有什么了解吗?有什么想问的问题么?
我:就是你们部门具体是做什么的呀,能给我介绍一下么?
面试官: 我们部门是刚从阿里云划分过来的,主要的业务有两块,系统安全和精密计算,我做的是精密计算这块,系统安全那块我也不是太懂,简单给你介绍一下我们这块的业务巴拉巴拉巴拉……(具体内容我也记不清了,因为这块我实在是不懂)
面试官:你平时有什么业余爱好么?
我:跑步健身吧,运动比较多~

小结

阿里达摩院这次感觉很随便,感觉他也没准备好,我也没准备好,只是把我简历捞起来了。因为本来我投的是阿里云,但是之后一直在准备,拖了大概一个月,然后简历因为太久没有面试就被超期释放了,然后就被达摩院那边捞走了,所以面试的岗位和要面试的内容我都一脸懵逼,所以最后凉也是必然。

二、字节音乐后端开发面试

面试官:你好,请先自我介绍一下
我:你好,我是XXX学校网络安全专业的研二在读学生,平时主要做的是一些学术相关的工作,上学期发了一篇EI会议论文。然后我的本科专业是通信工程,参加过一些硬件相关的比赛,比如电子设计大赛,还有挑战杯比赛的项目,大概就是这样~
面试官:好的,看你简历里写了熟悉Python和C语言,那先问一些C语言相关的东西吧,可以解释一下C语言当中的左值和右值么?
我:C语言是本科时侯参加比赛经常用的,现在很久没接触了,有点忘了……(原来学的也不咋地,就知道一些基础语法)
面试官:OKOK,好的好的,那接下来问一些Python相关的问题。你知道字典和集合这两个函数,哪个函数的效率更高么,他们的时间复杂度是多少?
我:Python里面的字典和集合应该都是用哈希表来实现的,他俩的效率应该差不太多,集合的效率略高一些,一般来说,哈希表的时间复杂度是O(1)。
面试官:好的,那看你学的网络安全,问你一些网络的知识吧,可以说一下DNS解析的详细过程么,比如这个域名:www.tiktok.com
我:巴拉巴拉巴拉(就是网络的基础知识,直接背给他就好了,从本地缓存,到本地DNS服务器解析,一直说到根服务器,再解释一下迭代查询和递归查询这些。)
面试官:那DNS底层用的是什么协议呢?TCP还是UDP?
我:用的是UDP
面试官:那接下来问一些操作系统的问题,解释一下进程和线程的区别(很常见的问题)
我:先解释一下进程和线程的概念,然后说二者的区别和联系(概念知识,背就好了)
面试官:那如果两个进程同时打印内容,那么他们的地址是否是相同的?
我:这个问题我有点迷,因为那会儿没太弄清楚进程打印内容的时候,打印的内容的地址是逻辑地址还是物理地址,所以说得不太清楚。
面试官:那你可以解释一下虚拟内存的概念么?
我:(继续背八股)
面试官:数据库的东西你了解么?MySQL用过么?
我:没有,因为转专业过来的,所以没学过数据库,也没用过……(尴尬)
面试官:好的,那做一个编程题吧,然后出了一个题,题目是给了n首歌曲,形成一个二维数组,数组中的元素只有0和1,nums[i][j] = 0表示第i首歌和第j首歌不相似,nums[i][j] = 1表示这两首歌相似,并且如果a和b直接相似,b和c直接相似,那么a和c间接相似。求相似的歌组的数量。
我:完全懵逼,甚至没看懂题,更别说写代码了,所以直接GG~

写在最后

从这两次面试体验来看,发现自己差的还是挺多的,主要是几个方面:
  • LeetCode刷题不够,很多数据结构和算法还没有完全掌握。一涉及到动态规划和DFS的题目就容易GG,这两个类型我现在还没掌握,但是现在大厂都爱考这种题目。最近参加的阿里和华为的笔试都有考到这种类型的题。
  • 数据库这块知识有所欠缺,基本是计算机基础知识考的就是数据结构和算法,计算机网络,操作系统和数据库这四块内容。
  • 大厂笔试的时候,写代码基本都是ACM的模式,不像LeetCode会给出输入输出,直接写函数就可以。所以输入输出这块还得好好练练。牛客上有一个专门输入输出的练习场,可以多刷一刷。
  • 项目也有所欠缺,对于语言的理解也不够深入,比如问道Python的一些函数实现的时候就很懵。
华为机试的时候侥幸做出来一个200分的题,但是只过了70%的实例测试,应该能得个140分,据说100分就能过,希望华为给个机会,这样最起码可以有个实习缓冲一下,再给我争取三四个月的时间补一下这几块知识,这样秋招还可以再挣扎一下~
如果后续还要参加面试的话,应该会继续更新!
希望即将面试的各位都可以拿到想要的offer!!冲!!
  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loveCC_orange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值