前言

楼主来自重庆一个普通的本科大学计算机学院,自己曾经在没拿到offer时也焦虑彷徨过,大大小小的公司自己也有投过,最终在自己闭关修炼一个月后成功斩获4个offer

腾讯 csig 后台开发

  • 自我介绍

  • 项目介绍

  • JVM GC算法

  • 现有垃圾回收器有哪些

  • JVM默认垃圾回收

  • GC的难点在哪里

  • 如何判断一个类能被GC

  • ACID

  • 如何理解C

  • 数据库怎么保证ACID

  • 数据库如何在保证ACID的同时保证高并发

  • MVCC和next-key locks

  • 数据库设计的难点在哪里

  • 手撕堆排序(没写出来)

  • 手撕快排(写出来了)

  • 反问:回答得怎么样

  • 反问:实习地点

美团 闪购 后端开发

  • 自我介绍
  • 项目介绍
  • 为什么算法转开发
  • JVM GC Roots
  • 那些对象可以成为 GC Roots (忘了。。)
  • 可达性分析算法
  • 不可达是不是一定会死亡(2个标记)
  • 公平锁和非公平锁的实现
  • lambda是用了什么思想(这个没答出来,忘了,应该是函数式编程思想)
  • lambda在jvm实现
  • 反射怎么用
  • 反射在JVM中的实现
  • 泛型是什么
  • 如果一个List没用泛型,用Object代替,会有什么问题
  • 如果一个List没用泛型,用Object代替,JVM怎么判断这个元素的类型
  • ACID
  • MySQL怎么实现隔离性(Isolation)
  • MVCC怎么实现可重复读
  • MVCC各种定义
  • 如果自己设计一个数据库会怎么设计,多方面考虑
  • 算法题(输入一个数组,保证要么奇数下标的元素都是奇数,要么偶数下标的元素都是偶数,时间复杂度O(n),空间复杂度O(1))(双指针)
  • 反问:自己需要提升什么
  • 反问:闪购主要业务,用到哪些技术栈

阿里 蚂蚁金服 电话面

  • 自我介绍
  • 项目介绍
  • 地点和职位意向

携程 后台开发 一面 2.12 17:00 1h(过)

  • 自我介绍
  • 手撕通过栈来实现计算器(给自己挖了个坑)
  • 给一个无序长数组如何构建选择二叉树
  • 给一个无序长数组如何构建平衡二叉树,并优化
  • 阶梯问题

PS:为啥问的全是算法,离谱

携程 后台开发 二面

  • 自我介绍
  • 项目介绍
  • 常用集合八股
  • 手撕二叉树合并
  • Java11 更新了哪些, 对GC优化了什么?(忘了)
  • 手撕:一个list集合存储对象(属性: 姓名,年龄),返回一个不重复的年龄的倒序(遍历+treeset)
  • Stream用过没(没)
  • 网页访问过程
  • 平时怎么学习
  • 最近看什么书
  • 反问: 您现在是在做哪一块业务?

分界线2.20

蚂蚁明天二面, 携程下周一hr面, 来牛客提前还愿,感谢社区,希望一切顺利!

分界线2.21

阿里 蚂蚁金服 电话二面

  • 第一个项目的介绍
  • 三个电赛的介绍
  • 第二个项目的介绍
  • spring 框架 ioc aop
  • springboot了解嘛
  • gc (面试官喊我不用说得太细)
  • 对gc调优有过吗
  • 在什么场景做过gc调优
  • gc源码看过吗
  • 表示自己看不懂G1 GC源码
  • 进程通信方式
  • Hashmap&Hashtable&ConcurrentHashMap区别(说到底层的加载因子0.75喊停了)
  • 多线程,线程池概念
  • B树和B+树
  • 面试官说他们那边的业务
  • 说我需要加强的地方
  • 反问: 如果有幸入职, 对未来学习规划有什么意见(多去做一些大型的开源项目,去在创新方面进行突破)
  • 反问: 部门技术栈

我的面试经验汇总

下面先给大家上一个总的目录大纲,基础的东西就不进行过多的赘述,我们将会从面试必问的说起,同时由于每篇的内容过多,我们也只说重点,太过基础的内容谁都会,我就不多敲字浪费大家的时间了!

点击此处获取文档完整版

SpringCloud


Redis


JVM


MySQL


Zookeeper


Kafka


Dubbo


spring


Rabbitmq


springboot


最后

由于文章篇幅有限,PDF的内容又很多,全部手敲下来很累…
预祝大家前程似锦,工作顺利!