阿里巴巴——三面,面试经历记录

2023-11-08

在 boss 直聘上无意间看到了阿里巴巴菜鸟网络的招聘信息,现在的部门已经有两名同学被蚂蚁金服录取了,自己就不服气的也想试试。这次面试其实并没有准备充分。

之前就听说总共有很多轮数,不仅会考察基础知识的深度,也会考察算法能力、项目设计能力、价值观世界观等。

自己抱着能走多远走多远的态度,挑战一下自己。

在发过去简历的一周后,大概是2月28号左右,一面的小哥哥下午打来电话约我2月28号晚上9点钟面试。

结果在 2 月 29 白天的时候,我基本上都没有怎么工作,而是把我平时积累的一些基础知识总结了一下,能总结多深就总结深。

到了晚上 9 点左右,电话响了起来。

一面

面试官还是比较温柔的,上来先让我做了自我介绍,我简单介绍了一下自己有2年半的工作经验,之前做过什么项目,用了什么技术等等,面试官没有详细问项目的细节,但是项目的具体的功能和业务一定要讲清楚。

中间穿插着会问到一些基础知识。

总共面试了50多分钟,java基础能问的基本都问完了,基本的内容包括

  • 从JVM到垃圾回收,最后一个问题好像是fullgc是否可以回收方法区

  • 从线程池的构造函数参数到队列的拒绝策略

  • redis支持的数据类型到跳跃表,redis同步策略,如何自己实现lru等

  • mysql索引的数据结构,为什么用B+树不用B树,事务隔离级别,聚集锁非聚集锁,这个地方着重点一下,问到了一个非常细节的问题,如何用可重复读的隔离级别避免幻读问题。当时这个问题没有答出来,后来上网查了后可以使用间隙锁来实现。

  • spring相关、bean的生命周期等,最后问到循环引用问题spring如何处理的。

  • concurrentHashmap1.8为什么放弃了分段锁

  • 数据库分库分表相关

其他的记不清了,就记得只要是跟java基础相关的基本都提到了,个人感觉一面还是以知识的广度为主。

一面结束大概一周多后,大概在 3 月 3 号,接到了二面的电话,由于当时在地铁上太吵了,我就约了 3 月 5 号晚上 8 点半面试。

到了 3 月 4 号 5 号的白天,又是基本上没有怎么工作,都在总结面试的东西,到了 3 月 5 号晚上晚上8点半,二面电话如期响了起来。

二面

二面上来也是做了一个简单的自我介绍,然后简单介绍了自己的项目,感觉二面和一面最大的不同是,二面时候以知识的深度和解决问题的能力为主。

主要涉及到的问题大概有:

  • springAOP的原理,动态代理是怎么实现的,这个地方我基本上把动态代理的源码说了一遍。

  • fullgc的时候会导致接口的响应速度特别慢,该如何排查和解决。

  • snmp协议的相关知识

  • netty的相关知识,如何避免的NIO空循环问题,还有零拷贝等

  • 问了一些简单的算法,说了一下自己的思路

剩下的记不清了,大概面了有 40 分钟多一点。

二面面完个人感觉还是非常好的,当时也比较自信自己可以进入三面,果然在大概一周左右,如期接到了三面的电话。

三面

三面的面试官也是比较温柔的,三面和前两面最大的不同是这次的面试官特别关注项目的实现和细节,由于我最近一年做的是一个监控系统,从最开始的项目为什么要分这几个模块到每个模块做的事情用的技术和存在的意义,都需要解释的非常清楚,中间如果他有疑问的话就会立马打断来问问题,现在做的项目其实并没有太多的亮点。

面试中间还提到了 kafka 的 replicas 的作用还有他为什么比其他的消息队列好等等。

最后给了我一个微博评论长链接短链接的问题,让我设计一个服务来处理长链接短链接,包括怎么读怎么存等。

面完三面后,面试官告诉我如果有四面的话,四面就要来杭州面了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

阿里巴巴——三面,面试经历记录 的相关文章

  • SAML 服务提供商 Spring Security

    当使用预先配置的服务提供者元数据时 在 Spring Security 中 是否应该有 2 个用于扩展元数据委托的 bean 定义 一份用于 IDP 元数据 一份用于 SP 元数据
  • OpenCV 中的 Gabor 内核参数

    我必须在我的应用程序中使用 Gabor 过滤器 但我不知道这个 OpenCV 方法参数值 我想对虹膜进行编码 启动 Gabor 过滤器并获取特征 我想对 12 组 Gabor 参数值执行此操作 然后我想计算 Hamming Dystans
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • 如何在不超过最大值的情况下增加变量?

    我正在为学校开发一个简单的视频游戏程序 我创建了一个方法 如果调用该方法 玩家将获得 15 点生命值 我必须将生命值保持在最大值 100 并且由于我目前的编程能力有限 我正在做这样的事情 public void getHealed if h
  • 如何安全地解决这个 Java 上下文类加载器问题?

    我的数百名用户中只有一位在启动我的 Java 桌面应用程序时遇到问题 他只有大约三分之一的时间开始 另外三分之二的时间在启动时抛出 NullPointerException Exception in thread AWT EventQueu
  • 画透明圆,外面填充

    我有一个地图视图 我想在其上画一个圆圈以聚焦于给定区域 但我希望圆圈倒转 也就是说 圆的内部不是被填充 而是透明的 其他所有部分都被填充 请参阅这张图片了解我的意思 http i imgur com zxIMZ png 上半部分显示了我可以
  • 在 Netbeans 8 上配置 JBoss EAP 的问题

    我已经下载了 JBoss EAP 7 并正在 Netbeans 8 上配置它 我已经到达向导 实例属性 其中要求从选择框中选择 域 当我打开选择框时 它是空的 没有什么可以选择的 因此 完成 按钮也处于非活动状态 这使得无法完成配置 我通过
  • 如何使用 Maven 打包并运行具有依赖项的简单命令行应用程序?

    我对 java 和 Maven 都是全新的 所以这可能非常简单 如果我遵循maven2hello world此处的说明 http maven apache org guides getting started maven in Five m
  • Java 8 流 - 合并共享相同 ID 的对象集合

    我有一系列发票 class Invoice int month BigDecimal amount 我想合并这些发票 这样我每个月都会收到一张发票 金额是本月发票金额的总和 例如 invoice 1 month 1 amount 1000
  • 使用过滤器@ComponentScan所有包的危险

    我现在正在开发一个概念应用程序 我想使用组件扫描来使用特定的自定义 Spring 元注释来获取类路径上任何位置的所有类 我的注释如下所示 Target value ElementType TYPE Retention value Reten
  • Netty:阻止调用以获取连接的服务器通道?

    呼吁ServerBootstrap bind 返回一个Channel但这不是在Connected状态 因此不能用于写入客户端 Netty 文档中的所有示例都显示写入Channel从它的ChannelHandler的事件如channelCon
  • Cucumber Java 与 Spring Boot 集成 - Spring @Autowired 抛出 NullPointer 异常

    我正在为 Spring boot 应用程序编写 cucumber java 单元测试来测试每个功能 当我与 Spring Boot 集成时 Autowired 类抛出 NullPointer 异常 Spring Boot应用程序类 Spri
  • HQL Hibernate 内连接

    我怎样才能在 Hibernate 中编写这个 SQL 查询 我想使用 Hibernate 来创建查询 而不是创建数据库 SELECT FROM Employee e INNER JOIN Team t ON e Id team t Id t
  • 将 Azure AD 高级自定义角色与 Spring Security 结合使用以进行基于角色的访问

    我创建了一个演示 Spring Boot 应用程序 我想在其中使用 AD 身份验证和授权 并使用 AD 和 Spring Security 查看 Azure 文档 我执行了以下操作 package com myapp contactdb c
  • javafx android 中的文本字段和组合框问题

    我在简单的 javafx android 应用程序中遇到问题 问题是我使用 gradle javafxmobile plugin 在 netbeans ide 中构建了非常简单的应用程序 其中包含一些文本字段和组合框 我在 android
  • 具有特定参数的 Spring AOP 切入点

    我需要创建一个我觉得很难描述的方面 所以让我指出一下想法 com x y 包 或任何子包 中的任何方法 一个方法参数是接口 javax portlet PortletRequest 的实现 该方法中可能有更多参数 它们可以是任何顺序 我需要
  • 为什么这个作业不起作用?

    我有课Results which extends ArrayList
  • FileOutputStream.close() 中的设备 ioctl 不合适

    我有一些代码可以使用以下命令将一些首选项保存到文件中FileOutputStream 这是我已经写了一千遍的标准代码 FileOutputStream out new FileOutputStream file try BufferedOu
  • Trie 数据结构 - Java [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否有任何库或文档 链接提供了在 java 中实现 Trie 数据结构的更多信息 任何帮助都会很棒 Thanks 你可以阅读Java特里树
  • GUI Java 程序 - 绘图程序

    我一直试图找出我的代码有什么问题 这个想法是创建一个小的 Paint 程序并具有红色 绿色 蓝色和透明按钮 我拥有我能想到的让它工作的一切 但无法弄清楚代码有什么问题 该程序打开 然后立即关闭 import java awt import

随机推荐

  • keil5MDK 怎么新建工程(有图 超详细)

    一 建一个工程框架 1 在电脑中新建一个文件夹 命名为Template 2 点击 MDK 的菜单 Project gt New Uvision Project 然后将目录定位到刚才建立的文件夹 Template 之下 在这个目录下面建立子文
  • 请求转发和请求包含 相关细节

    请求转发 this getServletContext getRequestDispatcher forward request response 不支持相对路径 request getRequestDispatcher forward r
  • vue 全局使用 sass变量

    1 安装sass resouces loader cnpm install sass resouces loader D 2 配置build gt utils js 如下
  • vue-router 的基本用法

    vue router 的基本用法 1 什么是 vue router vue router 是 vue js 官方给出的路由解决方案 它只能结合 vue 项目进行使用 能够轻松的管理 SPA 项目中组件的切换 vue router 的官方文档
  • c/c++入门教程 - 2.4.5 c++运算符重载(加号、左移、递增、赋值、关系、函数调用)

    目录 4 5 运算符重载 4 5 1 加号运算符重载 4 5 2 左移运算符重载 4 5 3 递增运算符重载 4 5 4 赋值运算符重载 4 5 5 关系运算符重载 4 5 6 函数调用运算符重载 相关教程 4 5 运算符重载 运算符重载概
  • linux+暂停运行,如何暂停和继续运行Linux程序

    我们通过shell窗口运行程序时 由于有的程序长时间运行 直到下班了都还没有返回运行结果 这个时候 我们又不能直接关闭shell窗口 不然前面的时间就白白运行了 那有什么办法可以先暂停程序 明天再继续运行呢 不可行 关闭shell窗口后 后
  • 马踏棋盘-数据结构 详细教程

    文章目录 一 问题描述 二 问题分析 三 深度优先搜索 Depth First Search 1 基本原理 2 代码预览 四 dfs 贪心算法 1 贪心策略 2 贪心原理 3 核心代码 4 代码预览 五 栈 贪心 1 回溯方法 2 基本操作
  • 新导入的项目出现很多“cannot resolve symbol ***”,项目运行不成功,怎么处理

    新导入的项目的启动类中很多类实例化出现错误 报错内容为 cannot resolve symbol 如下图所示 我在网上搜索相关信息 有一个网页总结的比较好 网页链接 其第一种解决方式没有尝试 其他的方式我尝试了很多 更改配置之类 但都没有
  • 企业网站搭建:如何规划内容?

    企业网站是企业展示自身形象和产品的重要渠道 搭建一个优质的企业网站可以提高企业的知名度 品牌价值和业务转化率 企业网站的内容规划非常重要 好的内容规划可以帮助企业更好地向用户展示自己 并提高用户体验 以下是一些关于企业网站内容规划的建议 1
  • jquery插件无缝滚动通知栏js特效

    下载地址 一款实用的jquery插件无缝滚动网页 常见的通知栏滚动播报特效 dd
  • Element-UI踩坑之Pagination组件

    先说结论 在改变pageSize时 若当前的currentPage超过了最大有效值 就会修改为最大有效值 一般Pagination组件的声明如下
  • FinalShell上传文件失败

    本地电脑创建虚拟机 使用FinalShell连接虚拟机 上传文件失败 解决办法 使用root账户连接 不要使用普通账户
  • SpringBoot-黑马-笔记

    SpringBoot 是由 Pivotal 团队提供的全新框架 其设计目的是用来简化 Spring 应用的初始搭建以及开发过程 目录 1 SpringBoot快速入门 起步依赖 程序启动 2 配置文件 yaml配置文件数据读取 多环境配置
  • 万字因果推断入门:为什么要做因果推断?

    来源 PaperWeekly 1 为什么需要因果推断 1 1 辛普森悖论 首先 考虑一个与现实情况很相关的例子 针对某种新冠病毒 COVID 27 假设有两种疗法 方案 A 和方案 B B 比 A 更稀缺 耗费的医疗资源更多 因此目前接受方
  • APP爬虫入门,Appium+Mitmproxy强势组合实现抖音的数据爬取

    APP爬虫入门 Appium Mitmproxy强势组合实现抖音的数据爬取 最近一直在研究APP的爬虫实现 前面文章讲了虚拟机和Appium环境的搭建 和 SSL PINNING的解决方法 主要难点在于解决APP开启SSL Pinning导
  • property received type-uncompatible value: expected <Array> but got non-array value.

    Component property received type uncompatible value expected
  • JSP基础总结+例题

    1 什么是JSP Java Server Pages 1 1概述 简化的Servlet设计 在HTML标签中嵌套Java代码 用以更新开发Web应用的动态网页 JSP文件在容器中会转换成Servlet执行 JSP是对Servlet的一种高级
  • 笔记记录--Docker使用WVP-Pro网络视频平台

    1 Docker拉取镜像 镜像地址 docker镜像地址 docker pull 648540858 wvp pro docker run env WVP IP 192 168 18 61 it p 18080 18080 p 30000
  • Ag-grid在vue中使用的必要属性

    文档链接 id myGrid 唯一标识 gridReady 渲染完成后的事件 defaultColDef this defaultColDef 默认定义 所有的列都有的属性 context this context componentPar
  • 阿里巴巴——三面,面试经历记录

    在 boss 直聘上无意间看到了阿里巴巴菜鸟网络的招聘信息 现在的部门已经有两名同学被蚂蚁金服录取了 自己就不服气的也想试试 这次面试其实并没有准备充分 之前就听说总共有很多轮数 不仅会考察基础知识的深度 也会考察算法能力 项目设计能力 价