阿里健康暑假实习前端一面(凉经)
2022/04/01新鲜面经,发帖攒人品~
timeline:3月22日系统自动投递 -> 开始网申流程 -> 3月28日电话约面试 -> 4月1日电话面试(一面)
自我介绍+项目介绍聊了40分钟
1.自我介绍 - 基本信息+编程语言/技术栈+项目经历
2.为什么选择前端而不是其他方向?
3.项目
-我看你这个是个全栈项目,能具体介绍一下项目的内容吗?
-项目是自己开发的吗?还是参考了别的网站?
-是基于什么样的考虑选择了这些技术栈呢?
-NodeJs还有其他的框架但为什么会选择Express来做?
-MongoDB和其他的sql数据库有什么区别?
-做项目的过程中碰到了什么难点是如何解决的?(主要考察问题解决的能力,碰到问题能够在合适的地方搜索解决是开发者必备能力)
-风格化部分是自己实现的还是用css框架实现的?
-我们来聊一个部分的实现细节吧。比如用户登录这一块,从用户打开网页到输入账号密码点击登录按钮,整个过程是什么样的?详细描述一下过程思路和代码
-那用户点击完登录会进入他的登录页面对吗?登录页面如何显示呢?url是怎样的?
-如果redirect到了一个页面,那我知道你的url不也可以进入用户登录后的页面吗?
-用middleware我理解,可是之后的处理如何保证该用户登录进的那个页面是输入了账号密码才能进入的页面呢?
-用户的密码是在数据库明文记录的吗?(自我推测面试官觉得项目的安全方面还有很多可以改进提高的)
-项目方面好像还聊了一些别的,没有录音有点忘记了...
前端基础知识聊了15分钟
4.先来问一些javascript相关的吧,应该用的都是es6了。
-javascript有哪些数据类型,es6有哪些新增?(感觉基础一般上来都会问一个简单题,让你热热身)
-object和array的区别可以说一下吗?
-原型了解吗?可以介绍一下吗?
-class了解吗?可以介绍一下吗?
-同步/异步是什么?可以简单讲一下吗?(讲到了promise, async/await)
-我听你提到了promise,可以说说它是什么吗?(讲到了callback hell)
-async/await可以具体说说吗?
-还有什么其他异步处理方法?
-你刚才说到了回调地狱,它是什么,具体是如何处理的?(提到了.then&.catch和try&catch)
-你讲到了用catch来处理error,那所有的error不会被同时处理吗,怎么对不同error做不同处理?
5.再来问一些html相关的
-行内元素和块级元素有哪些?说你用过的。
6.再来问一些css相关的
-讲一讲盒模型
-讲一讲display的属性和作用
-position有absolute和relative这两个值,分别是相对于什么位置?
算法题聊了20分钟
7.判断链表是否有环
8.无序数组找第二大元素
-可以优化一下吗
-冒泡一定要两次吗
反提问5分钟
1.部门主要业务
2.部门使用的框架
3.前端学习方法(用开发去学习)
心得体会
最后想来说一说自己这次面试结束后的心得。春招实习我只投了阿里巴巴和微软,对比于20天之前第一次面试被蚂蚁网商银行的面试官嫌弃前端基础太差,项目太简单,从而只是简单广泛的问了问我计算机基础知识。这一次头一回收获了完整的面试体验,头一回这么细致地去深挖去思考自己的项目,自己的项目有什么好的地方,有什么可以改进的地方。面试官层层深入层层引导,还鼓励我说出自己的见解。在前端基础知识部分,他引导我回答问题的时候向自己开发中的实际操作方面去说。在问问题的时候他都是循着我的回答深挖某一个问题,并且引导我对没有做过的处理思考新的处理方法。在算法题部分,我一开始没思考直接快排加返回,他也引导了我去思考去优化。最后的反问环节,鼓励我说这种用实际做开发去学习才是正道,不要看你有些css知识没答全,你没用过的你不会,这是自然的,你要用的时候自然会去查会记住。 真的是非常好的面试体验,一个多小时的时间里学会了很多开发者看待问题的方式。我很感谢这个面试官。
面试结束之后,因为几乎所有问题都回答出来了,加之面试官说让我手机保持畅通之后会有不同的面试官来约后续面试。还一度以为自己过了,一个小时之后打开官网看到进度已结束。大乌龙事件。
现在想想,大概还是自己的项目还需要提高,比如说css方面可以不直接用框架而多去自己探索一下。还有安全等方面的问题可以解决。还有算法题因为很久没做了所有连基础题都磕磕巴巴的,还需要多提高。
昨晚心情像坐了过山车。但今早起来,头一回觉得自己可以成为一个developer了。
啰啰嗦嗦了一堆,看到这里的都是有缘人。我的阿里巴巴的春招实习之旅也正式结束啦,继续成长吧。
祝大家面试成功,offer多多~
#阿里前端面经##实习##面经##面试流程##前端##MongoDB##学习路径##校招#