其实,除了表达能力和面试技巧外,无非就从这些个方面进行准备:
一、那么专业技能怎么写?
先问一下你自己会什么,然后看看你意向的公司需要什么。我说的是一般HR可能并不太懂技术,(当然内部人员来面试就不一样了)所以他在筛简历的时候可能就盯着你专业技能的关键词来看。对于公司有要求而你不会的技能,你可以提前花几天时间学习一下,然后在简历上可以写上自己了解这个技能。比如你可以这样写(下面这部分内容摘自我的简历,大家可以根据自己的情况做一些修改和完善):
- 计算机网络、数据结构、算法、操作系统等课内基础知识:掌握
- Java 基础知识:掌握
- JVM 虚拟机(Java内存区域、虚拟机垃圾算法、虚拟垃圾收集器、JVM内存管理):掌握
- 高并发、高可用、高性能系统开发:掌握
- Struts2、Spring、Hibernate、Ajax、Mybatis、Redis、JQuery :掌握
- SSH 整合、SSM 整合、 SOA 架构:掌握
- Dubbo: 掌握
- Zookeeper: 掌握
- 常见消息队列: 掌握
- Linux:掌握
- MySQL常见优化手段:掌握
- Spring Boot +Spring Cloud +Docker:了解
- Hadoop 生态相关技术中的 HDFS、Storm、MapReduce、Hive、Hbase :了解
- Python 基础、一些常见第三方库比如OpenCV、wxpy、wordcloud、matplotlib:熟悉
蚂蚁花呗一面(一个小时):
- Java容器有哪些?哪些是同步容器,哪些是并发容器?
- 线程池的工作原理,几个重要参数?
- 给了具体几个参数,分析线程池会怎么做?
- ArrayList和LinkedList的插入和访问的时间复杂度?
- HashMap push方法的执行过程?
- java反射原理, 注解原理?
- 说说一致性 Hash 原理
- HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?
- HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?
- 1.8还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是AVL、B树之类的?
- https和http区别,有没有用过其他安全传输手段?
- 新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
- 线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻塞队列的作用是什么?
- 代码编写:两个线程,一个线程打印奇数,一个打印偶数,控制交替打印奇偶数。(有多种方法实现,最好能比较优劣)
- linux怎么查看系统负载情况?
- 请详细描述springmvc处理请求全流程?
- spring 一个bean装配的过程?
- 项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理
蚂蚁花呗二面
- 了解哪些排序算法,讲讲复杂度
- 手撕归并排序
- 查询中哪些情况不会使用索引?
- 数据库索引,底层是怎样实现的,为什么要用B树索引?
- Mysql主从同步的实现原理?
- MySQL是怎么用B+树?
- 谈谈数据库乐观锁与悲观锁?
- 有使用过哪些NoSQL数据库?MongoDB和Redis适用哪些场景?
- 描述分布式事务之TCC服务设计?
- Redis和memcache有什么区别?Redis为什么比memcache有优势?
- Redis 的数据结构
- 海量数据过滤,黑名单过滤一个 url。
- 讲一讲AtomicInteger,为什么要用CAS而不是synchronized?
蚂蚁花呗三面
- 考虑redis的时候,有没有考虑容量?大概数据量会有多少?
- Redis 的 list zset 的底层实现
- solr和mongodb的区别,存数据为什么不用solr?
- 分布式 session 的共享方案有哪些,有什么优劣势
- 谈谈分布式锁、以及分布式全局唯一ID的实现比较?
- 集群监控的时候,重点需要关注哪些技术指标?这些指标如何优化?
- 从千万的数据到亿级的数据,会面临哪些技术挑战?你的技术解决思路?
- 数据库分库分表需要怎样来实现?
- 排序算法的复杂度,快速排序非递归实现。
- 消息中间件有哪些?他们之间的优劣势?
- 数据库主从同步数据一致性如何解决?技术方案的优劣势比较?
- 分布式锁的实现方式你知道有哪些?主流的解决方案是什么?
蚂蚁花呗四面
- 介绍对你技术能力帮助最大的项目,重点讲架构设计思路
- 分布式架构设计哪方面比较熟悉
- 介绍你实践的性能优化案例,以及你的优化思路
- 介绍项目
- 谈一个你觉得你学到最多的项目,使用了什么技术,挑战在哪里
- 各种聊项目,从项目的架构设计到部署流程。
- 最近有没有学习过新技术?
- 有什么想问我的?
- 最近两年遇到的最大的挫折,从挫折中学到了什么?
HR面
- 平时除了工作,你会怎么安排自己的学习时间?是通过哪些方式去提高技术能力的呢?
- 工作中遇到的最大挑战是什么,你如何克服的?
- 你最大的优点和最大的缺点,各自说一个?
- 上一家公司经常加班吗,你是怎么看待加班这个问题的?
- 有做过自己的职业规划吗,说说看?
以上就是蚂蚁花呗高级java面试题,以下最全蚂蚁花呗高级Java必考题范围和答案。
java基础
JVM调优
多线程与高并发
Spring+SpringMVC+MyBatis
微服务(SpringBoot+SPringCloud+Docker)
ActiveMQ消息中间件
Zookeeper
SQL优化
Kafka