写点什么

Kafka 必须掌握的核心技术,尚硅谷 java 入门,Nginx 面试

用户头像
极客开源
关注
发布于: 刚刚

蚂蚁金服电话一面

第二天早上 10 点第一轮电话面试,我们大约聊了半个小时,关于学历工作经验这些都没有问到,对方关注的是一些基本的知识,具体记得的几个问题:


  1. Spring 或者数据库的事物隔离级别和传播特性是怎样的

  2. JDBC 的目的是什么,是一种接口还是一种实现

  3. 用过哪种连接池,为什么要用连接池

  4. 用过哪些缓存,用于什么场景,redis 怎么实现分布式锁

  5. 然后问我是否熟悉分布式系统的设计和应用,熟悉分布式框架、中间件、数据库等机制,能不能对分布式常用技术进行合理应用解决问题。


前边的几个问题对我来说很简单,后来接着一波问题说实话如果不是我提前做好了功课,回答起来也不会特别流畅,因为对方连续追问了几层问题,还好我接住了。(我觉得面试前必要的功课不可少!!)



本来我以为没戏了,一个星期后通知我需要现场二面,这对我来说是更大的挑战也是绝佳的机会,因为我知道,我离我的梦想又近了。二面我准备了 3 天,并且看了他的招聘要求,和职位介绍,把提到的技术点我都重新捋一遍,尽可能让自己准备充足更有信心。

蚂蚁金二面


上午 9 点面试,面试官除了个子没我高之外,面貌很英俊,比较爱笑,这让我也不那么紧张了,感觉眼缘不错,氛围也不错,做了简单的自我介绍之后,他直奔主题问了我一连串问题,我面试完做了整理分享给大家:


  1. 自我介绍(工作年限 毕业学校专业 英语几级)

  2. 介绍项目,在项目中用到了 redis 实现用户点赞功能和关注功能,项目中为什么用 redis 以及怎么实现相关功能的

  3. Java 的集合框架(主要是 HashMap,1.7 和 1.8 之间的区别)

  4. 项目中用过的开源框架,为什么要用 spring 和 mybatis

  5. spring 的核心功能是什么,介绍一下 AOP 以及怎么实现的,jdk 代理和 cglib 代理的区别

  6. 数据库的四大特性,事务的隔离级别,幻读。

  7. 计算机网络都学了什么(类似说书上的目录),OSI 七层每层的任务,数据链路层的功能(答得不全)和协议。

  8. 数据结构都学了什么,排序算法最快的是哪种说说原理,哪些是不用申请额外空间的

  9. 树的非递归遍历以及三种遍历知道哪两种不能确定一棵树

  10. 介绍一下二叉平衡树

  11. 是否看过 jdk 源码,说说你说看过的

  12. 说说 concrrent 包下的类,然后问了一下 Reentrantlock

  13. 对于 Java 高并发了解多不多,怎么处理一些秒杀问题


最后我们该如何学习?

1、看视频进行系统学习


这几年的 Crud 经历,让我明白自己真的算是菜鸡中的战斗机,也正因为 Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去 B 站进行学习,B 站上有很多学习视频,唯一的缺点就是免费的容易过时。


另外,我自己也珍藏了好几套视频资料躺在网盘里,有需要的我也可以分享给你:



2、读源码,看实战笔记,学习大神思路


“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。


Spring 源码深度解析:



Mybatis 3 源码深度解析:



Redis 学习笔记:



Spring Boot 核心技术-笔记:



3、面试前夕,刷题冲刺


面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。


关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:



只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。


人生短暂,别稀里糊涂的活一辈子,不要将就。


本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

用户头像

极客开源

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
Kafka必须掌握的核心技术,尚硅谷java入门,Nginx面试