【Shopee】Java岗-后端面经总结

背景:本人2019届毕业的,在第一家公司干了不到两年,去年11月带我的一个领导走了,后来我开始想换个工作环境,于是在今年元旦开始着手准备,白天上班,晚上复习,为今年的金三银四做准备,虽然过程有点累,但是值得!
现已顺利入职虾皮,在此记录和分享一下自己的面经,希望对各位有所帮助!

一面:

3.14 60+分钟
自我介绍,然后问了java基础、网络、mysql、多线程等基础知识,还有框架和分布式的一些知识,做了一道算法题,记不太全了,尽量回忆一下吧。。。

说下java的集合,List,Set,Map三者的区别
ArrayList、Vector、LinkedList有什么区别
hashmap原理,底层数据结构、扩容机制,双链表和红黑树的时间复杂度是多少,有什么优缺点,为什么1.8源码达到阈值要转
hashmap是线程安全的吗?如何实现线程安全呢?怎样提高读写性能
concurrentHashmap除了分段锁,还能实现更细粒度的线程安全吗
谈下你对JVM的理解、 JVM GC有哪几种算法,分别适用于什么场景、分配担保机制、新生代为什么是两个幸存者区域,可以改进吗?
什么是协程、线程、进程,并发和并行有什么区别、线程的生命周期和状态
深拷贝、浅拷贝
TCP三握四挥
OSI七层模型包括哪些
数据库ACID、隔离机制、B树和B+树、一条sql的执行过程,做过优化吗?
Redis为什么快? 缓存穿透、雪崩、主从复制,实际应用中还碰到过哪些问题
springboot启动原理,设计模式,让你自己写一个的话,你觉得该怎么设计
分布式、RAFT协议以及在实际的应用场景

然后开始聊了下项目,大概聊了20多分钟,对自己负责的模块问的很细,建议各位在这块多多思考,做足准备,免得跟我一样,在问到项目的优化时,答的不太好,心态差点崩了…

算法题:二叉树的层次遍历

二面:

3.14
线程池了解吗? 如果让你设计一个线程池如何设计(上来就暴击…)
然后开始问项目,项目扒了个遍,二面整个过程聊得感觉还可以。

算法题:相交链表

Hr面:常规问题,有没有拿到其他公司offer,薪资,到岗情况等,然后还介绍一下虾皮的福利,传说中的1075,15天年假,货真价实的弹性上班,确实很棒!

祝大家都能拿到心仪的offer!

发表评论

后才能评论