<>面试总结
<>公司:阿里巴巴
<>部门:云计算部门
<>职位:java工程师
<>流程:提前两天打电话通知面试时间,准备面试。
<>问到的问题:
<>1、有过什么项目经验?
<>2、去过什么单位实习?
<>3、看简历问上面写的一些项目,比赛,问里面的技术点。
<>4、介绍一下自己。
<>5、java的基础知识:
<>hashmap的原理
<>继承过程中代码块的执行顺序
<>equals和hashcode方法
<>多线程,介绍threadlocal
<>变量声明 volatile
<>java内存模型(可见性的实现原理)
<>多线程主空间和线程空间怎么变换的
<>介绍concurrent包
<>介绍线程池
<>jvm垃圾回收原理
<>对象的几种引用并介绍(区别)
<>设计模式
<>linux基本命令(cat过滤error的行···)
<>java中sort方法排序实现原理
<>堆排序复杂度
<>6、思考题
<>非常大的数据文件(20G),做一个排序,输出前十个数字,你会怎么做?
<>7、读过哪些书?对其中的哪些部分擅长?
<>8、遇到的印象深刻,比较困难的问题?怎么解决的?
<>9、介绍自己的优缺点
<>10、自己擅长的技术补充时间
<>总结:
<>在此次阿里巴巴校招面试过程中,考察到的方面非常广,两个字形容,到位! 我感觉可以从2个方面诠释自己的不足:
<>1、视野窄
<>1)自己参与的比赛最高为省级比赛,未参与到更高的平台参与更好的比赛, 比如ACM、CCPC(数据结构和算法思想真的太重要了,表现一个人的能力强
的重要表现)等。视野和思想受限制。
<>2)技术发展很快,自己了解的技术没有走在国家或者世界的前端技术,了解到的技术过少,先进的技术了解还是太少了。
<>2、深度浅
<>
1)一个人不仅要实操能力强,更要理论知识扎实。从这次阿里面试就可以看出,一个大厂是很注重基础知识扎实的,只好好听课远远不够!!!一定要多读书,读好书!这次面试中每个面试官都会问到读过哪些书,对书的哪部分内容比较擅长。(读书太重要了!!!)
<>2)在面试流程中,每个知识点都会向底层去问,实现原理,实现算法。真的需 要多多地看书!再次强调自己。这次问到多线程的时候,自己犹豫了,会用远远
不够,深度!深度!深度!强调三遍。多线程都可以写书了,这次挣了工资就先买口碑好的多线程的书籍仔细向深地多看看!一个人不可以在一个技术上摔倒2次啊!这次多线程让我面试玩现了!
<>3)看源码!看源码!看源码!这个很重要。每次敲代码要求多多理解实现原理, 实现算法!不能让自己太浅露。学习就要知其甚解,时间长了,养成习惯,日积月累,
就变强了。
<>最后,总结心得:每天每次做完东西都要做总结,每次重要的会话都要录音,整理知识,要求甚解!