疫情面试,成功斩获阿里offer,大厂面试并没有您想的那么难

前言

在互联网飞速发展的时代,世界早已大变样了,80后上学时还在为手机感到新奇,00后甚至90后没上学前就已经在接触电脑了,从基础上来看,90后,00后会更高一些,就像那句话说的:站在巨人的肩膀上;是的,我们就是在他们脚下的巨人,一代又一代的发展下来,才能触碰的更高的天空

说的这里大家也该明白了,他们比我们有更好的基础,甚至有更好的学历,我们比他们多的只不过是一些工作经验,一些社会阅历,同时,随着年龄的增长,身体状态的下滑,也变成了限制我们的瓶颈

当面试官遇到,一个只会CRUD,工作经验丰富的人,和一个理论丰富,只是欠缺工作经验的人,在不考虑薪资,年龄的情况下,你觉得面试官会选择哪个?如果再加上这两个呢?

如果这样的情况多起来,恐怕我们很快就会失业吧,这也就是中年危机的由来

有个朋友问过我一个问题:为什么会有面试造火箭,工作拧螺丝的情况?不管前面答的怎么样,后面不都是做哪些工作吗?我有更丰富的工作经验,能做的比他们更好,为什么不录用我呢?

这个行业的人很多,优中择优,你能做的其他人也能做,还能比你做的更好,为什么要选你呢?

面试时问的问题难一些会晒下去一大批人,能留下来的更出色,同样是做一份工作,不同的人来做,会有不同的效果,面试都不能证明你的能力,你为什么会觉得你会做的比其他好?经验?

如果我们依旧在不间断的学习呢?当我们的理论也不差的情况下,更加丰富的工作经验,应对各种突发问题的能力等等,我想还是很容易拿高薪进大厂的吧

在年龄差下,我们可以学习的时间比他们还要多,我们完全可以比他们做的更好吧

可能会有人说,平常工作那么忙,没有时间学习,咱先不管这句话有多大的水分,疫情期间你有学习吗?你学了多少?

我有个朋友哪怕是学个网球都找老师教,可能有人会想:找老师还要花钱,找朋友自己练习一下不就好了?但是你有想过没有?时间更值钱,你找老师能节省你更多的时间,学习,当然是要更快的时间学习更多的知识,不仅系统,全面,也能更快的提升你的价值

我很喜欢一句话:你未来的成就,在于你现在的态度

大厂面试难吗?

此例非真,只是拿出来,让大家回顾下面试的情况,面试官喜欢抛出一个大点,看你能讲多广多深

ps:面试官不是为了刁难你,而是为了了解你的技术栈

先来看看我面试的经历吧

一面: 90mins

讲项目

讲一个集合框架整体框架

分Collection和Map两大类全部讲一遍,每一个接口和对应实现类,他们类各自的特点,性质,基本参数,能讲多深讲多深

arraylist和hashset区别

为什么hashmap要在8的时候树华

根据泊松分布概率(源码注释里写了)

hashmap线程安全的方式

hashtable和concurrenthashmap的各自特点,能讲多深讲多深

为什么hashtable被弃用了,cch1.7之前和1.8之后的区别

锁的分类

乐观锁、悲观锁、自旋锁、读写锁、排它锁、共享锁、分段锁等等各自特点,以及它们在java中具体的实现方式

Spring IOC的底层实现

XML+dom4j+工厂+单例

索引不适用的条件

索引列上有函数,不满足最左前缀,使用了不等号,使用了范围查询等等

索引的分类

B-Tree索引,Hash索引,全文索引,单值索引、唯一索引、复合索引、聚簇索引、非聚簇索引等等,以及它们各自的特点

二面:40mins

讲项目

线程池了解多少

executors创建的几种线程池,直接new ThreadPoolExecutor,7个参数

线程池拒绝策略分别使用在什么场景

Spring AOP的底层实现

动态代理,newProxyInstance,cglib,ASM

讲一下代理模式

动态代理,静态代理

你都了解什么设计模式,他们在JDK中如何体现的

工厂,责任链,观察者,建造,代理,单例,原型等等在JDK中对应的体现。。。

三面coding:2h

千万级数据量的list找一个数据(多线程),抢红包

四面:50mins

讲项目

讲一下JVM堆内存管理

栈上分配->TLAB->新生代、老年代->可达性分析->GC算法->所有垃圾回收器及其优缺点和特点

那到底多大的对象会被直接扔到老年代

G1两个region不是连续的,而且之间还有可达的引用,我现在要回收其中一个,另一个会被怎么处理

听说过CMS的并发预处理和并发可中断预处理吗

平常怎么学习的和职业规划

五面coding:2h

百万级int数据量的一个array求和(fork/join)

六面交叉面:20mins

深挖科研项目

七面hr:20min

聊人生

看完面经大家还觉得难吗?其实只要你一直在持续不断的学习,并保持跟在技术的前沿,保证你不会被其他人所轻易替代,那么你就不会遇到中年危机,不会说进不了大厂,更不会说找工作难

那么,对于技术人,尤其是 Java 人来说,到底需要掌握什么技术呢?

扎牢基础 深入底层 面试我可造火箭

深入JVM(ps:每一张图片都是有小知识点可以放大的,文末获取完整版大纲)

洞愚分布 明察并行 一路架构冲云霄

高薪必间 无处可避 不如迎头直接上

未来主流 必知必会 服务微化量绝招

分布存储 高效写读 优化性能带你飞

团队协作 项目管理 测试开发一体化

庖丁解牛 手写源码 一步一步成大牛

职业规划 软性技能 人生自此上巅峰

价值千万 企业实战 从此对标CTO

网约车项目***

完整图谱

如何获取?

帮忙转发这篇文章后,关注私信回复【学习】即可获取高清大纲,以上 spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构

面试资料

书籍文档资料

视频资料

全部评论

相关推荐

11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务