求职经历,三轮技术面 +HR 面,面试也不过如此

2023-11-03

众所周知,阿里主要以 Java 为主,因此我投递的职位是 Java 高级/资深开发。我当时是在 Boss 直聘 App 上看到的职位,下图是当时的职位招聘信息。

面试过程中注意策略

我求职的阿里的 Java 技术岗位一共有三轮技术面试和一轮 HR 面试,下文会详细的讲。

因为这段时间面试了很多大厂,有一些拿到了 offer,有一些因为一些原因没有拿到,因此我个人觉得对于像求职 BATM 这样的大厂或者字节跳动、拼多多这样的独角兽公司,最后能否拿到 offer 一部分取决于你的个人技术水平和工作经验,另外一部分取决于你的运气,还有一部分取决于你面试时的策略和技巧,个人的技术水平和工作经验这一块不必多说

第一轮技术面试

  • Java 的 Object 类有哪些常用的方法?

  • Java 容器有哪些?哪些是同步容器,哪些是并发容器?

  • ArrayList 和 LinkedList 的插入和访问的时间复杂度?

  • java 反射原理, 注解原理?

  • 新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?

  • HashMap 在什么情况下会扩容,或者有哪些操作会导致扩容?

  • HashMap 检测到 hash 冲突后,将元素插入在链表的末尾还是开头?

  • 1.8 还采用了红黑树,讲讲红黑树的特性,为什么大家一定要用红黑树而不是 AVL、B 树之类的?

  • 哪些场景下,子类需要重写 equals 方法和 hashCode 方法?

  • Java 异常,什么是 checked Exception 和 unchecked Exception,举几个具体的例子;是否研究过 Spring Boot 中的异常;

  • ConcurrentHashMap 的特性和实现原理;

  • 什么是分库分表,以及分库分表的具体方法和使用场景;

  • 数据库事务的 ACID;

  • 什么是分布式锁以及其实现原理和使用场景;

  • 幂等性问题。

这里需要说一下,上面的面试题其实都很基础,尤其是涉及到 Java 本身的如果你是从事 Java 开发的,但是只局限于应付公司的业务代码,从来没有主动去研读一下 jdk 的一些常用类库,无论从应付面试来说,还是就你的 Java 技术栈的提高乃至技术职业生涯都是不好的,希望从事 Java 开发的读者要意识到这一点。

网络上有很多类似于 Java 面试高频知识点总结的帖子和课程,我个人觉得这些课程你可以用它作为大纲,但是千万不能只达到这些大纲要求的深度,作为 Java 开发者,jdk 的源码,尤其是常用的 java 类的源码还是建议认真阅读一下。

第一轮技术面试结束后,我就问面试官是否通过了。面试官告诉我通过了,然后我问他下一轮的的面试会安排在什么时候。我当时告诉他希望他们尽快安排,已经有其他的公司在催我入职了。面试官说去沟通一下。

于是当天下午大概一两点左右,一面面试官问我晚上是否有时间,给我安排第二轮技术面试,于是约了当天晚上七点。

第二轮技术面试

  • 查询中哪些情况不会使用索引?

  • 数据库索引,底层是怎样实现的,为什么要用 B 树索引?

  • Mysql 主从同步的实现原理?

  • MySQL 是怎么用 B+树?

  • 谈谈数据库乐观锁与悲观锁?

  • 有使用过哪些 NoSQL 数据库?MongoDB 和 Redis 适用哪些场景?

  • 描述分布式事务之 TCC 服务设计?

  • Redis 和 memcache 有什么区别?Redis 为什么比 memcache 有优势?

  • Redis 的数据结构

  • 海量数据过滤,黑名单过滤一个 url。

  • 讲一讲 AtomicInteger,为什么要用 CAS 而不是 synchronized?

第二轮技术面试是主管面试。原来约了晚上七点,我到了之后一面的面试官接待了我,并告知我他们主管临时有点急事,能不能把时间改到九点,或者再约。我当时想来了就来了,就不单独约时间了。于是在这之前和一面的面试官又聊了一下,一面的面试官人很 nice,我们聊了很多东西

聊了大概一个多小时后,结束了面试,我离开时,发现外面的沙发上还有一个人等待面试,汗,竞争压力真大。

第二天早上,我通过一面面试官帮我打听二面面试结果,大概中午的时候,二面面试官加我微信说面试通过了,但是三面面试官,也就是他们大部门的 leader 在深圳出差,问我是否方便视频面试,我说可以,于是就约定了第二天晚上七点的视频面试。

第三轮技术面试

  • 考虑 redis 的时候,有没有考虑容量?大概数据量会有多少?

  • Redis 的 list zset 的底层实现

  • 集群监控的时候,重点需要关注哪些技术指标?这些指标如何优化?

  • 从千万的数据到亿级的数据,会面临哪些技术挑战?你的技术解决思路?

  • 数据库分库分表需要怎样来实现?

  • 排序算法的复杂度,快速排序非递归实现。

  • 消息中间件有哪些?他们之间的优劣势?

  • 分布式架构设计哪方面比较熟悉

  • 介绍你实践的性能优化案例,以及你的优化思路

  • 介绍项目

这类面试我给读者的建议是,无论你是公司某个项目的负责人,还是你只是参与某个项目只负责其中一部分,不仅要想办法了解整个系统的结构设计,多反思你现在的结构设计,还要对关键的细节核心也要非常熟悉,把你所在的项目的一些关键细节搞清楚,千万不要只局限于自己的"一亩三分地"。

第四轮 HR 面试

第二天早上,一面的面试官告诉我第三轮技术面试已经通过了,接下来就是 HR 面试了,但是阿里的 HR 面试与一般的人事面试不太一样,HR 在阿里有点像军团的"政委",同时告诉我,阿里的薪资待遇现金部分不会给太多,更多的是期权,而且这些期权公司内部是明码标价的,在离职时公司会以制定的价格去回购。

当天,一个自称阿里的 HR 主管的女性给我打电话,与我约了下一轮的人事面试,具体日期记不得了,是后面几天的某个上午 10 点。

1.工作中遇到的最大挑战是什么,你如何克服的?

2.你最大的优点和最大的缺点,各自说一个?

3.未来的职业发展,短期和长期的规划是什么?

最后,你懂的,主要就是 HR 走流程了,主要问了未来的职业规划。

我的感悟

我这个人,非科班出身,我深知有一份大厂工作经验的重要性。所以自毕业以来,一直想着有一天能去 BAT 其中之一工作,然而造化弄人,总因为这样那样的原因,一直未能得偿所愿。在 2019 年整整一年,创业付出大量时间和心血之后,决心还是告别小公司,再去大厂历练一下。于是经过认真的准备,先后面试了腾讯、饿了么、阿里蚂蚁金服、字节跳动等大厂,其中尤为亲睐阿里的工作机会,当然由于早些年面试大厂受挫,心里存在一点的恐惧心理,但这次之后再也不存在任何恐惧之心了,说白了,也不过如此而已。

我把这段经历写出来分享给大家,并不是想说明我有多强,是希望给想面试阿里的同学一点启发和帮助。入职大厂不仅需要技术实力,还需要一点点运气和策略。

以上就是蚂蚁金服高级 java 面试题,以下最全阿里高级 Java 必考题范围和答案——点击此处

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

求职经历,三轮技术面 +HR 面,面试也不过如此 的相关文章

随机推荐

  • Qt应用开发(基础篇)——字体选择器 QFontDialog

    一 前言 QFontDialog类继承于QDialog 是一个设计用来选择字体的对话框部件 对话框窗口QDialog QFontDialog字体选择对话框 设计用来让用户选择某一种字体 一般用于文本编辑窗口 标签显示和一些需要文本输入的场景
  • 第七篇 图像分类的评价指标

    文章目录 摘要 1 混淆矩阵 2 准确率 Accuracy 3 精确率 Precision 4 召回率 Recall 5 F1 score 6 代码样例 摘要 一般情况来说 单一评分标准无法完全评估一个机器学习模型 只用good和bad偏离
  • IDEA调试时的步入(step into)进不去源码怎么办

    文件 gt 设置 gt 构建 执行 部署 gt 调试器 gt 步进 gt 把java 和javax 取消勾选即可
  • 第十节 挂载NFS 网络文件系统

    本章节将介绍如何挂载NFS 网络文件系统 为后面的主机编译生成的ARM Linux 应用传输到开发板做准备 网络文件系统简介 网络文件系统 常被称为NFS Network File System 它是一种非常便捷的在服务器与客户端通过网络共
  • 使用android studio环境新建一个工程——helloworld

    几个月没有学习Android了 今天想研究研究Android与硬件通信 结果都快忘记如何新建一个新的工程了 因此 给自己写一个博客 算作我的备忘录吧 其实很简单 步骤如下 1 需要之前把android studio先部署正确了 能保证正常运
  • Java从入门到实战总结-1.1、Java基础之环境搭建和eclipse安装

    Java从入门到实战总结 1 1 Java基础之环境搭建和eclipse安装 文章目录 Java从入门到实战总结 1 1 Java基础之环境搭建和eclipse安装 1 Hello Java 1 1 Java起源 1 2 Java演变 2
  • MTK9612方案电视STR开机后屏黑有声的问题分析

    问题描述 客户反馈问题 机顶盒连接tv tv str 关机 机顶盒一直开着 过了几个小时 一次 或者第二天过来 一次 str开机 出现tv 黑屏 抓取分析log 考虑到开了ac logleve 7后比较难复制问题 麻烦这样操作 开机停到mb
  • 如何设置网页标签的LOGO

    问题描述 我们打开很多页面都会发现浏览器标签上有LOGO 那么我们该怎么样给自己的网站也设置一个酷炫的LOGO呢 解决办法 1 首先取一张图片 打开 http www bitbug net 或者百度 搜索ico图标制作 制作成16 16px
  • 求二叉树第K层节点的个数

    题目 求二叉树第k层节点的个数 思路 1 递归 求根为root的二叉树第k层节点的个数 就是要求 root left第k 1层节点的个数 root right第k 1层节点的个数 public static int getNumberOfK
  • Idea中使用Tomcat部署并启动Web项目

    首先在Idea中选择编辑运行配置 如下图 左上角的 号 选择Tomcat服务 如下图 自定义服务名称和项目在浏览器的访问路径 配置Tomcat服务器路径 如下图 然后在服务器中部署项目 下面的警告提示 Warning No artifact
  • 深度学习(五)caffe环境搭建

    ubuntu 系统下的Caffe环境搭建 原文地址 http blog csdn net hjimce article details 48781693 作者 hjimce 对于caffe的系统一般使用linux系统 当然也有windows
  • 运算放大器基本参数-增益带宽积(直观解释)

    运算放大器在理想情况下增益为无限大 但是在显示生活中其增益是有限的 增益带宽积指的就是运放的增益和其带宽的乘积 对于一个运放来说这个参数为一个常数 也就意味着增益和带宽成反比 下图通过直观的实验来验证 上图为输入1kHz时输入与输出的波形
  • Proxyee Down简介

    以前写过一篇用Proxyee下载百度网盘大文件的文章 后来一直没在用过 现在发现Proxyee出了新版 功能也增加了 所以重新来介绍一下 现在它的Github地址也变了 现在的地址是 https github com proxyee dow
  • myeclipse中No entries available错误解决方法

    在hibernate中 每个数据表对应的其实是一个实体类 每个实体类有一个对应的hbm xml配置文件和你匹配 myeclipse中有个MyEclipse Database Explorer视图 它提供了myeclipse与数据库直接连接的
  • C++多态理解与认识

    1 什么是多态 多态是指函数调用的多种形态 使我们调用函数更加灵活 多态分为静态多态与动态多态 1 静态多态 静态多态指的是编译时的多态 通过函数重载实现 根据函数命名规则找到函数地址 从而实现调用不同的方法 2 动态多态 运行时 父类指针
  • DVWA-XSS 级别通关详解(图文详细)

    目录 DVWA XSS 级别通关详解 low级别 1 反射性xss 2 存储型xss 3 DOM型xss Medium级别 1 反射型xss 2 存储型xss 3 DOM型xss hight级别 1 反射型xss 2 存储型xss 3 DO
  • 一文搞懂基于用户的协同过滤推荐算法

    本文针对无上下文信息的隐性反馈数据集 每一条行为记录仅仅包含用户ID和物品ID 介绍基于用户的协同过滤算法原理 基于用户的协同过滤推荐算法本质 找到和待推荐用户相似的用户群 推进该用户群感兴趣且待推荐用户没购买过的物品 例如下图中 用户a购
  • java基础

    一 java环境的搭建 搭建Java环境的步骤如下 1 下载Java Development Kit JDK 可以从Oracle官方网站或者其他可靠的网站下载适用于您的操作系统的JDK版本 OpenJDK JDK Updates Proje
  • Linux运维相关命令(不定时更新)

    日志 查找 查看最近n行 gt gt gt tail n 100 filename 查找包含字符 a 的行 gt gt gt grep a filename 修改 删除包含字符 a 的行 gt gt gt sed i e a d filen
  • 求职经历,三轮技术面 +HR 面,面试也不过如此

    众所周知 阿里主要以 Java 为主 因此我投递的职位是 Java 高级 资深开发 我当时是在 Boss 直聘 App 上看到的职位 下图是当时的职位招聘信息 面试过程中注意策略 我求职的阿里的 Java 技术岗位一共有三轮技术面试和一轮