自信,紧张,焦虑,意外?蚂蚁金服难忘的四面经历,真的太刺激了

简介: 前段时间,蚂蚁金服的热度可不小,互联网圈人人都在讨论它上市的事情,实际上蚂蚁金服上市是迟早的事情。这一下,蚂蚁的员工含金量上升了不少,那我之前蚂蚁提前批这波面经,也是时候分享了。这次面试,可以说是一波三折,波涛汹涌了,原本我是一个挺自信的人的,所以在面试前我算是处于一个斗志昂扬的状态,奈何在经历一面二面意志力被消磨了不少,虽然三面准备充足,但整体下来对自己表现不满意,所以以为是没戏了,没想到意外接来了HR面的通知,于是就这么意外的拿到了offer。

前言

前段时间,蚂蚁金服的热度可不小,互联网圈人人都在讨论它上市的事情,实际上蚂蚁金服上市是迟早的事情。这一下,蚂蚁的员工含金量上升了不少,那我之前蚂蚁提前批这波面经,也是时候分享了。

这次面试,可以说是一波三折,波涛汹涌了,原本我是一个挺自信的人的,所以在面试前我算是处于一个斗志昂扬的状态,奈何在经历一面二面意志力被消磨了不少,虽然三面准备充足,但整体下来对自己表现不满意,所以以为是没戏了,没想到意外接来了HR面的通知,于是就这么意外的拿到了offer。

下面就对这次蚂蚁金服的面试体验进行一个分享,由于面试题比较多,所以只挑选了一些有针对性的核心题放在这里解析

网络异常,图片无法展示
|

蚂蚁金服意外的第一面

1、讲一讲ArrayList和LinkedList区别?

  • ArrayList 是一个可改变大小的数组。当更多的元素加入到ArrayList中时,其大小将会动态地增长。内部的元素可以直接通过get与set方法进行访问,因为ArrayList本质上就是一个数组,
  • LinkedList 是一个双链表,在添加和删除元素时具有比ArrayList更好的性能.但在get与set方面弱于ArrayList。
  • 当然,这些对比都是指数据量很大或者操作很频繁的情况下的对比,如果数据和运算量很小,那么对比将失去意义。

2、什么情况会造成内存泄漏?

  • 在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点:
  • 首先,这些对象是可达的,即在走向图中,存在通路可以与其相连;
  • 其次,这些对象是无用的,即程序以后不会再使用这些对象。
  • 如果对象满足这两个条件,这些对象就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,然而它却占用内存。

3、什么是线程死锁,如何解决 ?

网络异常,图片无法展示
|

4、红黑树是什么?怎么实现?时间复杂度

5、TCP三次握手?

网络异常,图片无法展示
|

蚂蚁金服突然的第二面

1、Storm怎么保证一致性 ?

  • Storm是一个分布式的流处理系统,利用anchor和ack机制保证所有tuple都被成功处理。如果tuple出错,则可以被重传,但是如何保证出错的tuple只被处理一次呢?Storm提供了一套事务性组件Transaction Topology,用来解决这个问题。
  • Transactional Topology目前已经不再维护,由Trident来实现事务性topology,但是原理相同。

2、说一下hashmap以及它是否线程安全?

网络异常,图片无法展示
|

3、十亿条淘宝购买记录,怎么获取出现最多的前十个 ?

  • 这是一道典型的有限内存的海量数据处理的题目。一般这类题目的解答无非是以下几种:
  • 分治,hash映射,堆排序,双层桶划分,Bloom Filter,bitmap,数据库索引,mapreduce等。
  • 具体情形都有很多不同的方案。这类题目可以到网上搜索一下,了解下套路,后面就基本都会了。

4、平时有没有用linux系统,怎么查看某个进程 ?

ps aux|grep java 查看java进程
ps aux 查看所有进程
ps –ef|grep tomcat 查看所有有关tomcat的进程
ps -ef|grep --color java 高亮要查询的关键字
kill -9 19979 终止线程号位19979的进程

5、说一下Innodb和MySIAM的区别?

6、说一下jvm内存模型,介绍一下你了解的垃圾收集器 ?

  • 其实并没有jvm内存模型的概念。应该是Java内存模型或者jvm内存结构,这里面试者一定要听清楚问的是哪个,再回答。

7、其他问题

  • 100个有序的整型,如何打乱顺序?
  • 如何设计一个可靠的UDP协议?

蚂蚁金服准备充足的第三面

1、介绍一下hashmap?

  • HashMap真的是面试高频题,多次面试都问到了,一定要掌握。

2、介绍一下并发?

  • 这里可以把整个并发的体系都说下,包括volatile、synchronized、lock、乐观悲观锁、锁膨胀、锁降级、线程池等

3、银行账户读写怎么做?

  • 我说了读写锁以及可能出现死锁问题

4、说一下关系型数据库和非关系型数据库的区别 ?

5、如何访问链表中间节点?

6、说下进程间通信,以及各自的区别?

  • 进程间通信是指在不同进程之间传播或交换信息。方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。

7、访问淘宝网页的一个具体流程,从获取ip地址,到怎么返回相关内容?

蚂蚁金服十分焦虑的HR面

1、有没有遇到过什么比较大的挫折?

  • 这种问题主要考察面试者遇见困难是否能坚持下去,并且可以看出他的解决问题的能力。
  • 可以简单描述挫折,并说明自己如何克服,最终有哪些收获。

2、有之后清晰的职业规划吗?说说看

  • 表明自己决心,首先自己不准备继续求学了,必须找工作了。然后说下自己不会短期内换行业,或者换工作,自己比较喜欢,希望可以坚持几年看自己的兴趣再规划之类的。

3、说一下你对阿里的认识吧

  • 这个比较简答,夸就行了。

4、有什么崇拜的人吗?为什么?

5、最理想的就业城市是哪里?

6、说一件你自己记忆里印象最深刻的一件事吧

网络异常,图片无法展示
|

总结

实际上,提前批考察的更多的是基础知识,主要是因为现在的很多大公司都有自己在用的框架,基本上是进公司以后再去重新学习这些框架知识,所以基础部分是提前批考察的关键,看你的基础知识是否够扎实!

必备知识点包括:

  • 操作系统
  • Linxu
  • 数据库
  • 数据结构
  • 算法
  • java(基础、容器、高并发、jvm)
  • 计算机网络

面试蚂蚁金服,你必须要做好的功课

功课一:了解公司,摸清喜好,定制简历

我们都知道,蚂蚁金服是一家互联网金融公司,所以在对员工喜好和技术倾向方面与很多互联网公司不同,所以在面试蚂蚁金服之前,一定要了解清楚这家公司的信息,摸清好它们的喜好,这样才能有能力去定制简历,通过简历筛选的第一关。

在投蚂蚁金服之前,我特意把自己的简历进行了修改,也是参照的网上的模板,和自己旧版简历对比,确实加分不少。

网络异常,图片无法展示
|

简历模板-1

网络异常,图片无法展示
|

简历模板-2

功课二:梳理技术栈,提升广度和深度

  • 筑基必备技能:并发编程+JVM剖析+网络编程与高效IO+Mysql深度进阶+深入Tomcat
  • 性能直线提升架构技术:分布式架构+Zookeeper+Nginx+RabbitMQ+RocketMQ+Kafka
  • 高效存储让项目性能起飞:Redis+mongoDB+MySQL高可用+Mycat
  • 分布式扩展到微服务架构:SpringBoot+SpringCloud+SpringCloud Alibaba+docker+k8s
  • 设计思想解读开源框架:六大原则+设计模式+Spring5源码解读+SpringMVC框架源码解读+Mybatis源码

网络异常,图片无法展示
|

当然,这套技术路线图不完全要求全部掌握,尤其是对于刚工作的或经验不多的人来说,但作为程序员,我们需要具备这种提升自己技术广度和深度的思维,因此这条架构师发展路线图从基础-进阶-实战均涉及到了,非常全面具体。(附学习路线图+实战电子书+源码笔记)

功课三:刷刷历年真题,积累经验

对于应届生或是工作经验不足的程序员来说,刷题是应对面试最快捷最有效的方式,能够让自己迅速掌握面试公司的面试情况,至少能够应对50%以上的内容。

在面试蚂蚁金服之前,我就狠狠的刷了一波题,实际上问的内容都差不了太多,学会举一反三才是刷题的精髓之处。

关于刷题,我也准备了一套面试大礼包分享给大家:

网络异常,图片无法展示
|

面试题集锦

网络异常,图片无法展示
|

历年BAT等一线大厂面试专题

网络异常,图片无法展示
|

Java面试核心知识点

写在最后

罗马不是一天建成的!成为技术大牛的道路也不是一个月一年就能走完的,不仅仅软件开发这个行业如此,其他行业亦是如此。

刚踏上掉发路上的我,一直在努力!

以上文章内容中,涉及到的所有pdf文档资料均可以免费分享给你们,只需要你多多支持我即可!

本文就是愿天堂没有BUG给大家分享的内容,大家有收获的话可以分享下,想学习更多的话可以到微信公众号里找我,我等你哦。

相关文章
|
Java 数据格式 JSON
项目启动保错(jackson版本问题导致项目启动失败)
项目启动保错(jackson版本问题导致项目启动失败)
739 0
项目启动保错(jackson版本问题导致项目启动失败)
|
缓存 Cloud Native Java
Java工具篇之Reactive 反应式编程
reactive 是一种新的编程思想, 如同名字一样, 反应式编程。而Reactor 是一个工具包,类似于 Spring一样。这点我们可以直接在Spring的官网上可以看到。本篇基于小编自己的学习进行总结。
3382 0
Java工具篇之Reactive 反应式编程
|
微服务
idea 配置 service 服务,多模块同时启动
idea 配置 service 服务,多模块同时启动
1591 7
|
监控 Java API
Java 模块化设计:概念与实战应用
【4月更文挑战第27天】模块化设计是现代软件开发的关键,它帮助开发者构建可管理、可维护的大型系统。Java 平台的模块化支持始于 Java 9,引入了一种全新的模块系统。
312 3
|
消息中间件 缓存 NoSQL
记一次蚂蚁金服四面遭虐,面试水太深,过河的渡船你造好了吗?
有道无术,术可成;有术无道,止于道;以术识道,以道御术
如何在Java中优雅地处理大文件?
如何在Java中优雅地处理大文件?
|
Java 应用服务中间件 API
【大厂求职必看】太强了!Tomcat线程模型全网最清晰讲解!(下)
【大厂求职必看】太强了!Tomcat线程模型全网最清晰讲解!
322 0
【大厂求职必看】太强了!Tomcat线程模型全网最清晰讲解!(下)
|
消息中间件 负载均衡 NoSQL
第一次凡尔赛,字节跳动3面+腾讯6面一次过,谈谈我的大厂面经
写在开头的闲言碎语 2022年马上过去了,对很多人来说,这一年经历了太多太多,可能是十年来记忆里比较浓墨重彩的一笔。过去的一年里,“熬”算是这个阶段我的关键字,确实太多时候就要放弃,好在自己“熬”过去了,在新的2023年里,也有个一个非常好的开端,我收获了心仪的offer。 简单来说,就如标题一样,我今天也想要凡尔赛一次,原来大厂的面试也没有想象中的那么难,字节跳动3面+腾讯6面,就这么一次性过了,下面就细细聊聊我的大厂面经吧,希望能够给金三银四要面试的朋友提供一些经验。
|
消息中间件 NoSQL Java
泪目!跳槽太不容易,蚂蚁金服三轮面试,四个小时灵魂拷问
本人是双非院校科班研究生,Java开发3年工作经验,以下是最近的面试总结: 先说下我的面试准备经历,为了保证自己简历有较大一定的概率通过筛选,我在2018毕业后面试了多家公司,去了一家上海一家小公司一直工作到今年5月。 和往年相比,今年的金三银四看上去不是那么顺利,可能和我的准备不足有关,但是令我惊讶的是第一家给我面试机会的公司竟然是阿里巴巴。一开始接到面试通知时,心情特别复杂,紧张又兴奋,阿里巴巴是出了名的深挖项目实战,实际上我项目部分是相对薄弱的。这次面试,一共三轮,共计四个小时左右,这三轮面试对我来说,简直是灵魂拷问,至于结局,往下看吧!
泪目!跳槽太不容易,蚂蚁金服三轮面试,四个小时灵魂拷问
|
存储 关系型数据库 数据库连接
PostgreSQL很多优秀的书籍
PostgreSQL很多优秀的书籍
1299 1