双非本科进不了大厂?阿里技术四面+交叉面+HR面,成功拿到offer

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 前两天,我收到了阿里巴巴的实习offer,从学长内推开始面试到拿到最后offer经历了4面技术、一面交叉面和一面HR面。经过了漫长的等待和几次几乎折磨的面试之后,终于拿到了实习offer。

前言

前两天,我收到了阿里巴巴的实习offer,从学长内推开始面试到拿到最后offer经历了4面技术、一面交叉面和一面HR面。经过了漫长的等待和几次几乎折磨的面试之后,终于拿到了实习offer。

自我介绍

本人来自西南某双非本科学校,该校学的专业是物联网工程。我的专业与Java开发关系不大,学校也只教过一些简单的编程课,其余的编程相关知识都是自己在课余时间在实验室学习和自学的。技术不是大牛,项目做得多但是大部分都是自己练手的小项目或者一些有意思的小项目,没有接触过真正意义上的大项目。平时没事的时候喜欢逛一逛微信公众号、简书、掘金等平台,看一看技术类文章,自己也偶尔写过一些文章。在校期间在实验室的时间偏多,喜欢写代码的过程和攻克难题的过程。

面试准备

首先准备校招之前一定是要好好准备的,长期的就是自己的编程基本功以及对各个方面知识点的了解程度,短期的就是突破一下自己不会的知识点。

我是投简历之前一个半月就开始做准备了,首先就是刷leetcode,算法这一关还是比较重要,而且阿里还有笔试成绩,面试的时候也会问到一些不是太难的笔试题;

然后就是多找几篇面经,看看学长学姐当初面试的时候面试官都问了哪些问题,如果遇到会的,自己尝试回答一遍,如果遇到不会的,那就去学习一下;

不过网上找的面经可能因为大家的学习过程不一样,找到类似的面经的概率个人感觉不太大,我恰巧在H大的知识星球里面,就找H大做了一下简历指导(不是在打广告,是真心感谢H大);

最后找到了一个很完整的Java面试题及答案的文档用来做复习资料。(Java面试宝典及核心知识宝典复习)

面试过程

第一次技术面(60min)

  1. 说一说你使用的是什么样的线程池,自定义线程池的几个参数是什么
  2. 说一说线程池的执行流程
  3. 你的项目中定义的核心线程数、最大线程数和队列大小是如何定义的?为什么这样定义?(这道题根绝我导师给我说是一个加分项)
  4. 在项目中如何防止超卖现象
  5. 你的下订单的sql语句如何编写的?(考察MySQL的乐观锁)
  6. 如果有用户反馈说整个系统的反馈比较慢,你是如何排查和如何解决问题的?
  7. 影响系统响应慢的原因有哪些?
  8. 算法题:给定一个无序数组和一个目标值,找出数组中两个数之和等于目标值的所有组合,并指出其时间复杂度。(很简单的一个算法题,leetcode easy难度)
  9. 了解过JVM内存模型么?说说哪些是线程独享、哪些是线程共享的?
  10. 详细说一下Java堆的分区,他们的比例,以及如果把比例调大以后会有什么样的后果?
  11. 说一下JVM的GC算法,以及为什么“标记-整理”法更好一些,他能解决什么样的问题?
  12. 了解过Java类加载机制么?一共有哪几种类加载器?
  13. 如果你想查看线上正在运行的服务的GC日志,你需要输入什么指令?
  14. 了解过HashMap么,说一下HashMap的原理。
  15. 如果两个对象hashCode相同,则一定是相同对象么,如果是两个相等的对象,那么他们的hashCode相同么?
  16. 如何解决hash冲突?
  17. HashMap是线程安全的么,如何把HashMap变成线程安全的类?
  18. 说一说MySQL数据库有哪些数据库引擎?
  19. InnoDB的索引的数据结构是什么,说一说他的原理
  20. 数据库事务等级以及他们解决了什么问题,请举例说明一下
  21. MySQL默认的事务等级是什么?
  22. MySQL如何开启慢查询?
  23. 说一下Spring主要包含哪些模块?
  24. 说一下你对Spring的IOC容器的理解以及启动流程
  25. 有了解过RPC框架或分布式的东西么?(这个后来问面试官,就是考察对新技术的了解以及对互联网发展的一个关注度)
  26. 说一下你读过的有关Java的书籍

第二次技术面(30min)

  1. 介绍一下你做的项目中你觉得最好的那个;说一下你这个项目中的技术难点和挑战。
  2. 如何解决商城项目中出现的超卖、少卖问题?
  3. 说一下什么是幂等性
  4. Redis如何保证高可用
  5. Redis的哨兵模式知道吗?
  6. 你用Redis觉得有什么缺点吗?
  7. 你是如何做压力测试的?压力测试的数据是什么?
  8. 线城池有哪些参数?
  9. 核心线程数和最大线程数有什么区别?
  10. 常见的拒绝策略有哪些?
  11. 介绍一下SpringBoot的特性
  12. 说一下什么是单例模式
  13. 什么是饿汉模式、懒汉模式
  14. 使用懒汉模式的注意事项以及如何解决
  15. 说一下volatile关键字的作用和原理
  16. 说一下自旋锁和一些常见的自旋锁的实现
  17. 说一下数据库的左外连接
  18. 数据库索引优化
  19. 数据库索引的数据结构

第三次技术面(25min)

  1. 如何解决商城项目中出现的超卖、少卖问题?
  2. 在开发项目中,遇到了哪些问题?
  3. Redis与数据库同步时候出现问题是如何解决的
  4. 说一下Java当中线程有哪些状态
  5. 线程的阻塞和等待有什么区别
  6. 介绍一些Java的锁机制
  7. 你了解过哪些锁的类型
  8. 为什么wait、notify这个方法会在Object这个类下面
  9. 分布式、RPC框架有了解过吗
  10. Redis的线程模型是什么(考察NIO)
  11. Redis实现的消息队列是如何保证消息不丢
  12. 介绍一下堆排序是如何实现的
  13. 介绍一下TCP/IP协议是如何保证消息可靠传输的
  14. TCP/IP协议做了什么优化(拥塞控制和流量控制)

第四次技术面(15min)

  1. 说一下你投稿的文章写得是什么内容
  2. 介绍一下消息队列
  3. 超卖是如何解决的?
  4. 下单过程是如何设计的?
  5. 介绍一下雪花算法
  6. 你怎么理解分布式?
  7. 分布式之间怎么通信?
  8. 生产者、消费者模型是怎么工作的?
  9. Java里面创建线程的方式
  10. 代码场景:给一个字符串,统计每个大写字母出现的次数,按照次数排序,从小到大输出字母和其出现的次数

交叉面试(30min)

  1. 你在学校学习过程中,哪些可能成绩更好一些以及为什么这些课程成绩更好一些
  2. 你学习Java多长时间了
  3. 你是如何学习Java的?
  4. 你看过哪些开源框架源码?
  5. 你是怎么看开源框架源码的?
  6. 介绍一个你参与较多或者比较有难度的项目
  7. 你们团队开发项目的时候有没有大家一起解决的某些技术问题
  8. 你们做的这个项目有没有借鉴过其他已经成熟的项目
  9. 说一下你们项目的要求和指标大概是多少
  10. 你们项目中的线程池队列容量是如何确定的
  11. 项目中的某些解决方案是个人想出来的还是团队讨论的结果
  12. 如果再让你做一个商城系统,你会做哪些技术选型
  13. 项目中做过哪些安全方面的措施
  14. 你会如何设计一个淘宝会员系统?
  15. 你未来的发展方向是什么?

面试总结

每一次面试都感觉是煎熬,虽然之前看过很多阿里的面经,都说阿里面试官会抓住某一点一直问下去,直到问到你不会为止,但是当第一次亲身体会的时候,还是感觉很煎熬。

不过最终的结果还是好的,至少收到了心仪的offer,能在这个疫情期间,大环境不好的情况下找到实习工作。

对于整个的学习过程和面试过程,最大的感悟有四:

  • 基础知识要扎实,尤其是Java和数据库的基础知识,如果基础知识不扎实,后面什么框架和实战不会有太好的结果
  • 多看一些技术类的博客或者文章,但是要有自己的思考,因为很多技术类文章都是跟紧互联网发展的,多看一些能够更加了解互联网的发展方向;同时自己的思考也能让自己过滤掉某些文章中的较差的观点,做到取其精华去其糟粕
  • 主动很重要,给我内推的学长是我主动认识的,我的导师是我主动认识的,学技术也是我主动学习的,这世上没有天上掉馅饼的好事,主动才会有故事
  • 一个合适的导师真的很重要,我在遇到我的导师之前,学习方向很迷茫,对于很多东西都不知道如何入手,很多文章也没有解决我的问题;老师这时候就可以指明方向,让我的学习之路少了很多崎岖

分享个人面试刷题复习笔记

对这些面试笔记宝典感兴趣的小伙伴可以自取哦!

1、Java后端覆盖1000多道常问面试题及答案详解

上千道Java、Spring、JVM、集合、JVM、Mybatis、MySQL、DB、GC、Spring全家桶、Dubbo、数据结构、算法、Kafka、微服务等

这几份1000道面试宝典、Java核心知识、复盘面试宝典有感兴趣的工程师朋友们可以点击此处来获取就可以了!


编辑

添加图片注释,不超过 140 字(可选)



编辑

添加图片注释,不超过 140 字(可选)


2、阿里P8大牛写出来的283页Java核心知识


编辑切换为居中

添加图片注释,不超过 140 字(可选)



编辑切换为居中

添加图片注释,不超过 140 字(可选)


3、面试宝典

面试复习宝典、面试前刷一遍对你帮助非凡!


编辑切换为居中

添加图片注释,不超过 140 字(可选)


2020年350道面试体系


编辑

添加图片注释,不超过 140 字(可选)


这几份面试宝典、Java核心知识、复盘面试宝典有感兴趣的工程师朋友们可以点击此处来获取就可以了!

最后祝您在疫情过后能拿到心仪的offer,面试顺顺利利!!

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
7月前
|
SQL 分布式计算 关系型数据库
【秋招面试】货拉拉面试(1面过程)
【秋招面试】货拉拉面试(1面过程)
105 1
|
7月前
|
消息中间件 算法 NoSQL
二十不惑的年纪,我简直走了狗屎运(4面拿字节跳动offer)
二十岁的年纪,青春张扬,无拘无束,这种状态自然是好事,不过在某种意义上,也并不能太过乐观。实际上,许多二十岁左右的年轻人,容易陷入误区,把无所事事当成自然状态,太过随意的生活容易让我们没有明确的人生目标和真实的人生理想,以至于毕业之后找不到工作,回家啃老,然后还要悻悻地安慰自己“谁的青春不迷茫”?
|
网络协议 安全 Java
逆袭!裸辞26天,历经4面,60w“跳”进鹅厂(附面试流程和真题)
在互联网做了几年之后,去大厂“镀镀金”是大部分人的首选。大厂不仅待遇高、福利好,更重要的是,它是对你专业能力的背书,大厂工作背景多少会给你的简历增加几分竞争力。
|
7月前
|
NoSQL Java 程序员
成功上岸!一路披荆斩棘腾讯6面面经,大厂远没想象中的难
随着互联网行业的蓬勃发展,越来越多的Java开发程序员渴望加入大公司,以拓宽自己的视野和提升技术水平。对于两年经验的开发者来说,要通过头部互联网公司如美团的面试并不容易,不仅需要掌握扎实的基础知识,还需要在面试中展现出独到的思路和解决问题的能力。
|
7月前
|
NoSQL Java 关系型数据库
阿里技术三面:P7想靠资历打败我,却惨败于这800页面试热题下
阿里巴巴,这个中国互联网行业中能排上前三的企业,面试是非常讲究的。通常都是三面技术面+HR面,可是多少心怀阿里梦的工作者惨败三面之中,连HR面都没见着就败了。那如何通过技术三面呢?我来介绍介绍(这里是指我技术三面的经验)
|
7月前
|
NoSQL Java 关系型数据库
闭关修炼21天,“啃完”283页pdf,我终于4面拿下字节跳动offer
今年的开端有些特殊,疫情的缘故对我们的生活造成了很大的影响,这对于一名求职者来说,更是添上了一堵“难墙”,尽管如此,但我们也不能够错失金三银四的机会,该抓住的就要抓住。现在很多互联网公司都已经采取线上面试的方式,所以提前做好准备,投简历、顺利面试,定会拿下心仪的offer,而我也总算取得自己想要的成功,字节跳动成功4面通关。
|
7月前
|
算法 Java 关系型数据库
在家“闭关”,阿里竟发来视频面试,4面顺利拿下offer
关于个人呢,我是一个普通的双非本科生,在校成绩不错,各方面的表现自我感觉也比较突出,今年大四即将毕业,对自己进入大厂工作是很有信心的,我的方向是Java,也知道现在Java的竞争比较激烈,大厂比较难进,但我丝毫不胆怯。当然,我还是很走“狗屎运”的,没想到闭关在家期间,也能收到阿里发来的视频面,还一路顺利拿下了offer。
|
7月前
|
设计模式 NoSQL Java
渣本生成功逆袭,拿腾讯offer,谁说学历不好进不了大厂
在互联网行业面试中,大家都知道,一般大公司才会在应聘中重点要求学历这一条的,那么非985、211毕业的我们,想去大公司,该怎么办呢?
|
7月前
|
NoSQL 安全 Java
三面阿里被挂,竟获内推名额,历经5面拿下口碑offer(Java后台)
每一个互联网人心中都有一个大厂梦,百度、阿里巴巴、腾讯是很多互联网人梦寐以求的地方,而我也不例外。但是,BAT等一线互联网大厂并不是想进就能够进的,它对人才的技术能力和学历都是有一定要求的,所以除了学历以外,我们的技术和能力都要过硬才行。
|
7月前
|
SQL 算法 Java
632页!我熬夜读完这份“高分宝典”,竟4面拿下字节跳动offer
实际上,目前毕业已经两年时间了,在大学时就已经开始关注字节跳动的发展。一开始,我是电气自动化专业的,大二清楚目标之后就转计算机了,大四进了一家小型的互联网公司实习,具体就不说哪家了,这个实习工作也为日后我进字节做了很好的“铺垫”。