前言

要说程序员最想要进入的大厂,阿里,腾讯,百度必定是首当其冲,而互联网大厂必定是阿里巴巴首当其冲,今天就来分享一下我面试阿里的一些经历与心得。

不想进大厂的程序员不是好程序员!

“80%的oer掌握在20%的人手中”这句话也不是不无道理的。决定你面试能否成功的因素中实力固然占有很大一部 分比例,但是如果你的心态或者说运气不好的话,依然无法拿到满意的 oer。运气暂且不谈,就拿心态来说,千万 不要因为面试失败而气馁或者说怀疑自己的能力,面试失败之后多总结一下失败的原因,后面你就会发现自己会越来越强大。

本人也是经历了大半年的准备才拿到了阿里的offer

个人经历

普通专科毕业,12年转行进入软件开发行业。在杭州工作两年,14年来到深圳,从事java开发一晃8年。尝试过2次开发方向的转变,一次是2014年左右,移动APP的浪潮时期,自学了安卓开发半年,结果还没等转开发方向成功,移动开发的浪潮就逐渐过去,第一次转变尝试就这样胎死腹中,白忙活一场。第二次是2015~16年,这个时间点正是大数据开发最热门的时期,自学各种大数据框架,无奈受限于学历,并没有找到满意的工作,只能回归java。

盲目的追逐了几次技术浪潮,但是又没有真正对自己的职业生涯有多大的帮助。

总的来说,工作8年,做过一些尝试和努力,但可能没有遇到好的机会或者选择的方向错了,导致至今混得不尽如人意。

人生转折

出于对现状的不满,我决定要努力奋斗了!

因为觉得这样确实是在浪费自己时间,(看着同期的同学都在茁壮成长) 与其坐以待毙,不如我自己先出去试试水,去一家能够迅速成长的公司。提完离职申请,我开始有意识看些面试问题,重拾培训时的笔记,背题目,看些基本的知识问题……

人生的路,一步慢,步步慢。如果在一开始就落后的话,只会与那些早有准备的人越离越远。

这段时间看过的书

《Java核心知识》《Java面试宝典》《高并发与多线程》《Java程序性能优化》、《Spring实战》、《Zookeeper》、《高性能MySQL》、《亿级网站架构核心技术》、《可伸缩服务架构》、《Java编程思想》

这些书也只是看了一部分,并没有全部看完,有时会经常带着问题就进入了梦乡,所以这段时期我的进展并没有太大明显。

分享下这段时期面试总结的一些经验

1、面试一定要带简历,这是态度问题,不然容易第一印象就不好。

2、简历上最核心的2点,1是自己掌握的技术栈说明,让面试官清楚知道你掌握技术栈;2是项目中使用了哪些技术栈,体现自己对这些技术栈的实际项目的运用情况。

另外简历不要超过3页。很多早期的项目经验和大篇幅的项目功能介绍,并没有什么意义。

3、准时,实在有突发情况,要提前打电话商量修改面试时间。

4、至少提前几周准备面试,因为java知识体系真的很庞大,不复习下直接面试,就像送人头一样,很容易错失难得的面试机会。

5、java基础一定要掌握好,不然丢分非常严重。之前面试一个高级java,竟然回答不出年轻代的垃圾回收机制,一下子我都不想继续聊下去了。

6、框架的核心特性要熟悉,并对其实现原理有一定的了解。比如:Spring Boot有哪些新的特性?他的核心特性自动化配置的原理了解吗?

7、主流中间件的工作原理和调优有一定的了解。

8、数据库一般也是必问的,索引,锁,事务,sql优化都必须了解。

9、听清楚面试问题再回答,不要答非所问,太过自由发挥。你和面试官聊得越有共鸣,你通过的几率越高。不知道可以直接说不知道,然后再阐述下自己的认知和了解,以探讨的方式让面试官和你互动,这样也能偷师点东西。

10、了解不深的技术栈名词和机制,尽量回避,不然只要你提到,面试官就可能展开深入的问下去。

11、多积累一些技术圈的人脉,很多时候内推进入会容易很多。

12、多积累一些可展示的技术成就和作品,比如参与了某某著名网站或者APP的核心模块开发,在GitHub上开源了什么框架或者参与了什么开源框架的开发,著名博客网站的一些排名,运营某某技术公众号。

由于我自己学习的过程过于杂乱无章,所以这段时期面试的效果并不理想

小转折

经过这段时期面试的失败我总结了一个道理:学习需要的也不是一腔热血,需要的是长期的规划,这里分享一个思维导图,大家可以自行进行查漏补缺和规划:

对应阿里P7架构师路径图

spring

Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来,从而简化了开发者的代码量。

K8S

Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。

zookeeper

zookeeper是一个分布式服务框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。简单来说zookeeper=文件系统+监听通知机制。

Netty

Netty 是一个利用 Java 的高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的 API 的客户端/服务器框架。

它活跃和成长于用户社区,像大型公司 Facebook 和 Instagram 以及流行 开源项目如 Infinispan, HornetQ, Vert.x, Apache Cassandra 和 Elasticsearch 等,都利用其强大的对于网络抽象的核心代码。

经历了这段时期系统性的学习后,筹备了半年终于又一次得到了去阿里面试的资格。

Java中间件一面

1.技术一面考察范围:

  • 重点问了Java线程锁:synchronized 和ReentrantLock相关的底层实现

  • 线程池的底层实现以及常见的参数

  • 数据结构基本都问了一遍:链表、队列等

  • Java内存模型:常问的JVM分代模型,以及JDK1.8后的区别,最后还问了JVM相关的调优参数

  • 分布式锁的实现比较

2.技术一面:

1.自我介绍

2.擅长哪方面的技术?

3. Java有哪些锁种类? (乐观锁&悲观锁、可重入锁&Synchronize等)

4.比较重要的数据结构,如链表,队列,栈的基本理解及大致实现

5. J.U.C下的常见类的使用。ThreadPool的深入考察; BlockingQueue的使用

6. Java内存分代模型,GC算法, JVM常见的启动参数; CMS算法的过程。

7. volatile关键字有什么用(包括底层原理)

8.线程池的调优策略

9. spring cloud的服务注册与发现是怎么设计的?

10.分布式系统的全局id如何实现

11.分布式锁的方案,redis和zookeeper哪个个好,如果是集群部署,高并发情况下哪个性能更好。

Java中间件二面

1.技术二面考察范围:

  • 问了项目相关的技术实现细节

  • 数据库相关:索引、索引底层实现、mysql相关的行锁、表锁等

  • redis相关:架构设计、数据一致性问题

  • 容器:容器的设计原理等

2.技术二面:

1.参与的项目,选一个,技术难度在哪里?

2. Collections.sort底层排序方式

3.负载均衡的原理

4.设计模式与重构,谈谈你对重构的理解

5.谈谈Redis相关的集群有哪些成熟方案?

6.再谈谈-致hash算法(redis)?

7.数据库索引,B +树的特性和建树过程。

8. mysql相关的行锁,表锁;乐观锁,悲观锁

9.谈谈多线程和并发工具的使用

10.讲讲Redis的架构和组件

11. Redis的数据一致性问题(分布式多节点环境&单机环境)

12. docker容器

Java中间件三面

1.技术三面考察范围

  • 主要谈到了高并发的实现方案

  • 以及中间件:redis、rocketmq、kafka等的架构设计思路

  • 最后问了平时怎么提升技术的

2.技术三面题目

1.高并发情况下,系统是如何支撑大量的请求的?

2.接着上面的问题,延伸到了中间件,kafka、 redis、 rocketmq、 mycat等 设计思路和适用场景等

3.最近上过.上哪些技术站点; 最近在看哪些书。

4.工作和生活中遇见最大的挑战,怎么去克服?

5.未来有怎样的打算

Java中间件四面

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

历经半年筹备,终入职阿里巴巴

针对性的了解相关的知识

这半年多时间一直都在针对学习路线找相关的资料,也通过一位京东的朋友要到了一份京东架构师写的Java面试宝典(284篇)我把京东架构师给我的一份Java面试宝典啃完了,从而还找了Java后端以及一些大厂的面试场景和面试题不断刷题提高自己的眼界

Java核心面试宝典复习知识

这本Java核心知识把每个知识点解析的很深,对大家应该很有帮助,它把大部分的Java知识集结在一起深入的解析出来(非常建议大伙看一看)

关注我后台私信回复【面试】领取获取往期Java高级架构资料、源码、笔记、视频。Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术

高并发

Redis

Spring cloud

Spring/Netty/Dubbo/JVM

微服务架构

根据自身面试经历整理以及不断收集的(珍藏版)

相关的电子书、底层源码

阿里巴巴必备学习知识点

结束语

很多人感叹“学而无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。无论是学习还是工作,都应该有主动性,所以如果拥有大厂梦,那么就要自己努力去实现它。

以上学习资料均免费放送,最后祝愿各位身体健康,顺利拿到心仪的offer!

从普通大专到阿里只用了8个月,我是如何在迷茫期后面试阿里拿到Offer,定级阿里P7的?相关推荐

  1. 老男孩培训 | 0基础转行,大专学历,工资翻3倍,他只用了5个月!

    对于职场人来说,转行越来越日常化了,受疫情影响,各行各业多多少少都有些不景气,有的人选择打破现状,有的人则选择稳步求进. 对于职场年轻人来说,他们有条件通过更多尝试来找到自己擅长.喜欢的职业:对于职场 ...

  2. 三分钟黑了阿里?马云下死命令留他?吴翰清辟谣:我没黑过阿里

    整理 | 伍杏玲 出品 | 程序人生(ID:coder_life) 不知道什么时候开始,阿里云大牛吴翰清在网上的标签近乎传奇:"三分钟黑掉阿里内网"."唯一让马云睡得安稳 ...

  3. Android开发六年收获阿里offer定级P7,多亏在阿里P8师兄给的攻略、面试技巧以及学习笔记!!!

    前言 又到了每年的毕业季,应届毕业生在找工作过程对于简历设计和面试技巧有一定的欠缺,这对于求职是比较重要的两个因素,因此掌握一定的面试技巧对于找互联网技术岗位的工作帮助非常大.本篇文章给大家分享一波职 ...

  4. 1月23日云栖精选夜读:一张图解读阿里云数据管理DMS企业版

    摘要: 阿里云数据管理DMS企业版,作为数据管理产品大家族里的新成员,于2017年11月开启公测,今年1月底正式发布商业化版本. 作为业界领先的面向企业的数据库DevOps解决方案,DMS企业版旨在帮 ...

  5. 钉钉如何调整组织架构_阿里调整组织架构:盒马升级为独立事业群,钉钉被划进阿里云丨钛快讯...

    钛媒体6月18日消息,阿里巴巴集团CEO张勇通过全员信宣布了阿里新一轮面向未来的组织升级. 他表示这次升级的主要目的是:充实创新业务的领导力量和组织保障:明确大文娱一号位,聚焦大文娱各业务的紧密融合: ...

  6. 90后实习生,是如何成长为阿里云分布式NoSQL领域专家

    摘要: 我是亦征,本名王怀远,现在是阿里云存储服务团队的研发,正值五四青年节,受云栖社区邀请,来分享下自己的成长故事.从5年前第一次进入阿里云实习到如今,我一直都在表格存储TableStore团队,参 ...

  7. 遇见OFFER,阿里云最强技术团队现身招聘,“职”为你来

    简历投递入口: https://bss.csdn.net/delivery/resume/ali 在5·15 遇见OFFER大厂梦招聘活动中,近20家企业来到CSDN[遇见OFFER]直播招聘栏目,其 ...

  8. 阿里云ACA、ACP和ACE认证考试有什么区别?考生应该如何选择?-阿里云开发者社区

    阿里云认证分为ACA.ACP和ACE三个等级.考生应该考取ACA.ACP还是ACE阿里云认证证书呢?本文分享阿里云认证等级ACA.ACP和ACE选择: 阿里云认证ACA.ACP和ACE等级选择 阿里云 ...

  9. 阿里开源新一代 AI 算法模型,由达摩院90后科学家研发

    最炫的技术新知.最热门的大咖公开课.最有趣的开发者活动.最实用的工具干货,就在<开发者必读>! 每日集成开发者社区精品内容,你身边的技术资讯管家. 每日头条 阿里开源新一代 AI 算法模型 ...

最新文章

  1. HBase的安装、写入和查询操作
  2. Python中最常用的字符串方法!
  3. nova7修屏逛校园2021-07-07
  4. 字典,和字典的增删改查
  5. 为了研究,可以在 Linux 内核中植入漏洞吗?
  6. Django之ModelForm详解
  7. 战争学院服务器不稳定,英雄联盟服务器突然崩溃坑玩家!战争学院玩家全被强制下线...
  8. python+源码如何编译安装mysql_Python源码安装cx_Oracle
  9. C/C++ C# unity经常使用的一些快捷键
  10. node.js历史版本下载安装
  11. word流程图两条线的端点连接_word流程图连接线怎么用
  12. 线程wait和notify深入学习和分析
  13. 7-39 抽卡游戏 (30分) 本题的灵感来源于一个古典的概率模型。 AliceAliceAlice 在一个卡池里抽卡,里面有 xxx 张 sss 卡和 yyy 张 aaa 卡。 AliceAlice
  14. 15. 徽章 和 面包屑导航
  15. 微信小程序与内嵌网页交互实现支付功能
  16. Android 打开 GPS 导航并获取位置信息
  17. opencv人脸检测+美颜
  18. oracle exp导出表where,oracle EXP导出一张表时使用query参数指定where条件
  19. 基于高斯求和计算方法设计阶乘算法
  20. 华翼宽带android客户端,电信推新产品“华翼宽带” 二次认证亮了

热门文章

  1. 移动端微信浏览器调试工具整理eruda,微信x5调试工具无法使用,推荐新工具eruda、vconsole和debugxweb
  2. 主机MTU值和Docker MTU值不一致导致Harbor无法推送问题
  3. 单元测试中 Right-BICEP 和 CORRECT
  4. nodemon运行 提示错误:无法加载文件 C:\Users\gxf\AppData\Roaming\npm\nodemon.ps1。
  5. java的excel模板下载(解决中文名乱码问题)
  6. Macbooster8免费mac清理垃圾软件功能介绍
  7. c51语言主函数,51单片机的基本c51语言程序介绍
  8. learn language Part-One
  9. EXCEL编程经验总结
  10. OpenAI注册(ChatGPT)