985硕,阿里、字节、美团三面,拿下阿里P6+字节offer

6.1号开始投简历,7.6号开始第一场面试,9.30号收到最后一家意向书,我的秋招结束了!

 

找工作期间薅了网上不少大佬的羊毛,特别感谢期间给予帮助的各位前辈们。在此记录下秋招的全过程,也算是对帮助我的大佬们的回馈,十一假期期间码字,面试问题都排在后面(先看看我是如何一点点薅羊毛的),看得出我对帮助过我的大佬们的重视!(舔就完了,滋滋)

 

背景介绍

 

本科东北某985机械专业,研究生武汉某985计算机专业,勉勉强强算半个科班?无实习、无项目、无计算机相关竞赛,"三无"选手一枚,是真滴菜。而且专硕两年制,上了半年课,疫情在家呆了半年,实话说,找工作之前,我没去过实验室,更不用提项目了。说到这还是要感谢研究生导师当时保研要了我,我是真没想到自己可以从机械跨专业保研到计算机。虽然研究生期间没参与过项目吧,但好歹简历上有计算机学院的硕士,不会挂简历,足以足以。

 

因为自己没有研究算法相关,加上听往届学长们说找工作越来越难,去年10月开始决定找Java开发岗,后面投递的也都是这个岗位。最终收获的意向书有:字节跳动、百度、快手、美团点评、网易、京东。研一下才知道的很多大佬,如果能早点知道,可能会准备的更充分,哈哈,再夸一下,网上的大佬们真的是好!

复习准备

 

我是从去年10月份开始自学一些课程,前期主要也就是刷刷算法题,毕竟没有找工作的紧迫感,效率也没那么高,真正认真复习应该是年后2月份开始。当时疫情在家,得知武汉一时半会也开不了学,就在家安心复习吧,前期主要还是看视频为主,在家刚开始很难投入学习状态,因为看不进去书,每天就是看视频+整理面经+刷代码题,后续状态上来了,就开始看书和背知识点,建议大家早点开始准备,这样就能赶在7月份投一波提前批。我之前也犹豫了一下要不要投提前批,毕竟提前批都是神仙打架,但谁又知道自己是不是神仙呢,哈哈,这里建议在复习的差不多的情况下,可以提前批就投起来,这时候hc多,面试流程快,只要通过面试基本就有位置,而且很重要的是很多大厂提前批免笔试!!!字节、京东、百度、快手都是免笔试的。我是在7月份就拿到了字节和京东的意向书,当时心里就很稳了,后面提前批又拿了百度和快手,所以正式批就没怎么投简历了,省去了每天大量投简历和笔试的时间,本想后续再好好努力冲一下阿里腾讯,不过确实有点懈怠了,再加上水平有限,就没拿到,阿里面完了三轮技术,官网显示三面通过,但是没有被发起第四轮面试,应该是投的部门招满了,不再继续面了,后续又被另一个部门捞起来,现在还在流程中,就当挂了吧。

 

如果提前批准备的不是特别好的话,或者说还没开始大量的背书,很多基础的东西答不上,那也不建议投提前批,虽然提前批多一次机会,但是如果面评显示的是基础不好,那么正式批有的就不给面试了,周围有同学就是这样,所以大家还是根据自己的复习进度决定要不要投提前批。之前都说,"金九银十",感觉现在已经是"金八银九"了,每年7月份就开始招聘了,真是越来越早了。

数据结构与算法:剑指offer+LeetCode

 

楼主是个跨专业选手,从去年9月研究生开学之后,开始学习数据结构与算法,最开始是学的算法导论那本书,边学边敲,课后题也跟着做,当时是第一次接触DFS、BFS、回溯、二分、贪心、动态规划等等算法。算法导论用了一个月左右时间过了一遍,对基本的数据结构和算法有了全新的认识。10月份国庆假期之后,开始刷LeetCode,最开始一天只能刷个2-3道,因为平时还要去教室上研究生的课,利用晚上或者水课带着平板刷题,不得不说,每天过的还是很充实的,没课就去图书馆刷题,有种世界与我无关,我只管刷题上课吃饭睡觉。当然效率不是很高了,因为总有课提前结束要考试或者交大作业的,而且没有找工作的那种紧迫感。

 

算法题自己一直在坚持刷,LeetCode上搞了三个进度条,刷题数分别是456、165、306。这里解释下,第一个进度条是最远刷到的题数,后面两个进度条是重新从头开始刷,第二个是重刷了一下热题100和剑指offer,第三个是今年6月份开始重新按专题刷。因为好多题是看题解做的,做完就忘了,我不是很开窍的那种,所以我能做的就是反复刷,光剑指offer我就刷了三遍,勤能补拙,到后来面试的时候,算法题基本都是秒做。还记得快手二面一共三道代码题,十分钟不到就写完了,面试官说,小伙子,算法题没少刷啊,我俩相视一笑,我觉得代码题真是特别重要的,基本上代码题写不出来,这场面试就挂了,代码题写好了,哪怕基础弱点,也能进二面。建议大家早点开始刷题,不用刷太多,我找工作前的两三个月已经不再刷新题了,都是反复刷之前做过的,争取看到题目就能给出思路。

剑指offer

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第1张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第2张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第3张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第4张图片

 

LeetCode

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第5张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第6张图片

 

资料是免费分享给大家的,有需要的铁铁,帮忙转发一下,关注下方公众号即可100%免费获取噻

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第7张图片

 

操作系统+Linux:

 

这里还是要感谢下导师,导师是教本科生OS课的,自己报名了导师的助教,平时去教室蹭本科生大三的课,再加上帮本科生改课后作业和实验课,基本上相当于跟着学了一遍OS,不仅有助教的钱拿,还能学东西,何乐而不为,操作系统有一些知识点还是挺难的,比如进程线程区别、进程间共享机制、线程的各种状态以及转化、生产者消费者模型,这个面试有被手撕过,还有文件管理系统、存储系统、磁盘扇区、分页分段段页结合等等,还有一个值得一提的就是LRU进程调度算法,头条一面被考的这个。刚好这边是用Linux来讲解的,就又学了一下Linux。这样后续面试的时候,就很有底气的跟面试官介绍这块的内容,不用怕是自己自学的不好而说不明白。建议没学过OS的,可以看看网课,比如王道的,自己看书总感觉理解不透,也抓不住重点。Linux的话,可以自己搞个虚拟机,来个ubuntu,实际操作一下,很多命令都是敲熟了都能背下来了,常考的命令有:top、chmod、du/df、vim、head、tail、ps、kill、cat、ping、grep、cp、mv、rm、tar、diff、scp、ssh、more/less、mkdir、rmdir等等。

操作系统

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第8张图片

 

目录:

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第9张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第10张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第11张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第12张图片

 

Linux

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第13张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第14张图片

 

资料是免费分享给大家的,有需要的铁铁,帮忙转发一下,关注上方公众号即可100%免费获取

计算机网络

 

这个主要是看了周志垒老师的网课,讲的特别好,B站链接https://www.bilibili.com/video/BV1gK411n7tK/,用的是课程笔记,书籍方面主要是看了《大话计算机》那一系列书籍,主要能补全计算机网络底层的知识。

还有课件分享

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第15张图片

IO课件

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第16张图片

TCP/IP课件

TCP/IP/IO网络通信视频和课件获取,转发关注小编,关注上方公众号自行获取!

 

常考的有:

 

1、OSI七层模型、TCP/IP5层模型以及每一层常用的协议

 

2、TCP、UDP协议的区别、TCP粘包问题、数据报文的结构(应用程序+TCP/UDP报文头部+IP报文头部+以太网头部)

 

3、点对点和端对端

 

4、TCP的滑动窗口、拥塞控制过程、三次握手、四次挥手以及每个过程的状态,为什么三次四次

 

5、SYN泛洪攻击

 

6、浏览器输入url并回车的过程(①、根据域名查询域名的IP地址,DNS解析。②、TCP连接③、发送HTTP请求④、服务器处理请求并返回HTTP报文⑤、浏览器解析渲染页面⑥、连接结束。)每个过程都要很熟,要经得起推敲,不要面试官一深问就不会说了

 

7、HTTP1.0、1.1、2.0之间的区别

 

8、HTTP 和HTTPS的区别

 

9、SSL连接的过程、对称加密、非对称加密

 

10、HTTP请求的各种方法、状态码(1**、2**、3**、4**、5**)

 

11、请求行、请求头、请求体、响应行、响应头、响应体都包括什么

 

12、Session和Cookie的区别以及如何解决分布式session问题

大话计算机

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第17张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第18张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第19张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第20张图片

 

Java基础+JavaWeb+SSM+SpringBoot

 

这个我是看的马士兵的教程,基础的部分是在去年10-12月中间完成的,连带一起看了MySQL数据库相关的基础语句,B站链接,B站是个好站!https://www.bilibili.com/video/BV1UD4y1o7ms,找工作前,看了Java核心技术 卷I 基础知识那本书,适合我这种基础不好的,周围同学有看编程思想的,那个也不错。可以参考下cyc2018和java guide两位老哥关于java基础常见的问题,github上直接搜索即可。

 

JavaWeb和SSM框架也是看的马士兵的视频入门,SSM框架是在今年2-3月份才看完的,SpringBoot也是看的马士兵的,后面买了一本《SSM企业级框架实战》那本厚厚的书看了一遍,当做复习了。大厂对框架问的不多,好多就是问的IoC,AOP思想、进而引出反射和动态代理模式的问题,还有问的就是SpringBoot的几大特性,相比Spring的区别等等,大家不要把太多精力放在框架的学习上,面试问的不太多,主要还是基础和代码题。

Java核心技术 卷I 基础知识

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第21张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第22张图片

 

SSM企业级框架实战

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第23张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第24张图片

 

有需要获取完整文档用来学习的朋友,帮忙转发一下,关注下方公众号免费获取即可

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第25张图片

 

数据库MySQL

 

我学的是MySQL,刚开始也是跟着马士兵的视频来的,后续看了一下MySQL 从入门到项目实践》前几章入门的,刷了一下lc上数据库的部分就可以了。

 

常考的有:

 

1、手撕SQL语句

 

2、数据库事务、隔离级别、Innodb和Myisam的区别

 

3、锁机制(悲观锁、乐观锁、行锁表锁、独占锁共享锁等等)

 

4、MVCC、NK-Lock

 

5、索引的数据结构(B+树)、索引优缺点

 

6、最左前缀原则、索引优化

 

7、聚簇索引、覆盖索引

 

8、数据库三大范式

 

9、主从复制、主从一致、分库分表等等问题

 

后端考察数据库还是蛮多的,多看书,多看面经准备。

MySQL 从入门到项目实践

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第26张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第27张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第28张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第29张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第30张图片

 

目录太长了,文章内容太详细,就不一一展现了,有需要获取完整文档用来学习的朋友,帮忙转发一下,关注文末公众号免费获取即可

JVM

 

强烈推荐《深入理解JVM》周志明的,主要看内存管理、垃圾回收、类加载机制、双亲委派机制这几章即可,后续的JVM调优我没看,也没被问过,是加分项吧,有余力可以看。

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第31张图片

 

目录

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第32张图片

 

 

多线程并发

 

看的是《Java并发编程实战》,这本书相当经典,但是比较难啃,我也是看了两遍才把大概的框架搞清楚,之后又针对不同的知识点看的技术博客,慢慢啃透的。建议书上看不懂的地方可以去CSDN上搜一些博客,加强巩固。

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第33张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第34张图片

 

 

常考的有:

 

1、进程和线程的区别

 

2、线程安全的定义、线程的状态

 

3、多线程的实现方式(Runnable和Callable的区别)、start/run方法的区别

 

4、wait()/notify()/sleep()/yield()/join()几个方法的意义

 

5、notifyall()这块涉及到资源池和锁池,可以加深理解下

 

6、线程池的创建方式,7大参数、阻塞队列、拒绝策略、大小如何设置

 

7、锁机制:乐观锁CAS、悲观锁synchronized和ReentrantLock、实现原理以及区别,非常重要,基本每次必问,可以多掌握一些,看到源码层面,每次这块我都能给面试官说五到十分钟不停。

 

8、锁优化:偏向锁、轻量级锁、自旋锁、适应性自旋锁、锁消除、锁粗化等

 

9、Java内存模型和volatile的原理,以及volatile和synchronized区别

 

10、ThreadLocal线程本地存储原理,源码层面

 

11、内存泄漏问题

 

12、AQS同步队列器原理,CLH队列

 

13、AQS组件:ReentrantReadWriteLock、CountDownLatch、CyclicBarrier、Semaphore原理掌握

 

14、JUC原子类,原理:CAS+volatile + native方法来保证操作的原子性

 

15、集合框架的多线程实现类:CopyOnWriteArrayList、CopyOnWriteArraySet、ConcurrentHashMap、ConcurrentSkipListMap、ConcurrentSkipListSet、ArrayBlockingQueue、LinkedBlockingQueue、ConcurrentLinkedQueue、ConcurrentLinkedDeque

Redis缓存和MQ消息队列

 

这两个现在基本也是秋招必备的了,当然还有SpringCloud,SpringCloud我没学,腾讯二面问到了,没答上,就凉了。

 

Redis的话可以看《Redis设计与实现》这本书,mq我没有特意看书,是在项目中用到了,就上网上找了点博客,加深理解了一下。Redis考察的点还是挺多的,京东二面问了15分钟的Redis。

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第35张图片

 

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第36张图片

 

以上资料均免费和大家分享,只需要帮忙转发一下,私信【学习】或【资料】即可获取

 

常考的有:

 

1、Redis为什么要作为缓存? 高性能和高并发

 

2、redis和memcached的区别

 

3、redis常用数据结构、以及数据结构底层,常考到跳表的结构

 

4、定期删除、惰性删除

 

5、内存淘汰机制

 

6、持久化机制

 

7、缓存雪崩、缓存穿透、缓存击穿

 

8、并发竞争key问题

 

9、缓存和数据库双写时的数据一致性

 

10、为什么单线程还那么快?(非阻塞多路IO复用)

 

11、select、poll、epoll区别

 

12、五种IO模型

 

13、redis集群、哨兵机制

 

14、分布式锁

 

项目

 

说到项目,真的很惭愧,是烂大街的秒杀,跟那些项目大佬真的没的比,没有实习就意味着只能做网上的开源项目,面试官一看就知道项目是怎么来的,很尴尬,不过既然这样,那就尽力把项目搞熟,争取每个细节都不放过,这样面试官问起来也会对答如流,证明自己亲手做过,能做的就是不能让面试官在项目这里减分吧,加分肯定是够呛!

秋招面经

 

字节跳动提前批(三轮技术面,offer)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第37张图片

 

7.6号一面58min

 

自我介绍

 

为什么投客户端(项目是后端的)

 

网络

 

1.http和https区别

 

2.说一下加密算法(说的比较详细,面试官让简单点说)

 

多线程

 

1.synchronized和lock区别

 

2.说一下各自原理

 

3.乐观锁悲观锁说一下

 

4.syn和lock是乐观还是悲观

 

5.乐观锁有啥?原理和ABA问题

 

6.重入锁说一下

 

OS

 

1.页面置换算法

 

2.LRU缓存,让我设计LRU思路

 

JVM

 

1.说一下垃圾回收这块,知道的都说出来吧

 

2.新生代和老年代都用什么算法?

 

3.双亲委派说一下

 

4.类加载过程

 

数据库

 

1.索引作用?

 

2.索引的数据结构

 

3.聚簇索引是什么?

 

4.innodb是什么索引?

 

5.查字典是什么索引?

 

代码

 

1.单例模式(写的双重检验)

 

追问syn和volatile作用

 

2.Z字型遍历二叉树

7.13号二面55min

 

面试官没开摄像头,看不到表情,紧张+1

 

自我介绍

 

聊一下项目

 

1.项目上线了吗?(没有)

 

2.基于springboot的还是什么?数据库用的啥?(mysql)

 

3.说说依赖注入,ioc

 

4.说说aop,中间讲到了动态代理

 

5.说一下动态代理(jdk和cglib)

 

6.静态代理和动态代理区别?

 

7.项目里哪块用到aop了(说的事务管理)

 

8.redis热key问题如何解决(本地缓存,热key备份)

 

9.如何获得热key(redis-cli-hotkeys)

 

10.dns解析过程

 

11.tcp的拥塞控制

 

12.jvm内存模型

 

13.栈里面存了啥?

 

14.堆的划分,垃圾回收算法

 

15.synchronized原理,作用在哪?

 

代码题

 

1.手撕生产者消费者模型

 

2.和最大连续子数组

7.16号三面50min

 

1.自我介绍

 

2.项目介绍

 

3.md5是多少位?(答错了,应该是128位)

 

4.md5原理知道吗?可逆吗?

 

5.还知道哪些加密算法?(说了对称加密和非对称加密)

 

6.哪里用到了非对称加密?(https)

 

7.说一下https请求过程

 

8.equals和==区别(null哪个能用)

 

9.hashcode和equals

 

10.如果没有重写equals方法,那么a==b和a.equals(b)一样吗?

 

11.创建线程的方法?区别?

 

12.try catch能捕获到哪些异常?

 

13.说说注册登录怎么设计?

 

14.为什么投客户端?

 

代码题

 

1.判断两个链表是否相交

 

2.判断一个链表是否有环,求出入环节点

 

3.如果链表是有环的,那如何求两链表的相交节点?

招银网络提前批(三轮技术面,挂)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第38张图片

 

 

电话面26min

 

自我介绍

 

Java基础

 

1.重载和重写的区别

 

2.static和final会被重写吗

 

3.string三姐妹

 

4.jdk1.8有什么改进(没系统总结,只说了接口,hashmap,lambda)

 

5.集合类的流操作用过吗

 

6.逻辑与的短路原则

 

&与位运算有什么联系

 

&&如果前面为false,后面如果有空指针语句,会不会报异常?

 

多线程

 

1.进程线程协程区别和联系

 

2.多线程相关的关键字

 

3.synchronized可以作用在哪些位置

 

4.锁升级有哪些变化?

 

5.自动升级的条件是什么?还是会自璇多少次或者其等待线程超过多少就升级?

 

6.CAS怎么解决ABA问题

 

计网

 

1.TCP和UDP区别

 

数据库

 

2.MySQL有几种搜索引擎,区别?

 

框架

 

1.Spring IoC和AOP的理解

 

2.AOP场景

 

3.AOP注解

 

4.SpringBoot里面用了哪些starter?

 

5.项目部署有用到分布式部署吗?

 

6.springcloud?

 

7.大数据有什么了解吗?hive和hbase的区别?

 

反问:还有几轮面试?两轮技术+HR

 

视频一面30min

 

1.自我介绍

 

2.多线程了解吗?说一下哪里用到多线程了

 

3.线程池核心参数

 

4.数据库查询比较慢,怎么排查?(说了explain,sql语句优化,分库分表,用redis)

 

5.项目用到redis了,说说redis使用场景

 

6.项目用到分布式部署了吗?

 

7.分布式session存在redis哪个目录里?

 

8.redis分布式锁

 

9.垃圾回收机制

 

代码题:

 

一张表里有:分行行号,5月和6月的绩效,让统计每个分行5月和6月的排名差?说是Java也行sql也行

 

懵逼了,第一次做这种题,和面试官说了思路,没写完,面试官说时间短,说说思路吧,不写了

招银网络视频二面20min

 

1.自我介绍

 

2.为什么跨专业?

 

3.学过哪些计算机专业课?如何安排时间的

 

4.学Java的时候,哪块感觉不好学?

 

5.说说你理解的反射,应用在哪?(说了spring注解)

 

6.说说QPS是啥?跟啥有关?

 

7.如何评价电脑的性能?

 

8.双重MD5是绝对安全的吗?

 

9.如何校验第一次传进来的密码?

 

10.设计模式的七大原则?

 

11.Es为啥能保证实时性?

 

12.redis的key怎么设计?

 

13.一次一例?好像意思是每个请求使用一个密钥?什么什么的保证安全?(没听懂问题)

 

14.类的生命周期

 

15.说说知道的设计模式

 

16.说说适配器模式

中兴优招(两轮技术面,测评挂)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第39张图片

 

 

一面电话面20min

 

投的上海,问考虑南京吗?我说可以

 

自我介绍

 

Java脚本写过吗?(没)

 

计网TCP/IP四层协议

 

操作系统进程之间通讯

 

使用过Linux吗?说说常用命令

 

写过shell吗?

 

编译原理学过吗(没)

 

了解过音视频文件的结构,有解析过吗?(没)

 

奖学金拿过什么?

 

有没有发过专利,论文?

 

专业排名?

 

有个任务,本来定6天完成,突然让你3天搞定,你怎么做?

 

如果遇到困难了该咋办?

 

反问:后续还有面试吗?说还有

二面视频面30min

 

1.验证身份,学生证和身份证

 

2.自我介绍

 

3.项目经历,挑一个熟的讲一下

 

4.说一下项目架构,流程

 

5.为什么做这个项目?

 

6.项目单机的还是分布式部署?

 

7.消息队列技术的优点

 

8.消息队列放到内存还是磁盘?放磁盘为什么还这么快?(蒙了!面试官让课后了解一下)

 

9.md5解释一下

 

10.如何保证http请求安全?(答:用https)

 

11.说一下https原理,加密算法解释一下

 

12.意向工作地可选范围?

 

13.为啥来南方读研?

 

14.未来两三年工作规划?

 

15.技术栈Java,能考虑换c吗?

 

16.中兴能吸引你的地方?

 

17.有什么爱好?

 

18.三个词形容自己性格

 

19.在哪了解到中兴招聘的?

 

20.进公司能为公司带来什么?

 

21.能接受加班的范围?

 

22.反问:问了部门业务(答:路由器,机顶盒和音视频处理)

京东提前批(两轮技术、一轮HR,offer)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第40张图片

 

 

7.14号一面55min

 

1.自我介绍

 

2.介绍项目,负责哪块,上线了吗?

 

3.如何保证redis和数据库一致性?(答:延时双删)

 

4.延时双删的时间精度?

 

5.项目有要求时间精度吗?(答:毫秒级的,没做更多要求)

 

6.说说mq原理,怎么保证消息接受顺序?

 

7.对比其他mq,有什么区别,怎么选型?

 

8.项目压测了嘛?(Jmeter)

 

9.arraylist,linkedlist,hashset区别和使用场景,线程安全?

 

10.hashset为什么是随机的?其他两个是按存入顺序的?

 

11.说说类加载过程(5步)

 

12.双亲委派模型好处?

 

13.new子类的时候,子类和父类静态代码块,构造器的执行顺序

 

14.进程和线程的区别

 

15.如何创建线程?

 

16.runnable和callable区别

 

17.线程池相关

 

18.synchronized和lock区别原理

 

19.tcp三次握手四次挥手工作在哪一层?

 

20.说一下三次握手过程和状态

 

21.用过序列化和反序列化吗?(没用过,只知道理论)

 

22.设计模式了解哪些?(没深入问)

 

23.代码题

 

(1)链表反转

 

(2)int数组,实现偶数在前,奇数在后,不改变相对顺序

 

24.反问:如果能通过面试,后续还有几轮?

 

答:不清楚,但肯定是有面试的

7.16号京东二面50min

 

面试官人超级好,打call!

 

1.简单聊天

 

2.说说项目

 

3.各种redis相关的问题,大概有15分钟

 

4.线程池参数

 

5.Reentrantlock原理

 

6.AQS原理,里面有几个队列?(CLH+条件队列)

 

7.ThreadLocal原理,同时引出内存泄露

 

8.事务的特性

 

9.隔离级别

 

10.解释一下幻读

 

11.索引的结构,为啥用B+树?

 

12.乐观锁CAS原理解释一下?怎么获取到内存对应的值?(说了native方法获取offset,然后偏c语言底层了,面试官也没为难)

 

代码题

 

1.二分法找排序数组中绝对值最小的元素

 

2.链表两两反转

 

反问:

 

1.面试官是负责哪块业务的?

 

答:京东零售,推荐算法相关的,根据用户搜索智能推荐商品

 

2.如果能通过面试,是加入您这边部门吗?(因为我投的是国际化业务,但是被京东零售发起的面试)

 

答:是的

 

3.后续还有几轮面试?

 

答:如果通过,就是HR面了

京东HR面7min

 

1.自我介绍

 

2.有实习经历吗?

 

3.说一下你在其中的一个项目中最有成就感的事

 

4.性格是什么样的?

 

5.了解过我们这边是做什么的吗?

 

6.为什么对我们这个业务比较感兴趣?

 

7.在看其他校招机会吗?

 

8.在北京吗?如果面试通过,能参加实习吗?

 

9.反问:后续还有面试吗?

 

答:7.31号之前会完成所有的校招流程,之后就进入校招组HR的offer流程,本次是最后一次面试。

招行总行提前批(一轮技术,一轮综合,offer)

 

7.17号一面20min

 

一共四位面试官,轮流提问

 

1.自我介绍

 

2.本科研究生成绩排名

 

3.挑一个熟悉的项目介绍一下

 

4.redis怎么用的?

 

5.怎么保证redis和数据库一致性

 

6.说一下进程通信机制

 

7.说一下反射机制

 

8.mysql主从复制的同步方式有几种?

 

9.springboot特点?启动方式

 

10.用过maven吗?pom.xml如何配置

 

11.内存泄露的场景

 

12.介绍一下比赛负责了哪部分?

 

13.char和varchar区别?

 

14.关系型数据库和非关系型数据库区别?

 

15.Linux如何查看所有文件系统占多少磁盘?(只知道查看进程占用内存用top,文件系统忘了)

 

16.意向工作地

8.7号二面8min

 

1.自我介绍

 

2.笔试题感觉怎么样?有难度嘛?哪块做的不太好

 

3.附加题做了吗?(没有。。。)

 

4.研究生保送的吗?学硕还是专硕?

 

5.有实习经历吗?

 

6.有投其他公司吗?

 

7.为啥选择国企银行类的公司?

 

8.有组织过什么学生活动吗?

 

9.本科研究生排名?

新浪微博提前批(两轮技术,泡池子中)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第41张图片

 

 

7.28一面25min,面试体验贼好

 

1.自我介绍

 

2.说一下hashmap实现

 

3.说一下线程安全的hashmap

 

4.虚拟内存介绍一下

 

5.redis持久化机制

 

6.Innodb引擎的特点

 

7.还知道其他引擎不?

 

8.代码题(真正的手撕代码!用笔纸写,拍照发过去)

 

一万行文件,每行是一个int数据,统计出现次数top10

 

9.海量数据top100问题

 

10.能来实习吗?

 

11.反问:面试官部门负责哪块业务的?

 

答:负责刷新微博,热搜排名top等相关业务,面试官贼有耐心,还给我讲了一些高并发的东西,受教了!

7.31二面10min

 

1.自我介绍

 

2.项目介绍

 

3.问了问项目的细节

 

4.反问:还有面试嘛?

 

答:HR会联系的

OPPO提前批(两轮技术、一轮HR,offer)

 

8.1号OPPO一面30min

 

1.自我介绍

 

2.项目介绍,挑一个熟悉的讲

 

3.项目瓶颈,如何应对的

 

4.redis用来干嘛?

 

5.如何避免重复下单?

 

6.mq如何实现削峰?

 

7.用到了哪些redis的数据结构?

 

8.String类型底层原理说一下?

 

9.如果String里有多个key-value,那怎么存储?

 

10.说一下set和sortedset底层结构

 

11.项目里用到threadlocal了,说一下原理,这里引出了内存泄露,又问了一下内存泄露相关的

 

12.前缀树了解吗?说一下结构?

 

13.如果要添加到前缀树里的元素比较多,内存放不下怎么办?(说了用B+树类似的结构)

 

14.说一下网络三次握手的过程

 

15.为什么三次握手?

 

16.拥塞控制过程说一下

 

17.算法题:给一个字符串,输出合法的ip地址

 

口述思路即可(用了三层for循环,面试官说可以)

 

18.有什么爱好吗?

 

19.觉得计算机相关课程哪个最难?怎么学的,分数怎么样?

 

20.反问:还有几轮面试?

 

答:一共2-3轮

8.7号OPPO二面30min

 

1.自我介绍

 

2.关键词搜索怎么做?说说Es

 

3.说说下订单的过程

 

4.如何避免重复下单

 

5.如果手机端和pc端同时登陆,就想下两次单,应该怎么办?

 

6.面试官提示说可以不一定要在服务端生成订单,可以考虑在请求的时候,或者用一些订单生成算法?

 

7.redis库存用的什么结构?

 

8.如何保证库存一致性?

 

9.库存多了或者少了有啥影响?

 

10.分布式锁

 

11.下订单和付钱的事务怎么控制?

 

12.如果有人下订单未付钱如何回滚事务?

 

13.那回滚库存之后,和redis不一致如何处理?

 

14.如果硬要保证redis和db库存一致,如何保证?

 

15.终于不问秒杀了!说说concurrenthashmap如何保证线程安全的?

 

16.说说synchronized锁升级的过程

 

17.自己部署过什么服务器吗?

 

18.Linux用过哪些常用命令?

 

19.除了concurrenthashmap还有哪些线程安全的集合?

 

20.BlockingQueue的add,put和offer的区别?(懵逼了,好像只用过offer)

 

21.arraylist线程安全对应的集合是什么?

 

22.CopyOnWriteArraylist原理说一下,如何安全的?

8.8号HR面20min

 

1.用三个词介绍自己

 

2.四六级多少?

 

3.哪一年出生的?(面试官说我是不是提前上学了,是在暗示我年龄小吗,哈哈)

 

4.意向工作地?

 

5.找工作考虑的因素?

 

6.自己喜欢的方向?

 

7.为什么转专业?

 

8.为什么对计算机感兴趣?

 

9.期望薪资多少?为什么这么要?

 

10.还收到其他家offer了吗?别人家给了多少(说一下范围即可)

 

11.说一下自己团队合作的项目,自己负责什么?做了哪些成果?

 

12.如果团队意见不一致怎么解决?能还原一下之前意见不一致的场景吗?

 

13.自己在项目中的角色?为什么没当负责人?

 

14.自己在团队中的贡献?

 

15.如果再做一遍这个项目,会有什么效果?

 

16.优缺点?

 

17.兴趣爱好?

 

18.为什么有这个爱好?

 

19.最近关注的社会现象?

 

20.对这个现象的看法?

 

21.最欣赏的人?原因?

百度提前批(三轮技术+一轮综合面,offer)

 

8.3号百度一面电话面44min

 

1.自我介绍

 

2.硕士方向是啥?

 

3.介绍一下项目(从三个角度:解决问题、负责哪块、怎么实现)

 

4.项目上线了吗?

 

5.有一些架构是师兄师姐们搭建好的吗?

 

6.项目涉及到几个服务?怎么部署?

 

7.遇到的困难?挑一个讲一下

 

8.为什么转专业?

 

9.为什么用ThreadLocal?(裂开!ThreadLocal这个揪着问了10分钟,后来实在说不下去了)

 

10.ThreadLocal能解决什么问题?

 

11.ThreadLocal能解决分布式session问题吗?

 

12.线程内部共享,不同线程独享,这个和分布式session矛盾吗?

 

13.开始搬出ThreadLocal源码,balabala说一顿,感觉面试官还是说我理解的不对,还让我说!

 

14.多线程访问一个变量有什么需要注意的?

 

15.又来ThreadLocal,那ThreadLocal需要加锁吗?(崩溃!)

 

16.进程线程协程区别?

 

17.线程的切换和协程的切换有什么区别?

 

18.为什么协程切换开销少?

 

19.线程进程协程在并发访问变量的时候,都有什么措施?

 

20.多协程访问编程需要加锁吗?

 

21.说一下DNS域名解析是哪一层?用的TCP还是UDP?

 

22.说一下DNS解析过程

 

23.www.baidu.com哪个是根域名,顶级域名,权威域名

 

24.TCP三次握手过程

 

25.为什么三次握手

 

26.如何判断客户端和服务端已经建立链接?

 

(答的用netstat查看,面试官说想问的不是这个,面试官提醒说可以查看数据包)

 

27.哪几个元素可以识别TCP连接?(从底层说,比如源IP,源端口,源mac?)

 

28.IP数据包如何判断是tcp还是udp连接的?

 

29.Linux用过吗?

 

30.如何查看进程?

 

31.如何查看占用cpu最多进程?

 

32.简述快排

 

33.反问:学习建议?

 

答:要把知识点扣的细一些。

8.5号百度二面电话面40mi

 

1.一面感觉怎么样?

 

2.针对一面没答出来的再说一下?

 

3.两个项目介绍一个能体现出来自己实力?

 

4.说一下项目的技术点和难点

 

5.怎么得出数据库是瓶颈的结论?(说的压测发现数据库占用cpu最多)

 

6.你是感觉数据库占据cpu最多就是瓶颈了吗?

 

7.别的地方还有瓶颈没?

 

8.项目里应该有蛮多环节,其他环节或者模块考虑过瓶颈问题吗?(没有。。。。)

 

9.如何应对高并发?

 

10.如果没有redis,数据库如何应对高并发?(答了分库分表)

 

11.数据库占据cpu多,那是select语句还是update语句或者其他语句占据多?

 

12.如何优化查询?(说了加索引,面试官问,加索引就行了嘛?)

 

13.如果把并发量再提高到1000万,如何应对?(答了negix负载均衡以及放出少量请求,负载均衡被否了,后者说可以)

 

14.又聊到限流降级组件

 

15.说一下内存管理中的逻辑地址转换成物理地址的方法

 

16.DNS解析过程?

 

17.知道根域名服务器有多少个吗?(之前看过,忘了。。。)

 

18.如果本地DNS服务器查不到,那是所有的都要去查根域名服务器?那全球的根域名服务器压力不会很大吗?

 

19.进程的调度方式?Java用的哪个?(抢占)

 

20.为啥要有非抢占方式?

 

21.说一下arp协议的过程

 

22.知道arp欺骗吗?

 

23.Linux用的多吗?(不多,没追问)

 

23.算法题

 

两个有序数组,找合并后的中位数

 

先说了O(n)的方式,后来又说了O(logn)的方式

 

24.反问业务:百度智慧云相关的~

8.12号百度三面45min

 

1.说说自己前两面表现怎么样?

 

2.问几个Linux命令吧(我说Linux不怎么熟)

 

(1)如何查到a.txt文本中字符b出现的行

 

(2)找到上述行中的最后一列

 

(3)如果最后一列是10 20 10 30,那么如何统计每个数字出现的次数,比如输出2~10 1~20 1~30

 

(4)如果系统卡顿,如何排查,为什么要查cpu占用率?如果不排查会怎样?排查之后做什么?

 

3.算法题:

 

(1)根据二叉树后序遍历和中序遍历输出前序遍历

 

(2)实现两种降序排序(快排,堆排)

 

(3)上述两种排序的时间复杂度,如果已知每个数的区间是[l,u),如何用O(n)的时间复杂度排序

 

4.ping是哪个协议?说一下ping的过程

 

5.ping可以ping端口吗?(不可以)

 

6.说说项目的难点,如何解决的?

 

7.如何技术选型?

 

8.了解我们部门吗?(不了解。。。)

 

9.可以接受加班吗?

 

10.未来3-5年之内的规划

 

11.能提前实习吗?

 

12.逻辑题:8个球,有1个是轻的,通过天平最少测几次能找出(2次)

 

13.目前有别的offer吗?

 

14.期望工作地?

 

15.反问:大概多久出结果?

 

答:1-2周,HR比较少,技术面进度快,HR面比较慢

8.19四面54min

 

类似于HR面,但又比正常的HR面聊的多很多,之前说是加面,搞不懂到底是什么面,大概涉及的问题:

 

1.为什么转专业?(问了好久好久。。。)

 

2.自己跟本硕都是计算机的同学的优势和劣势?

 

3.用专业术语详细描述一下本科的一个机械类的比赛

 

4.完成一个项目的流程都有哪些考虑的因素?

 

5.为什么感觉互联网公司有前景?

 

6.有没有持之以恒的坚持一件事?

 

7.对公司的选择主要考虑哪些因素?(让实话实说)

 

8.如果有多个大厂offer,会怎么选?

 

9.如何看待加班?

 

10.互联网公司的缺点?

 

11.未来3年的规划?

 

12.觉得什么时候算是技术学成了?(我答的是等到leader放心把一个业务交给我的时候,哈哈哈)

 

13.如何看待35岁的事?

 

14.压力大怎么处理?

 

15.本硕成绩排名?

 

16.有没有列一个清单,最近要学的东西?

 

17.喜欢看书吗?

 

18.家里几个孩子?父母做啥的?

 

19.感觉你一直在避开一个问题,就是本科不是计算机的劣势?

 

20.薪资怎么考虑的?是第一选择标准吗?

 

21.又来转专业的事,看你机械的成绩也很高,为啥改行计算机?兴趣在哪?真的吗?

 

22.为什么大一不转计算机!!!!

 

23.除了在实验室学习,还喜欢做啥?

 

24.喜欢旅游,都去过哪些地方?

 

25.为什么不从事算法?

 

26.算法是用来干嘛的?

 

27.如果到公司了发现做的东西和自己期望不一样怎么办?

 

28.为什么研究生选**学校?离家不会太远吗?

 

29.研究生保研还有别的学校offer吗?为啥选**?

 

30.希望从公司学到什么?

猿辅导(一面挂,全程45分钟,问了30分钟计网,顶不住)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第42张图片

 

 

1.自我介绍

 

2.介绍一下项目

 

3.用到md5加密了,过程说一下?

 

4.md5只用一次不行吗?

 

5.md5可逆不?

 

6.除了md5还了解别的加密技术吗?

 

7.说说对称加密和非对称加密?

 

8.说说https加密过程

 

9.说一下验证证书合法性的过程(信任链)

 

10.一个证书只能加密一个域名吗?子域名可以不?(可以)

 

11.https是对请求头还是请求体加密?

 

12.除了get和post,还用到别的方法了吗?

 

13.put是干嘛的?它有请求体吗?

 

14.请求头请求体都包括啥?

 

15.content-length一定有吗?如果数据特别长,一次都能读取吗?那length表示的是每次读取的长度还是总长度?

 

16.请求体的数据结构?(json,xml之类的)

 

17.长连接是干啥用的?举个场景说

 

18.长连接的连接数有限制吗?

 

19.跨域了解吗?

 

20.cookie支持跨域吗?

 

21.cookie可以包括哪些类型的数据?

 

22.rabbitmq有几种工作模式?

 

23.自己用的哪种?

 

24.mq里的订单如何删掉?(设置过期时间)

 

25.算法题

 

反转链表,迭代+递归两种都写

网易互联网(三轮技术+一轮HR,offer)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第43张图片

 

 

8.18网易有道一面50min

 

面试体验贼好,面试官很准时,先介绍了一下部门和业务

 

1.自我介绍

 

2.项目介绍

 

3.技术栈用的什么框架?(springboot和ssm)

 

4.说说spring的ioc和aop

 

5.有自己用过aop吗?(刚好项目里有一块用到,就说了)

 

6.ip是什么?v4和v6的区别?

 

7.子网掩码作用?

 

8.tcp说一下(三次握手,四次挥手)

 

9.tcp滑动窗口的原理和作用?

 

10.为什么三次握手?

 

11.http常用的方法

 

12.https和http的区别?

 

13.说一下ssl/tls过程?

 

14.服务端申请证书,客户端验证证书过程详细说一下

 

15.知道http的长连接吗?举个场景说一下

 

16.tcp三次握手四次挥手过程中客户端和服务费的状态?

 

17.回到spring,说说aop的原理(动态代理)

 

18.说一下动态代理吧

 

19.反射的原理?怎么获取到方法的?

 

20.说一下类加载的过程

 

21.双亲委派解释一下?为什么要用双亲委派?

 

22.代码题

 

(1)写一个线程安全的单例模式

 

(2)搜索旋转数组最小值,比如在[3,4,5,1,2]中找到1最小

 

(3)二维数组,从左上到右下路径的最小值,只能向右和向下走

 

面完试一个小时,收到二面通知,许愿二面

8.20二面40min

 

1.自我介绍

 

2.说一下多线程了解哪些?

 

3.提到了AQS,说一下原理

 

4.知道哪些AQS组件?

 

5.countdownlatch原理

 

6.cyclicbarrier原理

 

7.select,poll,epoll三连

 

8.epoll的触发方式?水平触发,边缘触发区别?

 

9.数据库事务隔离级别,分别产生什么问题?

 

10.Innodb默认在哪个级别?如何保证事务的?

 

11.NK-lock记录锁,间隙锁如何保证的?

 

12.ThreadLocal工作原理?

 

13.四大引用(强软弱虚)区别?

 

14.内存泄露

 

15.智力题:10个苹果分三堆,每堆不为空,有多少种分法?

 

16.算法题:最长递增子序列,如有多个,按照字典序输出第一个。

 

比如:[1,2,8,4,6]要输出[1,2,4]

 

17.反问:一共几轮面试?

 

答:三轮技术面,一轮HR面

 

面完一小时,约明天总监面,但是明天自己有事,改到下周面,效率很高

8.28总监面35min

 

面试官是个北大的大佬,看着就很大佬那种

 

1.自我介绍

 

2.为什么转专业?

 

3.计算机专业课怎么学的?

 

4.技术栈是什么?

 

5.实验室方向?

 

6.哪块学的比较好?

 

7.操作系统怎么样?进程间通信机制?

 

8.通信机制自己有动手实现吗?

 

9.http介绍一下,与https的区别?

 

10.怎么实现持久性登录?(cookie/session)

 

11.建堆的时间复杂度?堆排序过程口述一下

 

12.家是哪的?工作计划是什么?

 

13.代码题:一个字符串里面,找出所有以"139"和"186"开头的符合长度的电话号码。

 

字符串里不一定都是数字,还有可能有别的字符

 

14.反问学习建议?

 

答:可以多写代码提升自己的工程能力

 

面完半小时,约当天HR面

8.28HR面15min

 

1.面试官介绍

 

2.自我介绍

 

3.为什么投Java开发?

 

4.未来工作规划?

 

5.还拿了哪些offer?

 

6.为什么选择投递网易?

 

7.期望薪资?

 

8.如果多家offer,你会怎么选?

 

9.别人家给多少工资?

 

10.面试流程中还有哪些?

 

11.选择offer的因素?

 

12.反问:会被分去哪个部门?

 

答:现在还不清楚,然后HR给介绍了好长时间网易的工作氛围和企业文化,很耐心。

快手提前批(三轮技术+一轮HR,offer)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第44张图片

 

 

8.29号一面50min

 

1.自我介绍

 

2.项目介绍

 

3.关于秒杀项目的一系列问题:

 

(1)redis怎么用的,都存了什么?mq怎么用的?

 

(2)mq用了几个worker?如何保证顺序消费?

 

(3)压测的结论是什么?原因?

 

(4)如果持续增大并发量,哪个模块会出问题?如何解决?

 

(5)数据库主从复制的延时问题如何解决?

 

(6)mq堵塞了怎么办?

 

(7)多worker会不会对数据库产生压力?如何解决?

 

(8)如何避免重复下单?

 

(9)客户端如何知道自己下单成功?

 

4.设计模式知道哪些?

 

5.秒杀项目中用了什么设计模式?

 

6.秒杀中mq的部分用到了什么设计模式?

 

7.代码题:两个字符串A,B,找到A中覆盖B的最短的子串?

 

8.反问:部门业务?

 

答:商业化部门,广告,流量变现之类的

 

面完十分钟,约了当天下午二面

8.29号二面50min

 

1.自我介绍

 

2.项目介绍

 

3.自己负责的部分仔细讲一下?

 

4.TrieTree前缀树结构讲一下

 

5.ThreadLocal原理说一下?

 

6.为什么key用弱引用?如何避免内存泄露?

 

7.四种引用类型说一下

 

8.美国大学生数学建模竞赛解决的问题?(大二搞的,太久了,都没准备,尴尬)

 

9.三次握手、四次挥手各个阶段的状态

 

10.为什么关闭的时候要等2MSL时间?

 

11.洪泛攻击知道吗?如何避免?

 

12.GC机制和类加载机制说一下?

 

13.为什么分为新生代和老年代?

 

14.为什么分成e区和两个s区?比例为什么8.1.1?

 

15.垃圾回收器知道哪些?更新一点的知道吗?

 

16.说一下G1收集器的过程

 

17.Innode引擎都知道什么?

 

18.事务的底层是怎么实现的?

 

19.binlog中都有啥?如何回滚,如何提交?

 

20.mvcc解决了什么问题?

 

21.如果只有一条select语句,它加锁吗?

 

22.如果一条delete语句,如何加锁?

 

23.主键加锁吗?

 

24.聚簇索引和非聚簇索引如何加锁?

 

(蒙了蒙了,彻底蒙了。。。。)

 

面试官笑了一下,说:没事,我就只是问问

 

25.代码题

 

(1)一次买卖股票的最大收益

 

(2)多次买卖股票的最大收益

 

(3)打印二叉树中所有路径和为sum的集合

 

面完十分钟,通知二面过了,约了下周三面

9.1号三面30min

 

1.自我介绍

 

2.项目介绍

 

3.抖音和快手的区别?

 

4.有实习经历吗?

 

5.挑一个锻炼自己的项目详细介绍

 

6.redis为什么快?

 

7.redis持久化机制?

 

8.redis缺点?

 

9.redis会不会造成数据丢失?

 

10.redis饱和怎么办?什么策略?

 

11.分数排行榜应该用redis哪个数据结构?

 

12.说说跳表结构?为什么不用哈希表?时间复杂度?

 

13.平时怎么学技术?

 

14.最近看什么书?

 

15.spring框架好用吗?说说理解的框架的优点?

 

16.反问:学习建议?

 

答:基础很扎实,以后多参加项目锻炼更好。

9.5号HR面25min

 

1.自我介绍

 

2.意向工作地?

 

3.选择工作的因素?

 

4.拿了别人家offer吗?有谈薪吗?如何选择?

 

5.有没有实习?

 

6.在导师合伙的公司主要负责什么?有没有团队合作?

 

7.平时用快手吗?用抖音吗?区别?

 

8.用快手都来干什么?直播买货还是纯娱乐?

 

9.有人说快手比较接地气,你怎么理解?

 

10.保研的条件?

 

11.学习路上有什么困难吗?如何解决的?

 

12.可以实习吗?

 

13.反问:新人培养怎么样?

 

答:导师制,不会立马就给需求,导师一对一带

阿里本地生活(三轮技术面,又被另一个部门捞,还在池子中。。)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第45张图片

 

 

一面45min

 

自我介绍

 

项目介绍

 

项目框架?

 

SpringBoot介绍一下优点?

 

Redis持久化机制

 

Redis为什么快?

 

TrieTree前缀树介绍一下

 

前缀树用来干嘛了?

 

CAS原理说一下?

 

多线程都有哪些锁?

 

synchronized和lock区别?

 

说一下生产线消费者模型的实现方式?

 

mvcc知道吗?解决什么问题?

 

数据库的题:求两张表分数唯一的name

 

代码题:给定一些时间区间,判断一个时间点是否在区间里。(先合并区间,再排序,二分查找)

 

回顾笔试第二题,为什么只跑了30%?我说剪枝没时间了,全排列之后就提交了。

9月6号二面40min(没录音,好多问题忘记了)

 

没有自我介绍,直接来项目,各种深问原理

 

1.秒杀项目一系列问题(涉及到超卖,重复下单,数据不一致,交易系统,事务管理,客户端轮询反馈,第三方支付,数据库表的结构,各个表之间的关联等等)

 

2.数据库索引的底层实现?B+树说一下

 

3.数据库如何加行锁?

 

4.事务的底层原理?

 

5.主键自增的底层是如何实现的?

 

6.jvm内存模型

 

7.GC机制

 

8.类加载机制

 

9.双亲委派模型

 

其他问题想不起来了。。。

 

后来面试官介绍自己部门业务介绍了好久,得有十分钟,很耐心,祈祷三面!

9.8号总监面45min

 

都是开放问题,涉及到并发场景下数据结构的选取,计网挖的也比较深,还有一些项目的问题

 

很奇怪,阿里三面是通过的,后面没有被发起第四轮面试,等了两周,被菜鸟部门捞起来,应该是之前的部门招满了,还是要早点投。

美团点评(三轮技术面+一轮HR面,offer)

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第46张图片

 

 

9.10号一面1h

 

1.自我介绍

 

2.为什么转专业?

 

3.本科接触过哪些编程?

 

4.本科研究生成绩排名?

 

5.数学建模比赛负责什么?

 

6.秒杀系统介绍一下?为什么要引入redis?

 

7.还知道其他缓存吗?

 

8.memcached和redis区别?

 

9.redis支持多核吗?

 

10.多核是啥意思?并行并发的区别?用专业术语描述一下

 

11.redis的value支持多大?

 

12.redis的过期策略?

 

13.100k的数据适合用memcached还是redis?(应该是memcached)

 

14.mq有几种?区别了解吗?(rabbitmq,rocketmq,kafka区别)

 

15.七层网络协议都有哪些?

 

16.TCP/IP五层有哪些?为什么分层?

 

17.交换机,路由器是哪一层?物理层是啥?

 

18.TCP和Http的区别?

 

19.http是基于tcp还是udp?

 

20.长连接说一下

 

21.tcp的报文头?有报文长度吗?

 

22.tcp和udp区别?

 

23.粘包问题怎么解决?(添加报文长度、每个报文结尾加分隔符、报文设置固定长度、发送方关闭nagle算法)

 

24.滑动窗口,拥塞控制说一下,窗口满了怎么办?缓冲了解吗?

 

25.四次挥手状态位?客户端处于finwait1的时候还能给服务端发数据吗?

 

26.int和Integer区别?

 

27.定义一个Integer,存在哪?

 

28.堆和栈区别?

 

29.重载和重写区别?

 

30.一个类中可以重写方法吗?

 

31.线程池的优点?

 

32.多线程解决的问题是什么?有缺点吗?

 

33.死锁解释一下?如何解决?

 

34.调用start和run的区别?sleep和wait区别?

 

35.垃圾回收算法有哪些?在哪里进行?

 

36.全局变量存在哪?

 

37.代码能力怎么样?1-10打分,如何打分?

 

38.跟代码能力特别强的同学的差距在哪?

 

39.代码题:冒泡排序

 

先写了个普通的冒泡,之后问如何优化一个已经排好序的数组的输出,之后又让递归写冒泡排序。

9.16号二面1h

 

1.先做算法题:

 

删除链表中节点值等于target的节点。

 

不创建辅助节点该怎么做?

 

2.深拷贝和浅拷贝的区别?

 

3.项目相关问题

 

4.场景题:微博大V每次发微博,如何设计一个接口,给大V的所有粉丝进行推送消息?

 

刚开始说用消息队列,后来面试官说如果大V是话痨,队列满了就不行。而且按照主题监听,需要设置特别多主题,因为有很多大V也不行。

 

后面主要是围绕设计数据库,如何互关,如何建表,等等说的。

 

这块有聊了二十分钟左右。

 

5.性格上有什么缺点?

 

6.哪些offer,怎么选择?

 

7.反问:部门业务?

 

答:美团平台,地图搜索组

9.18号三面45min

 

1.自我介绍

 

2.项目介绍?了解c++吗?

 

3.秒杀系统介绍一下?为啥引入redis?

 

4.为啥redis快?

 

5.其他缓存了解什么?区别?

 

6.在导师合作公司都干了什么?(人脸识别相关)

 

7.介绍一下你的人脸识别检测系统(这块说了十分钟左右)

 

8.秒杀系统压测了吗?如果继续增大并发量,那么接下来的瓶颈是什么?如何解决?(mq)

 

9.做题:字符串翻转(abc→cba)

 

说实话,碰到这个题我惊呆了,我和面试官确认了两遍题目,面试官说对,就是反转字符串!

 

10.redis和mysql区别?

 

11.之前参加的比赛有没有创新点?介绍一下

 

12.毕业设计方向是什么?有没有创新点?

 

13.其他家offer有没有偏向的?想去哪?

 

14.以后规划?

 

15.面试官后面介绍说自己组里是做搜索的,有工程和算法,以后有机会也可以进去转算法之类的,面试官人很nice~

 

16.面试官介绍自己部门差不多5min

9.23号HR面15min

 

1.自我介绍

 

2.挑一个对自己挑战大的项目说一下,遇到什么问题?如何解决?

 

3.团队分歧怎么看?

 

4.了解我们部门业务吗?

 

5.家在哪?父母做什么的?意向地?

 

6.如果能拿到offer,能实习吗?

 

7.还有其他offer吗?想去哪?

 

8.为什么知道美团的Java比较好?

 

9.反问:新人培养,公司有5天培训,之后部门有导师带,定期分享会等等~

 

10.反问:什么时候有结果?答:1-2周之内

总结

 

有时候你觉得工作离自己很遥远,但是往往事与愿违,第一场面试连自我介绍都磕磕巴巴,到后来甚至还可以跟面试官扯扯皮,这就是成长吧。曾经也无数次担心基础不好和专硕时间短没时间准备而找不到工作,既然选择了改行,就只能咬牙坚持了,特别喜欢一句话:"努力交给自己,剩下的交给时间"。

 

面试挂、笔试挂这些都不重要,还记得秋招第一家vivo提前批笔试就挂了,第二家TP-LINK简历挂,第三家招银网络提前批面试挂,大家都是从不断的挂中起来的,每次面完试做好复盘,找好自己哪块还薄弱,针对性的去复习,总会有几家面试是刚好对上眼的,就是问的都是你会的那种,如果你还没遇到,说明面的还不够多,哈哈。而且面试运气也很重要,有的面试官就特别好,会指引你一步一步来,不懂的还给讲解和提示,而且代码题也不难,相反,有的面试官就很刁钻,偏问你不会的,答不上来就说你基础不好。所以不要太在意每场面试的结果和面试官的评价,积累面经才是最重要的,这次不会的,下次保证不会错就好了。

 

好了,秋招之旅到这就彻底结束了,面经来的有点迟,同届的同学应该已经都找好工作了,就当记录一下秋招,顺便给后面在黑暗中摸索的人一点经验,不一定适合所有人。如果大家喜欢的话可以帮忙转发一下,让更多的人可以看见,希望大家都能拿到自己想要的offer。

不管怎么样,早做准备对自己的面试肯定是有帮助的,以上我的学习方式或许可以助你一臂之力。

如果你需要文章中提及的任何资料,只需要动动手指:

对文章转发和评论,点点关注,然后关注下方公众号就可以免费获取文档啦~

985硕,阿里、字节、美团三面,拿下阿里P6+字节offer_第47张图片

 

你可能感兴趣的:(面试,Java,架构,队列,lamp,scipy,makefile,crm)