惊险!备战3个月,五面蚂蚁金服差点倒在最后一面

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 作为程序员,免不了要经历面试这关,虽然平时工作勤勤恳恳,但是面试上面未必能展示的出来,比如平时都是做增删改查的业务系统,面试官非要问你如何处理高并发大数据,本来是写java代码,非要问你大型网站架构,这些问题防不胜防,本文就自己一次在蚂蚁金服的面试经验来总结一下,抛砖引玉。

写在前面

作为程序员,免不了要经历面试这关,虽然平时工作勤勤恳恳,但是面试上面未必能展示的出来,比如平时都是做增删改查的业务系统,面试官非要问你如何处理高并发大数据,本来是写java代码,非要问你大型网站架构,这些问题防不胜防,本文就自己一次在蚂蚁金服的面试经验来总结一下,抛砖引玉。

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

一面

  • 1、分布式架构 50分钟
  • 2、个人介绍加项目介绍20分钟
  • 3、微服务架构是什么,它的优缺点?
  • 4、ACID CAP BASE理论
  • 5、分布式一致性协议,二段、三段、TCC,优缺点
  • 6、RPC过程
  • 7、服务注册中心宕机了怎么办?
  • 8、微服务还有其他什么组件
  • 9、分布式架构与微服务的关系
  • 10、你有什么问题要问我的。

二面

上来不用自我介绍,项目介绍,直接开始

算法

  • 1、各种排序算法、未排序常规数据查找第K大的数,时间复杂度。
  • 2、二叉树的深度

操作系统

  • 3、虚拟内存分页了解不?
  • 4、进程和线程区别?

数据库

  • 5、第一二三范式是什么?
  • 6、一个表一千个列值为true和false,写sql 查询 有300个列值为true的行。
  • 7、脏读和幻读是什么?

JVM

  • 8、什么对象会从新生代晋升到老年代

多线程

  • 9、一个任务分成十个任务,最后汇总计算,不能用fork/join
  • 10、开源框架源码了解不?
  • 11、数据建模两道、个人题开放性题

安全方面

  • 12、对安全方面了解多少?
  • 13、 安全协议有哪些 、https是啥?

介绍你做的项目和其中的难点。

三面

这部分比较注重技术深度

  • 1、从ConcurrentHashMap一路问到锁&锁优化->LongAdder->伪共享->缓存行填充->cas等诸多技术细节;
  • 2、从hystrix一路问到原理->自己如何实现->如何优化->响应流编程(reactive streams);
  • 3、从简单的生产者消费者模式设计到如何高效健壮实现等等。

四面

  • 1、如何倒序输出单向链表?
  • 2、个人直接想法是用栈先进后出的特点,把链表数据读到栈里然后输出。
  • 3、有更好的实现方式吗?
  • 4、主要问项目情况,然后根据一个项目,问如果量级扩大1000倍,你会怎么做?有哪些优化措施?高性能&高可用措施?

五面:HR面

HR的问题都是基于公司最基本的利益出发的,所以会给大家抛出几大深坑问题

  • 1、个人的职业规划是什么
  • 2、你遇到的最大问题或者是困难是什么
  • 3、你如何看待阿里
  • 4、你能为阿里带来什么
  • 5、你的优缺点是什么

这里的回答就需要深思了,许多大佬前几轮面试过了,倒在了一个外行(公司HR手里))

大佬面试总结:

  • 1.技术基础必须扎实:算法、数据结构、操作系统等,蚂蚁金服(其他大厂也一样)面试对技术的基础非常重视,基础扎实的同学有利于在前两轮突出重围。
  • 2.技术宽度:主要集中在高并发、多线程、分布式架构,大以及常用中间件(缓存等)的选型和较。
  • 3.技术原理深入:重点还是提前准备好JVM、多线程高并发这块
  • 4.参与的项目总结:你需要清楚你所做项目的关键细节、优化、特点、原理。
  • 5.很多所用第三方库&中间件等的原理,即使你不知道,也要有自己的想法能够说出如何代替实现比如单点登录的替代方案。
  • 6.最好,提前准备一个大数据访问,比如pv扩大1000倍,你的架构或者技术方案应对措施。
  • 7.最后,千万不要倒在HR面试环节,避重就轻是重点,特别是优点和缺点,如果问到你的规划是什么,请记得一定告诉HR你想成为一名优秀的技术专家!

说明:但是要真正成为一个技术专家所需要储备的知识量是很庞大的,(下面这张图是我从博客搬来的)看到是不是第一感觉是头皮发麻,但其实经过系统梳理一下,其实学习起来是不会太吃力的,“有一些知识点是可选的,并不是说上面有的你都要会”,我自己在面试之前都是会系统梳理一下知识点,然后过一下面试专题(平时一定是要慢慢啃,把各方面知识吃透),我自己的一套方案在知识导图下面会介绍出来给各位老哥参考,有问题的可以查漏补缺,没问题的全栈大佬欢迎在评论区指正

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

Java后端知识导图

整理出自己的学习路线(大致分为以下几个部分吧,不全按图上来)

  • 多线程并发

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

  • 数据结构与算法

算法一直是校招同学面前的一座大山,作为后端同学来讲,除了基本的数据结构算法以外,也要会一些高级的算法,譬如dp,搜索,贪心等等。

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

  • Java基础

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

  • 数据库

在这个路线图里,数据部分囊括了非常多的数据源,但是关系数据库Mysql跟Redis缓存是一定要会的

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

  • JVM

JVM是提供Java程序运行的一个进程,学习JVM知识,也是我们的必经之路。除了看懂深入理解jvm虚拟机以外,我们还要学习的内容就是JVM调优,使用合适的工具诊断问题,最后解决问题。

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

  • 消息中间件

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

  • 微服务

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

  • 网络方面

这方面一定要清楚,非常重要,我本人也有一些视频资料,也是可以分享出来的。

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

  • 大数据相关

海量数据处理的场景越来越多,大数据技术如hadoop,storm等也越来越火,但是大数据应用一般会由专业的大数据工程师来做,所以我们学一些基本内容也就足够了。

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

  • Netty与RPC

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

  • 分布式

分布式相关的技术实在太多了,我这里做一下简单的归纳。

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

  • Spring全家桶

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

面试专题

  • 性能优化面试专栏

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

  • 微服务架构面试专栏

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

  • 并发编程高级面试专栏

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

  • 开源框架面试题专栏

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

  • 分布式面试专栏

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

  • 小编整理出来一些代表性所有面试文档一览

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

以上就是我的大概学习方向了,先对全栈知识点做一个系统的梳理总结,查漏补缺,最后刷一遍面试题增加面试成功率。

鸡汤(手动狗头)

不想进大厂的程序员不是好程序员,希望大家能一直保持一颗爱学习的心,选择好一个目标后就坚定不移的去实现,世界上很多人都在陪着你一起努力,加油!陌生人!


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

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
5月前
|
Dubbo Java 应用服务中间件
面试哈啰,差点要了狗命~
面试哈啰,差点要了狗命~
40 2
|
消息中间件 缓存 NoSQL
面试京东T5,被按在地上摩擦,鬼知道我经历了什么?
面试京东被问到的问题: 如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性? 如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍一下么?redis 的哨兵原理能介绍一下么? 如何设计一个高并发系统? 分布式服务接口的幂等性如何设计(比如不能重复扣款)?
|
6月前
|
消息中间件 缓存 NoSQL
记一次蚂蚁金服四面遭虐,面试水太深,过河的渡船你造好了吗?
有道无术,术可成;有术无道,止于道;以术识道,以道御术
惊险!备战3个月,五面蚂蚁金服差点倒在最后一面
作为程序员,免不了要经历面试这关,虽然平时工作勤勤恳恳,但是面试上面未必能展示的出来,比如平时都是做增删改查的业务系统,面试官非要问你如何处理高并发大数据,本来是写java代码,非要问你大型网站架构,这些问题防不胜防,本文就自己一次在蚂蚁金服的面试经验来总结一下,抛砖引玉。
|
前端开发 JavaScript 数据可视化
9 年小厂老前端的年终总结
时光飞逝,岁月如梭,转眼来到 2021 年底,这一年少了些理性,多了点感性,少了些自由,多了一份责任,这一年视乎没做什么事情,但又过得非常充实,最欣慰的是回家有个人等待着我的拥抱,最快乐的是...
1297 0
|
机器学习/深度学习 算法 测试技术
面试官在“逗”你系列:到底应该怎么爬楼梯?! | 牛气冲天新年征文
算法题是在面试过程中考察候选人逻辑思维能力、手写代码能力的一种方式,因为有一句古话说的好:“说一千道一万,不如写段代码看一看”。今天我们就来个单刀直入,直奔主题,从一个真实面试题到底怎么爬楼梯来聊一聊算法中的动态规划 。
203 0
|
Java 程序员
一个程序员的国庆血泪相亲史,惨败而归…
没错,这个程序员就是博主我。 伴随着国庆往返的大军,博主我也踏上了幸福的回家之路。
|
SQL 移动开发 NoSQL
年末学弟四面阿里面经!
最近学弟把面试经历给我整理了下,我特意发出来给有需要的同学!
310 0
|
弹性计算 程序员 区块链
这群程序员疯了!他们想成为IT界最会带货的男人!
随着网红主播越来越火,通过直播带货种草的形式也成了今年双12的热点。 不过,网红主播带货早已见怪不怪,但你们见过程序员直播带货吗!?近日,趁着阿里云双12年末采购节,阿里云邀请了一波程序员GG来为大家直播带货!