阿里巴巴前端实习面经总结

我在去年春招拿到了阿里的实习offer,经历了三个月的实习之后顺利秋招转正,现在是阿里巴巴新零售数字供应链的一员啦。我之前在牛客上发过字节的面经,现在把阿里的面经补上,希望能给今年投阿里的师弟师妹们一点小小的帮助~

祝看到这篇帖子的同学春招都能拿到满意的offer

本篇会从下面三个层面去介绍,依次是

  • 面试前准备
  • 面试内容(面经)
  • 阿里实习

一 .面试前准备

其实走到现在来了,大部分有意向投前端岗的同学也都有各自的准备了。我这里就简单说下我自己的学习路径。前端的基础知识方面,一方面靠平时的积累,另一方面靠春招前的看面经查漏补缺。平时积累的话,我个人会看一些经典的前端书籍并且进行梳理和总结,我看过的书有

  • 红宝书
  • 《高性能Javascript》
  • 《你不知道的Javascript(上中)》下我一直没看,好像是讲ES6的,惭愧
  • 蝴蝶书
  • 《图解HTTP》
平时的积累我是从春招前一年就开始准备了,有计划地看书和进行总结,看掘金,看微信公众号,看InfoQ。看的东西很杂不要紧,重要的是形成自己的知识体系,这样在看任何技术文章之后,都能清晰地知道这项技术应该在知识图谱里属于哪一块,我是否已经掌握这一块知识,如果没有的话我是否有必要现在就去掌握它。除此之外,我刷了大概3个月的算法和数据结构的题目并且在Github上写了几个项目来专门总结算法类题目(虽然在面试阿里的时候没有用上)

项目部分其实是我当时的薄弱部分,研究生选择的导师一个项目也没有,全部都是研究性的课题(虽然有了项目也不一定和前端相关),自己也没有参加各种比赛什么的,只是在自学的时候,在Github上找了一些技术栈稍微复杂些的来练手。不过我自己在练手工程化的时候写了好几个开源小工具,事实证明这些开源的作品在面试的时候是非常加分的

面试还有一个很重要的部分,那就是考察候选人的软性素质,比如学习能力和学习能动力。这些东西一般是在交叉面或者hr面时进行考察的,比如阿里的hr可能会问你“你觉得你做过最失败的一件事是什么”,她有可能就是想看你遇到了困难是怎么想的以及怎么面对的。诸如此类的问题也难以准备,因为它由一个人的性格决定,也很难在hr面前造假,所以我能准备的只有尽可能在技术层面表现出我好学,自驱动的特质

二.面试内容

一面
我当时一面的时候精神状态不是很好,虽然是下午但是特别困,经常答题的时候注意力不集中(现在看来真是一次危险的经历)。但是面试官超级nice,我很多次没有听清楚,他都很耐心地和我重新说(比如他当时问我了不了解async和await,我听了三遍才明白他说的这两个单词是这个,可能是因为发音问题哈哈)
  • 你这个专业和计算机专业关联大吗,我就说我们这个专业在本科会学习一些计算机的课程的,当然同学的就业可能跟计算机关系不大,我自己对前端非常感兴趣所以就一直学习
  • 看了下我的博客,问了里面的一个动画库
  • 问了下实习经历(没有,导师管得严)
  • 研究生方向
  • 自我介绍一个比较难的项目
  • 之前做过的项目里有没有用到什么比较难的算法
  • Flex介绍一下
  • CSS选择器
  • 选择器的效率问题
  • jQuery的选择器怎么实现的
  • 说一下常见的伪类和伪元素
  • 移动端适配
  • Vue中的响应式怎么实现
  • Vue中对数组也是这么做的吗
  • Vue模板编译说一下流程
  • 介绍一下vdom
  • Vue和React的vdom算法对比
  • Vue中组件通信的方法
  • 持续集成的问题(因为我的项目里有)
  • VueRouter两种模式的原理
  • 阐述下宏任务和微任务
  • 让我介绍下我对前端安全问题的理解(XSS和CSRF的出现和应对策略)
  • MySQL的基本问题
  • 队列有什么特点和应用场景
  • 问了几种排序算法
  • 提问环节(我问了一下技术栈只会用Vue有关系没,面试官说不要紧,这些都是相通的)
二面
  • 介绍下自己的学习习惯
  • 问了下我的一个WebGL的项目
  • 让我介绍下用Vue写过什么项目
  • 逮住另外一个项目一直深挖...
  • Webpack的loader和plugins原理
  • 三个手撕代码题,分别是考察原型链,一个是考察this,一个是判断两个矩形相交的算法题
  • 让我介绍下前端安全
  • 有没有了解过学校里其他前端相关的社团
  • 自己评价下优点和缺点
交叉面
  • 自我介绍
  • 介绍一下自己认为最难的项目以及我认为的难点
  • 你接触过Vue以外的框架吗,了解程度怎么样
  • 详细介绍下Vue里的响应式机制
  • 讲下Vue里的diff原理
  • 提问环节
hr面
  • 自我介绍(做了哪些事和项目,学习路径和规划)
  • 研究生是保研吗,为什么本科和研究生都是同一个专业
  • 总结下自己目前的短板
  • 为什么选择前端
  • 自己经历过最失败的一件事
  • 自己觉得最成功的的一件事
  • 一个词总结一下自己
  • 平时有什么业余爱好
看到最后,附赠面经一份,是同部门的师兄写的,我去年准备阶段主要参考的就是他的面经https://www.nowcoder.com/discuss/258810?source_id=profile_create_nctrack&channel=-1

三.阿里实习

当时春招也拿了几个offer,最后考虑到阿里的含金量和转正率还是选择了阿里

这里补充一下,我个人觉得实习还是挺有必要的,一方面在秋招中一份优质的实习经历会非常加分,同时实习可以让你提前体验互联网生活,你可以根据情况来判断自己是否要决定走互联网这条路,我们组去年就有人来了一周就辞职回去读博了(害怕.jpg)

阿里的实习待遇还是挺好的,一天250元+2000的房补,再加上周末你可以选择加班,周末加班的话食堂是全免费的,而且也可以拿到补助(正式员工加班是没有补助的hhh)

来了部门之后的故事用这一篇文章也写不完,简单总结下就是,大家都很nice,但是互联网公司的压力还是摆在那里的,且身边的小伙伴们都很优秀而且努力~

-----------------------分割线--------------------------

最后给我们部门打个小广告,阿里巴巴新零售数字供应链平台招人啦(实习岗位),欢迎2022届的同学积极投递简历,现在投递简历我们承诺光速安排面试全程跟进面试进度,还提供简历辅导和答疑服务~




#实习##面经##阿里巴巴##前端工程师#
全部评论
阿里巴巴2022年暑期实习~ 一、团队介绍 阿里巴巴供应链平台,承担着打造服务阿里生态的精准、智能、敏捷的零售供应链体系的使命! 在这里,你将有机会运用互联网新技术、大数据与人工智能,重新定义众多行业,重塑零售体系,持续改善人们的生活品质。 未来我们将担负起更大的责任,整合社会供应链资源,服务全球20亿消费者,1000万中小企业。 在创造未来的道路上,期待有你!我们“链在一起”,怀抱着梦想和激情,携手同行!共同打造全球商家首选的智慧供应链系统! 二、职责岗位 1. 线上线下全渠道相关业务系统研发; 2. 供应链中台业务全链路的产品技术体系开发; 3. 对现有系统的不足进行分析,重构优化和改进系统算法,提高系统性能 三、要求 1. 编程基础扎实,理解IO,多线程、集合等基础框架 2. 学习能力强,适应能力好,具备耐心/细心的品质 3. 喜欢去看及尝试最新的技术,追求编写优雅的代码 四、具体内推团队 供应链平台基础技术团队,NBF(新零售开放服务框架),从APaas,BPaas到DPaas,提供完整的中台开发框架。 五、团队优势 偏底层技术,适合应届生的技术成长 面向对象:应届生,毕业时间为2022年1月1日至2022年12月31日的应届毕业生 工作地点:杭州、北京 招聘岗位:JAVA开发,算法工程师,前端工程师,产品经理 投递邮箱:frank.lsl@alibaba-inc.com 咨询可加微信 #阿里实习腾讯实习#
2 回复 分享
发布于 2021-02-26 16:55
补上联系方式:直接投简历至 campus-jingji@alibaba-inc.com或者添加微信 w516060659
1 回复 分享
发布于 2021-02-26 11:37
求简历啦!救救孩子
点赞 回复 分享
发布于 2021-03-11 10:54

相关推荐

05-09 13:22
门头沟学院 Java
点赞 评论 收藏
分享
面试官人很好,态度和蔼可亲,没答出来时也会引导你去思考。由于是晚上面的,导致我白天一天都有点紧张,面的时候状态也不是很好,正常可能面试官提问完应该思考几秒再答,而我就像抢答一样一口气把所有会的都说出来,这样就导致逻辑比较混乱,东一句西一句的。首先是自我介绍,先把会的技术大致讲一下,由于我八股背的多所以着重讲了一下,Java,go,jvm,MySQL,Redis,计网,操作系统这些,然后一小部分闲聊,然后先问了一下项目,面试官问我这个项目是否落实之类的,直接坦言说是写的练手的,包括之前也写过IM通讯,外卖之类的。然后面试官就把提问的重点放在了八股上。先问了Java:类加载器(答:3种+自定义类加载器、tomcat、原因+双亲委派+好处)JVM参数(答:xmx,xms,newsize这些,问我是如何设定的,我回答是把内存分一半给堆,再把堆分一半给新生代,这方面确实不太了解)然后问了一下并发相关的:线程池(答:线程池的7个参数(忘了线程工厂和阻塞时间了),3个重要参数,还有线程如何启用,为什么要设计最大线程数之类的,提到Java栈默认分配1MB运行时不可以更改)AQS(答:先讲clh是自旋锁+list,然后是AQS在这个基础上做的两个优化,然后举了一下reentrantlock根据state如何获取资源)CAS(答:使用三个字段,aba问题,然后将通常搭配自旋锁实现,面试官问通常会自旋多少次,这个不太了解,答的100,然后问100次大概多少秒,回答微秒级,然后面试官讲了一下怎么做资源可能没用完,意识到可能还需要进行阻塞操作)然后考虑一下Linux命令(top,ps,如何使用管道符过滤线程和使用Linux启动线程没答出来)然后问Redis:持久化机制(答:三种aof,rdb,混合,aof的三个参数刷盘策略,rdb以快照保存,使用bgsave会使用子线程来保存不会阻塞,而aof虽然会阻塞但是只在写完数据后追加一条命令,不会太影响,然后是他俩的优缺点,还有混合是怎么保存数据的)集群模式(答:三种,主从复制到缺点再到哨兵机制,正常使用三个哨兵互相监督,主节点挂了投票选主哨兵然后选主节点,然后额外讲一下脑裂的问题,主节点进行数据更新然后把命令写入aof来同步从节点,最后cluster集群,如何实现,使用16383个哈希槽(艹答成16384了),先根据哈希码取余,再根据节点数取余决定放在哪个节点上,然后问了一下我会怎么选集群模式,首先是cluster的问题,会让管道操作之类的失效,然后哨兵会导致整个集群结构变得复杂,使用小项目可能会考虑哨兵,大的考虑cluster,然后考了一下cluster如果一个节点挂了怎么办,根据节点数重新取余然后数据转移,面试官说这么转移比较慢,有没有别的办法,我隐约记得使用一个类似环形数组的方式,想不起来了)然后考了一下MySQL的b+树(这方面的知识点太多了,导致我什么都想讲逻辑就比较乱,讲了一下聚簇索引,树的叶子节点对应着一张页16KB,MySQL有一个区的概念,把这些页放在同一个区中,这样叶子节点的双向链表遍历时速度更快,然后b+树的扇出比较大(非常二,说成扇度之类的,面试官以为说的是扇区)这样层数就比较小,一行1kb数据的话3层可以放心2000w数据)其他的暂时想不起来了算法是lru,面试官问要不要提示,我说写个,然后写了10分钟左右,说大概写好了,但是面试官指出了2个小错误,第一个马上就改回来了,第二个一直没看出来(大脑这时候已经停止工作了)反问:问学习建议,说根据实际的项目进行深入,考虑应该怎么做,还问了一下组里面是做Java的吗?面试官说他是做go的,组里什么语言都有,语言影响不大,连忙补充了一句我对go的底层有深入源码的学习)结束。总体感觉答得不太好,没有太体现出深度,细节也不够全面。
下一个更好呗:佬,我投完云智一直没消息,多久约的一面啊
查看14道真题和解析
点赞 评论 收藏
分享
评论
26
121
分享

创作者周榜

更多
牛客网
牛客企业服务