农业末流211“自学Java一年”四面拼多多+三面字节跳动成功拿下Offer!

博主是农业末流211大学计算机专业学生,自学Java一年,成功通过拼多多和字节跳动的面试,拿到 Offer。在拼多多经历了包括基础、并发、数据库、算法等方面的面试,字节跳动的面试侧重于底层基础和C++/Go方向,同时涉及面试官的引导和帮助。整个过程中,博主展示了扎实的Java基础和学习能力。
摘要由CSDN通过智能技术生成

个人背景

农业末流211,学校的强专业在农学那边,计算机专业很弱,Java自学快满一年

拼多多

时间线

  • 3.22 在牛客里找了一个拼多多的内推人,投递简历。
  • 4.7 在线笔试,好像4道a出2道半
  • 4.13 通知进入面试环节,填写应聘登记表
  • 4.15 一面
  • 4.20 二面
  • 4.23 三面主管面
  • 4.29 HR面
  • 5.10 应聘信息确认(感觉offer马上到)
  • 5.12 OFFER LETTER(有5天的意向确认时间)

4.15一面50min

感觉挺难,面试官全程严肃还时不时叹气(弄得我很慌 😂 😂 😂)。。。

自我介绍

简单介绍项目,怎么做的,为什么要做这个,用到了什么技术。

乐观锁、悲观锁、举例讲讲,CAS

异步同步、阻塞非阻塞,他们之间有联系吗,说说区别,再从内核的角度说说看(私下查了资料答错了)

synchronized,放在各个地方锁的是啥,一个synchronized静态方法,一个普通的synchronized方法,访问静态方法后还能访问普通方法吗,锁的对象是一样的吗。

synchronized的底层实现,知道多少说多少,和ReentrantLock的区别

Redis单线程为什么这么快(之前美团问过,但是还是有点记不清。。。)

。。。还有很多底层的问题记不起来了,一面问的都很底层基础。

最后一道算法题是二叉树方面的做了好久。。。

求一个二叉树里的2个节点的距离,二叉树每个节点的值是唯一的。

当时写的是用递归的先序遍历方式去写,面试官说往这个方向想是对的,就继续卡了挺久,面试官提醒说可以吧走过的路径记录下来,

提醒到这差不多有思路了,就用栈去记录遍历的节点,还是递归先序遍历,当遍历到2个节点中的一个时当前的 栈轨迹就是那个节点的路径(从根节点开始算起的),最后比较这2个栈轨迹就行,类似最近公共祖先,比如找节点4和5的距离如果得出是[1,2,3,4]和[1,2,5] 那他们的距离就是3,及4->3->2->5.

4.20 二面50min

一度以为一面能过的概率不大,结果过了还是比较惊喜。

二面面试官特别和善,心情很好,上来就活跃气氛,说我这里天气很好啊,在寝室吗。。。

自我介绍

问项目,问具体实现,怎么使用Redis的,myqsql有优化过吗,说说过程,登录流程,拦截器,jwt,2级缓存,部署,docker,git,

都是简单的聊,没有深入,这些技术是怎么开始去学的,碰到问题怎么解决的。

问了个ConcurrentHashMap

问了项目的实际使用情况,一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值