在互联网飞速发展的时代,世界早已大变样了,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 人来说,到底需要掌握什么技术呢?
如何获取?
帮忙转发这篇文章后,关注私信回复【学习】即可获取