天赋有限,又达不到那样的高度···面试一线大厂,分享我最重要的两次:阿里巴巴面经+微软中国面经,终得心仪的offer

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
img

正文

9.MySQL创建索引的原则,好处

10. 怎么实现一个线程安全的计数器?

二面(四十多分钟)

=============

1. 设计模式:讲了单例,工厂方法,抽象工厂,策略模式,观察者模式,代理模式,还顺便讲了下spring动态代理的实现原理

2. 线程池有哪些参数?分别有什么用?如果任务数超过的核心线程数,会发生什么?阻塞队列大小是多少?

3. HashMap的底层数据结构

4. 红黑树的具体结构及实现,红黑树与查找树的区别体现

5. 接着聊ConcurrentHashMap,底层实现

6. HashMap哈希函数的认识,JDK1.8采用的hash函数

7. 数据库索引,索引底层的实现,B+树的结构以及与普通查找树的优点

9. TCP三次握手四次挥手,四次挥手过程中服务端的哪几种状态,哪几种包

10. 已经有一个查询好友的接口,设计一个微信朋友圈,可以实现发表朋友圈,添加评论,查看评论等功能。主要是设计数据结构

三面(50分钟:主要分布式这块)

====================

  1. 你对快手的了解,和抖音的区别,聊项目

  2. 项目中用到dubbo?那你说说什么是rpc框架?和http调用的区别是什么?

  3. Redis有哪些数据结构?持久化方案和区别?

  4. Redis哨兵、集群的设计原理和区别?

  5. Redis缓存和数据库会存在一致性问题吗?怎么解决

  6. Kafka怎么保证数据可靠性?讲了生产者端发送消息到broker持久化,分区和副本机制,消费者消费消息的at-least-once和at-most-once?怎么实现Exactly-Once?

2021年这大半年前后我总共面试了5家公司分别是阿里巴巴(已入职)、网易云音乐(已拿offer)、趣头条(已拿offer)、字节跳动(跪在最后一轮技术面)、微软中国(跪在第二面)。这不金九银十快来了嘛就拿两个印象比较深面试经历分享给大家,分别是阿里巴巴跟微软中国面经。

微软中国-苏州(挂在第二面)

==============

微软的面试是这几家公司中体验最好,最高效。首先是在boss上投递中文简历,我面试的是Mobile Engineer-Android/Outlook Mobile 英文要求是middle。简历经过初筛后,会有微软专门HR联系你并详细介绍微软和面试的岗位要求和情况,并且告诉你需要准备哪些东西。其中就包括中文简历、英文简历、英文自我介绍以及面试中会涉及考核的点(其中包括过往的工作、换工作的原因、Coding代码三个方面)。面试下来总的感觉微软对英语看重大于技术,特别是对于英语口语还是比较看重的。

面试准备

====

英文简历我就在github上参考了一些大佬的英文简历模板,然后写自己具体内容,英文简历全部采用markdown写的。关于英文简历对编写有任何疑问的,都可以给我留言。然后就是准备英文自我介绍,150~200字。

一面

==

微软第一面也是视频面试,面试官是中国小哥,首先用英文简单介绍自己,然后又用英文简单介绍我的家乡。前面英文交流结束后,接着就开始技术的面试,不过比较人性化点的是技术面试是中文。技术问题问得不多,全程半小时,像是一个摸底面试。

  • 请简单说下Android中View加载流程

  • 请简单说下Android中事件分发机制

  • 请简单说下Android中的Handler作用,请结合MessageQueue、Looper以及各自工作原理

  • 请简单说下ThreadLocal的实现原理

  • 平时是怎么学习Android技术的

  • 最近在研究Android哪方面的技术

二面

==

微软第二面就是Test Project的环节,其实就是给了gif页面的效果,包括项目中使用到的图片,mock数据json,要求一周时间完成这个效果,并把最后的可安装应用程序包和源码一并发到邮箱。对于项目的要求是:

  • 尽量不要使用第三方库,希望自己能独立解决问题

  • 使用Java代码,能使用Kotlin更佳

  • 必要的正确代码注释以及测试用例

对于第二面页面效果,实际上在之前项目有写过类似的,并且Kotlin那时候已经比较熟练了,所以直接用Kotlin撸起,并把之前写的代码拿过来直接用,只花了一天半就完成了效果发了过去了,没想挂了。当时还挺纳闷的,因为效果确实实现了,去问挂了的原因,原来是代码中少了必要的注释以及必要的测试用例,没想到最终败在了细节上。后面HR小姐姐问是否再尝试其他Android岗位,因为她说一面面试官对我评价还是很不错的,当时因为已经接了阿里offer了,就婉拒了。

Alibaba(已入职)

============

拿到阿里offer对我来说比较意外,因为从面试到最后确定发offer前后经历了一个月时间,当时投递阿里并不奢求能进。阿里面试总共经历了5轮面试,两轮电面、一轮笔试、两轮视频面。

一面

==

投完简历后隔了2天,在19:30,接到了来自杭州阿里一面电话,一面1.5小时,面试官是P7大佬,下面是一些技术方面的问题:

  • Android中View的事件分发流程以及如何解决滑动冲突

  • 阐述下Android中的消息机制,结合Looper, MessageQueue, Handler以及为什么Handler能实现线程间的切换

  • 内存泄漏发生场景有哪些以及解决的办法?LeakCanary有使用过吗?能大概说下它实现的原理吗?

  • 说说你最熟悉Android第三方库(这里分别说了Glide图片加载库,包括生命周期绑定以及Glide的三级缓存等)

  • 说说你印象中技术挑战最大以及收获最多的一个项目(这个环节持续时间比较长,建议先从整体介绍,再局部细节介绍。面试官问了很多相关细节)

  • 看你写了很多Kotlin的文章,请说下Kotlin中的扩展函数本质原理是什么?(这个问题实际上还是比较简单的,因为只要反编译过Kotlin扩展函数的代码都知道回答)

  • 有研究过Flutter吗?说下Flutter与ReactNative它们跨平台方案有什么本质不同?有在实际项目中使用Flutter吗?你是如何解决Flutter混合栈跳转问题的呢?

一面结束后说之后有个笔试题目邮件。

二面

==

试题目是java代码模板,只需要把具体实现写到函数中即可,题目是设计一个逻辑表达式计算器,因为我之前写过一个四则运算计算器的实现,其中对于括号的处理是类似的,所以花了一小时就把代码撸出来了并把所有示例中的case都跑过了,然后再花了半个小时检查代码后就提交了。

总结

互联网大厂比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-PO6qqE3p-1713462610277)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 24
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值