工作2年半跳槽面试阿里,成功拿到offer,凭什么?

简介: 2015年刚毕业的我,进入了一家小小的公司实习工作,在学校学了三年软件开发的我,还是想去寻找一份互联网行业的工作,这样更能学以致用发挥自己的特长。一直到18年三月份,我辞掉已有的工作,北上去面试,且成功拿到offer,面试回来后,好多人问我,你凭什么能拿到阿里的offer,你只不过是刚毕业工作两年的小白。

2015年刚毕业的我,进入了一家小小的公司实习工作,在学校学了三年软件开发的我,还是想去寻找一份互联网行业的工作,这样更能学以致用发挥自己的特长。一直到18年三月份,我辞掉已有的工作,北上去面试,且成功拿到offer,面试回来后,好多人问我,你凭什么能拿到阿里的offer,你只不过是刚毕业工作两年的小白。当时我只对他们笑了笑,以谦虚的语气回答:运气好运气好!但其实并不是运气好这么简单的,没实力没底气你敢去阿里面试么?我想大家一致的回答都是一样的,“不敢去”!那我凭什么才两年经验的小白会面上阿里,其实我是有底牌的。

那现在来聊一聊我所遇到的一些面试经历,希望给各位寻求新机会的小伙伴一个参考。总共面完5家收了4个offer,应该算是比较成功的吧。

由于种种原因,博文中所涉及的公司均以代号标志,且我能告诉大家的也只有面试题,其他的不便透露细节,希望大家理解。

面试题

A公司

写出java中synchronized的使用方式。

Java中设置最大堆和最小堆内存的参数是什么?

volatile的作用?

一道设计题

多个线程同时读写,读线程的数量远远⼤于写线程,你认为应该如何解决 并发的问题?你会选择加什么样的锁?

JAVA的AQS是否了解,它是⼲嘛的?

除了synchronized关键字之外,你是怎么来保障线程安全的?

什么时候需要加volatile关键字?它能保证线程安全吗?

B公司

问题一:“请你自我介绍一下”

问题二:“你有什么业余爱好?”

问题三:“你认为你工作中的哪些方面是最重要的?”

问题四:“谈谈你的缺点”

问题五:“谈一谈你的一次失败经历”

问题六:“你为什么选择我们公司?”

问题七:“对这项工作,你有哪些可预见的困难?”

问题八:“我们为什么要录用你?”

问题十:“您在前一家公司的离职原因是什么?”

C公司

mybatis怎么防止SQL注入

Hibernate的缓存机制

Hibernate一级缓存

Hibernate二级缓存

什么样的数据适合存放到第二级缓存中

Mybatis和Hibernate的区别(优缺点)

redis的使用场景

Tomcat本身的参数你⼀般会怎么调整?

如果有很多数据插⼊MYSQL 你会选择什么⽅式?

D公司

  1. 你知道哪些或者你们线上使⽤什么GC策略? 它有什么优势,适⽤于什么 场景?
  2. JAVA类加载器包括⼏种?它们之间的⽗⼦关系是怎么样的?双亲委派机 制是什么意思?有什么好处?
  3. 如何⾃定义⼀个类加载器?你使⽤过哪些或者你在什么场景下需要⼀个⾃ 定义的类加载器吗?
  4. 堆内存设置的参数是什么? 5. Perm Space中保存什么数据? 会引起OutOfMemory吗? 6. 做gc时,⼀个对象在内存各个Space中被移动的顺序是什么?
  5. 你有没有遇到过OutOfMemory问题?你是怎么来处理这个问题的?处理 过程中有哪些收获?
  6. 1.8之后Perm Space有哪些变动? MetaSpace⼤⼩默认是⽆限的么? 还是 你们会通过什么⽅式来指定⼤⼩?
  7. Jstack是⼲什么的? Jstat呢? 如果线上程序周期性地出现卡顿,你怀疑可 能是gc导致的,你会怎么来排查这个问题?线程⽇志⼀般你会看其中的什么 部分?
  8. StackOverFlow异常有没有遇到过?⼀般你猜测会在什么情况下被触 发?如何指定⼀个线程的堆栈⼤⼩?⼀般你们写多少?

E公司

● 简述synchronized?Object;Monitor机制;

● 简述happen-before规则 ;

● JUC和Object ; Monitor机制区别是什么 ; 简述AQS原理 ;

● 简述DCL失效原因,解决方法 ;

● 简述nio原理 ;

● jvm运行时数据区域有哪几部分组成,各自作用 ;

● gc算法有哪些 ; gc收集器有哪些 ;

● 简述class加载各阶段过程 ; class ; loader有哪些模型 ;

● 简述常用的JDK命令行工具 ;

● 简述字节码文件组成 ;

● 讲讲你平常是如何针对具体的SQL做优化 ;

● mysql的存储引擎有哪些,区别 ;

● gc:内存模型;

● gc: 垃圾回收 ;

● 多线程:如何实现一个定时调度和循环调度的工具类。但提交任务处理不过来的时候,拒绝机制应该如何处理 ; 线程池默认有哪几种拒绝机制 ;

● 多线程: 如何实现一个ThreadLocal ;

● 说说你了解的一个线程安全队列 ;

● Atomic包的实现原理是什么 ;

● CAS又是怎么保证原子性的 ;

● string分析1000次循环subString用了多少内存 ;

我面试E公式时是最吃力的,问的好多问题,反正他想到的都会问,由于问题太多,我也只能凭记忆罗列出这么一点点出来,希望能体谅。

打动面试官的五大技能

  1. 定量分析

定量分析是对社会现象的数量特性、数量关系与数量变化的分析。数据是许多组织的重要组成部分,所以你的组织、分析、解释和呈现数据能力是很重要的。不管是在做应用程序还是寻找不同的办法来吸引用户。特别说明下,招聘公司很重视组织数据和基于数据进行组织的能力。如果你有挖掘数据的能力,并有自己的见解,那么在竞争中将很有优势。(面试时,你可以带上曾经做过的关于数据分析的项目)。

  1. Excel

管理数据分析中最主要工具是什么?Excel。Excel在工作中会经常遇到,而且公司不会花时间去教你怎样使用Excel。所以,如果你能精通Excel,在录取中也会占有一定的优势。

  1. 创造性思维

当今企业界发展步伐异常快,招聘企业对那些有创新能力和能超越现状的求职者很感兴趣。他们希望自己的员工能够有拓展性思维,不安于现状,从第一天上班时起就能有与其他员工分享自己的想法,最好可以提高公司当前的工作系统。但是,创造性思维有点不好学习。

  1. 沟通能力

一般情况下,招聘公司都想找一些沟通能力比较强的员工。因为公司日后需要你可以有效的与客户进行电话、邮件及日常生活的交流,你的一言一行都将代表公司的形象。更重要的是,公司希望你能以简洁专业的语言来表达自己的某些看法。所以,在面试过程中,多向招聘人员展示下你的沟通能力。

  1. 谦逊的品格

有人看到谦逊会觉得奇怪,但是这个技能却是招聘人员看中的重要技能之一。当然,招聘公司需要有自信、有激情,也要乐于学习的员工。在面试时,如果被要求分享自己的想法或主意的时候,大胆的说出来。如果被指出错误,虚心的接受。多问面试人员一些问题,比如公司的一些情况和应聘岗位的一些工作。

为什么我面试五家公司有四家录取了呢,以上五大技能不仅要拥有,技术还要过硬,不然以上的面试你不想过关。那从哪里学习才能获取过硬的技术以及过硬的胆识呢?以下便是我学习了这个课程体系,才是我有这么过硬的技术以及过硬的胆识。

推荐课程体系:

一、性能调优

​​​image
二、源码解读
image
三、分布式
image
四、微服务
image
五、团队协作开发
image
六:B2C商城项目实战
image

目录
相关文章
|
26天前
|
存储 关系型数据库 MySQL
阿里面试:为什么要索引?什么是MySQL索引?底层结构是什么?
尼恩是一位资深架构师,他在自己的读者交流群中分享了关于MySQL索引的重要知识点。索引是帮助MySQL高效获取数据的数据结构,主要作用包括显著提升查询速度、降低磁盘I/O次数、优化排序与分组操作以及提升复杂查询的性能。MySQL支持多种索引类型,如主键索引、唯一索引、普通索引、全文索引和空间数据索引。索引的底层数据结构主要是B+树,它能够有效支持范围查询和顺序遍历,同时保持高效的插入、删除和查找性能。尼恩还强调了索引的优缺点,并提供了多个面试题及其解答,帮助读者在面试中脱颖而出。相关资料可在公众号【技术自由圈】获取。
|
6天前
|
SQL 关系型数据库 MySQL
阿里面试:1000万级大表, 如何 加索引?
45岁老架构师尼恩在其读者交流群中分享了如何在生产环境中给大表加索引的方法。文章详细介绍了两种索引构建方式:在线模式(Online DDL)和离线模式(Offline DDL),并深入探讨了 MySQL 5.6.7 之前的“影子策略”和 pt-online-schema-change 方案,以及 MySQL 5.6.7 之后的内部 Online DDL 特性。通过这些方法,可以有效地减少 DDL 操作对业务的影响,确保数据的一致性和完整性。尼恩还提供了大量面试题和解决方案,帮助读者在面试中充分展示技术实力。
|
1月前
|
消息中间件 存储 canal
阿里面试:canal+MQ,会有乱序的问题吗?
本文详细探讨了在阿里面试中常见的问题——“canal+MQ,会有乱序的问题吗?”以及如何保证RocketMQ消息有序。文章首先介绍了消息有序的基本概念,包括全局有序和局部有序,并分析了RocketMQ中实现消息有序的方法。接着,针对canal+MQ的场景,讨论了如何通过配置`canal.mq.partitionsNum`和`canal.mq.partitionHash`来保证数据同步的有序性。最后,提供了多个与MQ相关的面试题及解决方案,帮助读者更好地准备面试,提升技术水平。
阿里面试:canal+MQ,会有乱序的问题吗?
|
21天前
|
缓存 前端开发 JavaScript
"面试通关秘籍:深度解析浏览器面试必考问题,从重绘回流到事件委托,让你一举拿下前端 Offer!"
【10月更文挑战第23天】在前端开发面试中,浏览器相关知识是必考内容。本文总结了四个常见问题:浏览器渲染机制、重绘与回流、性能优化及事件委托。通过具体示例和对比分析,帮助求职者更好地理解和准备面试。掌握这些知识点,有助于提升面试表现和实际工作能力。
55 1
|
28天前
|
消息中间件 架构师 Java
阿里面试:秒杀的分布式事务, 是如何设计的?
在40岁老架构师尼恩的读者交流群中,近期有小伙伴在面试阿里、滴滴、极兔等一线互联网企业时,遇到了许多关于分布式事务的重要面试题。为了帮助大家更好地应对这些面试题,尼恩进行了系统化的梳理,详细介绍了Seata和RocketMQ事务消息的结合,以及如何实现强弱结合型事务。文章还提供了分布式事务的标准面试答案,并推荐了《尼恩Java面试宝典PDF》等资源,帮助大家在面试中脱颖而出。
|
1月前
|
SQL 关系型数据库 MySQL
阿里面试:MYSQL 事务ACID,底层原理是什么? 具体是如何实现的?
尼恩,一位40岁的资深架构师,通过其丰富的经验和深厚的技術功底,为众多读者提供了宝贵的面试指导和技术分享。在他的读者交流群中,许多小伙伴获得了来自一线互联网企业的面试机会,并成功应对了诸如事务ACID特性实现、MVCC等相关面试题。尼恩特别整理了这些常见面试题的系统化解答,形成了《MVCC 学习圣经:一次穿透MYSQL MVCC》PDF文档,旨在帮助大家在面试中展示出扎实的技术功底,提高面试成功率。此外,他还编写了《尼恩Java面试宝典》等资料,涵盖了大量面试题和答案,帮助读者全面提升技术面试的表现。这些资料不仅内容详实,而且持续更新,是求职者备战技术面试的宝贵资源。
阿里面试:MYSQL 事务ACID,底层原理是什么? 具体是如何实现的?
|
1月前
|
Kubernetes 架构师 算法
阿里面试:全国14亿人,统计出重名最多的前100个姓名
文章介绍了如何解决“从全国14亿人的数据中统计出重名人数最多的前100位姓名”的面试题,详细分析了多种数据结构的优缺点,最终推荐使用前缀树(Trie)+小顶堆的组合。文章还提供了具体的Java代码实现,并讨论了在内存受限情况下的解决方案,强调了TOP N问题的典型解题思路。最后,鼓励读者通过系统化学习《尼恩Java面试宝典》提升面试技巧。
阿里面试:全国14亿人,统计出重名最多的前100个姓名
|
2月前
|
Web App开发 前端开发 Linux
「offer来了」浅谈前端面试中开发环境常考知识点
该文章归纳了前端开发环境中常见的面试知识点,特别是围绕Git的使用进行了详细介绍,包括Git的基本概念、常用命令以及在团队协作中的最佳实践,同时还涉及了Chrome调试工具和Linux命令行的基础操作。
「offer来了」浅谈前端面试中开发环境常考知识点
|
1月前
|
存储 缓存 NoSQL
阿里面试题:缓存的一些常见的坑,你遇到过哪些,怎么解决的?
阿里面试题:缓存的一些常见的坑,你遇到过哪些,怎么解决的?
|
1月前
|
存储 Kubernetes 架构师
阿里面试:JVM 锁内存 是怎么变化的? JVM 锁的膨胀过程 ?
尼恩,一位经验丰富的40岁老架构师,通过其读者交流群分享了一系列关于JVM锁的深度解析,包括偏向锁、轻量级锁、自旋锁和重量级锁的概念、内存结构变化及锁膨胀流程。这些内容不仅帮助群内的小伙伴们顺利通过了多家一线互联网企业的面试,还整理成了《尼恩Java面试宝典》等技术资料,助力更多开发者提升技术水平,实现职业逆袭。尼恩强调,掌握这些核心知识点不仅能提高面试成功率,还能在实际工作中更好地应对高并发场景下的性能优化问题。