阿里一面

📍面试公司:阿里

📅面试时间:4.10

⏳面试时长:2h

📖面试问题:
1.自我介绍
2.介绍项目

数据库选型拷打
3.为什么使用这么多数据库(MySQL、Redis、MongoDB)?(解释了一下MongoDB在项目中的使用)
【追问】
就因为存储量大就使用MongoDB吗?
为什么不用MySQL直接存行为日志text?
为什么不用MySQL存储json?
面试官:还是没有能说服我加入这些数据库
引入这么多数据库会有什么问题?
最后面试官总结:还是没有考虑到数据库是非常复杂的(ps:是数据库相关的岗)

计网(面试官:看你全栈开发,网络交互是不是了解)
4.介绍一下HTTP
5.HTTP3详细说一下
6.HTTPS说一下
7.HTTPS服务是怎么搭建的??
8.用户需要手动安装CA吗?CA怎么来的?
9.HTTP的Method有什么?说一下HEAD?
10.说一下什么是Restful?(没有说出核心思想是什么)
11.常见的响应码?(回答完常见的响应码后,面试官:4开头的还有呢?朱波只知道400和404,对不起,朱波该死)
12.介绍一下Cookie和Session?对于多台服务器,Session如何保证对应上用户?(答ip哈希,不满意,提示用Redis)
13.介绍JWT?组成?前后端应用?

操作系统(面试官:从你的专业来讲,你应该对操作系统有了解)
14.进程间的通信方式?(答出两种,面试官说有很多很多,朱波道歉)
15.用户态和内核态的切换?什么情况会?(SystemCall,只举出了文件IO的例子,要求举出更多的例子)
16.讲讲中断的概念?中断举例?
17.用户进行IO操作,讲讲发生了什么?(提到DMA)
DMA是什么?内核怎么知道硬盘的数据已经拷贝完成了?
面试官:是不是八股稍微有点没准备?(哈哈哈哈哈哈哈哈哈哈哈哈已疯对不起)

Java
18.static?
19.final?
20.final什么时候需要使用或者说必须使用,不使用就运行不了?(提示JavaScript闭包)
21.Lambda表达式?Stream?
22.ArrayList和LinkedList?如何删除指定值的元素
23.String操作会怎么样?StringBuilder StringBuffer
24.工厂模式有什么用?
25.JVM的组成

-------------1h-------------

应用题
1.设计短链系统,给了场景,需要压缩的链接百万级,提示不建议用算法,考虑好开始说
朱波:哈希+62进制+冲突考虑在原链接和哈希后的链接做操作+数据库读写
面试官:百万级别碰撞大,且加冗余信息还要额外处理,数据库读写压力也很大,重新思考。提示可以不使用算法,想想数据库自带的功能
点击短链接后发生了什么?重定向是如何做到的?
2.文件中有100亿个无序整数,内存100M,找中位数
思路:切分小文件,归并排序,找中位数。
面试官:为了效率这个方法跳过,还有吗?提示快排

------------1h30min-------
代码题
链表翻转
链表翻转并将特定数值节点排到末尾
写完面试官提示写复杂了,提示一趟解决
优化思路及代码

反问
部门业务?
对实习生的要求?
为什么先面后笔?
Base?
有别的offer了吗?

🙌面试体验:
面试官会挖掘知识的边缘,朱波真错了,问的确实该会,好好复习去了
阿里压力真的好大,今天晚上笔试也做的很差,有点怀疑自己了
#软件开发笔面经# #牛客创作赏金赛# #阿里# #后端# #Java#
全部评论
能过嘛 佬哥
点赞 回复 分享
发布于 04-12 23:13 陕西
短链那个场景题,用数据库自增id是对的吗
点赞 回复 分享
发布于 04-11 09:14 江西
致敬传奇全栈王b老师
点赞 回复 分享
发布于 04-11 08:16 江苏

相关推荐

06-18 21:31
已编辑
南京航空航天大学 Java
总结:一共半小时,比想象中要长,问了比较多场景题, 面试风格和技术面完全不同。提问环节1.你能否先做一个自我介绍,开始今天的面试?2.你的求职意向中,是否考虑除了网络安全方向外,还会考虑java后端、测试开发等其他岗位?3.问:你是否已经确定要去做测试开发方向的工作,还是同步考虑后端岗位?答:我认为都可以考虑,现在还没有限制得很死,还在探索阶段。4.问:你在找实习时,除了测开岗位外,是否也投递了一些后端岗位?答:其实都有在投递,不会限制得很死,前端后端都会考虑。5.问:你目前是否拿到较为满意的offer,为什么可能会优先考虑我们公司?答:确还有一些offer在流程中,我对贵公司的价值观比较认同,所以可能会优先考虑。6.问:能否分享一个你在硕士期间做的相对满意、有成就感或具有挑战性的项目,包括项目背景、目的、你在其中的工作内容以及满意之处?7.问:在项目推进过程中,有哪些比较满意的点,如果重新来过,有哪些层面可以做得更好?8.问:你是否有实习经历,在之前的实习岗位是做什么的?9.问:你在实习期间实习了多久?10.问:在企业实习(如实习神经学、大数据和网络安全等岗位)与学校跟随导师做实验室项目,两者之间有什么核心差异?答:核心差异在于研究生阶段的研究工作更多是探索性的工作,在前人基础上挖掘新的领域;而在企业实习则是针对已有的岗位和明确的工作职责,主要任务是掌握当前的工作岗位,不需要过多的探索性工作。11.问:在之前实习的过程中,遇到的最大挑战是什么?答:最大的挑战是适应体制内工作,学会半文半事,与不同人打交道,包括参加会议并做会议纪要等文书工作。12.问:在实习期间,你在做人和做事能力上有哪些具体的提升?13.问:你是否有设想过如果来到互联网公司实习后可能会遇到哪些困难,并且是否决心从事互联网行业?答:认为人生是探索,虽然了解到互联网行业的差异,但尚未深入了解,打算通过实习期间的探索,尝试进入互联网行业作为未来可能的第一份工作。14.问:如果我给你这样一个暑期实习offer,你过来之后,在上手和工作推进过程中,你觉得会遇到哪些层面的挑战或困难?答:我觉得我的岗位是测试开发,主要挑战包括编写和执行测试文档,以及进行自动化测试和基础平台的研发。这些工作都是我之前没有接触过的,需要在短期内熟悉公司的流程和技术要求,例如学习自动化测试所需的Python语言或基础平台开发能力,以及熟悉测试文档的结构、编写到执行的全流程和缺陷生命周期管理。15.问:做好这个暑期实习岗位的核心能力层面有哪些?答:核心能力层面首先是编码能力,因为进行技术平台开发时编码是必需的。其次,沟通能力也很重要,需要与产品经理、开发人员进行有效沟通。所以提升编码能力和沟通能力都是必要的。16.问:你觉得我们公司或实习岗位对你来说比较好的地方主要在哪些层面?答:我觉得主要优势在于公司的定位,作为阿里系公司,拥有足够大的平台,这对于个人能力是一种很好的背书。此外,工作地点在杭州或上海,这两个地方我都喜欢,并且对测试开发相关工作内容较为熟悉,有助于能力增长。17.问:你能否客观分析一下,觉得自己与其他申请者相比,在哪些方面具有优势和劣势?18.问:你是否可以接受上海和杭州这两个地点作为实习地点?19.问:实习时间上,你最快什么时候能开始,最晚可以实习到什么时候?反问环节1.问:公司主业是否偏向某一地?答:公司没有所谓的主业或总部概念,外卖业务上上海和杭州是双核心定位,而从阿里整体来看,杭州是总部所在地。2.问:上海这边的团队主要负责哪一块业务?答:上海团队主要负责首页APP交易到购物车、下单页的链路测试,同时负责创新型业务如拼团、秒杀、卡券类业务闭环开发,以及营销工具玩法(超级吃货卡、红包、吃货豆等)的设计与测试。3.问:是否可以了解一下工作节奏?答:实习期间,公司对实习生的工作量期望并不高,更关注实习生主动学习能力和对业务的理解深度。正常情况下,正式员工晚上一般在8点至9点半之间下班,但若项目上线节奏紧张时,可能会有所加班。
查看19道真题和解析
点赞 评论 收藏
分享
评论
3
9
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务