个人背景:
开发5年,坐标杭州
金九银十已经过去了,写这篇文章的目的就是与大家谈谈面试方面的经验,心得,就个人方面而言,我之前做过的很多的工作都是面试造核弹,工作拧螺丝。但是不要因为自己是个拧螺丝的就不学哪些难啃的技术。当项目出问题的时候,就是考验技术沉淀的时候。我也迷茫过好长一段时间,学了忘,学了没用,**到底应该怎么成长才能成为一个别人眼中的大神,大牛。**关于面试,关于技术的,我只能说有些路只能靠自己去走,没人可以帮到自己,哪怕偶尔帮一到两次,但是技术的路这么长,总归需要自己独自成长的。
我们遇到每一次面试我们都应该认真对待,有机会一定要多面试,面试是一种非常锻炼自己的方式,不要错过任何—场面试,你**在面试的过程中,和对方讲自己所学,通过对方提问弥补自己的不足,这对自己提升会非常大。**下面我会为大家分享一下我最近的一次面试经历希望对大家有所帮助。总结的不全的地方也请各位海涵,欢迎在评论区留言指正。
下面就是我这次阿里的面试经历了,总共是四面:
一面(技术面)
- 重点聊了Java各种集合的实现原理,以及使用场景,主要包括不限于,ArrayList,LinkedList,HashMap,HashSet,TreeMap
- 线程池的实现原理,线程池中的等待任务只有一个队列,如果线程池中的线程比较多,竞争会比较大,怎么解决?
- Java中实现高并发的几种策略(COW, cas, 锁),各自的使用场景及区别?
- 简单的介绍下项目?
二面(项目+技术)
- 聊下项目中高并发,高可用的实现
- 负载均衡的几种算法
- 问了几个设计模式的实现
- 分布式系统中转账问题,如何保证分布式事务,项目中怎么处理这种情况?
- MySQL主从复制的实现
- jvm的内存模型,类加载机制,jvm gc实现原理,有没有jvm线上调优经验。如果遇到线上问题,一般通过哪些步骤定位,除了看日志和走读代码还有没有其他方法?
三面(项目经理面)
- 聊下项目内容,以及项目目前存在的问题,优化点
- 有没有带人的经验,怎么带一个新人?
- 离职的原因,对下一份工作的期望?
问了几个问题:
- 目前这边开展的是新业务,怎么让大家这群“新”人很好的配合起来
- 目前公司这块的业务在技术上的侧重是什么,