一次惊险的跳槽面试经历(阿里/美团/头条/网易/有赞...)

转载自   一次惊险的跳槽面试经历(阿里/美团/头条/网易/有赞...)

每次说因为生活成本的时候面试官都会很惊奇,难道有我们这里贵?好想直接给出下面这张图,厦门的房价真的好贵好贵好贵。。。

 

面试过程

有兴趣加入阿里的欢迎发简历至 zhangzb2007@gmail.com,或简书上给我发信息。

面的是Java岗,总共面了7家公司,通过了6家。按自己的信心提升度我把面试过程分为上半场和下半场。

上半场

曹操专车

这是吉利集团下属子公司,已经是一家独角兽。一面中规中矩,没啥特别的。二面好像是个主管,隔了好几天,基本没问技术问题,反而是问职业规划,对加班有啥看法,有点措手不及,感觉回答的不好。但是过几天还是收到HR的现场面试通知。现场是技术面加HR面,技术面被问了几个问题有点懵逼:a. zookeeper的watcher乐观锁怎么实现 b. 一个项目的整个流程 c. 说出一个空间换时间的场景 d. centos7的内存分配方式和6有啥不同 f. 你对公司有什么价值。HR跟我说节后(那会再过两天就是清明)会给我消息,结果过了半个月突然接到他们的电话,说我通过了,给我讲了他们的薪资方案,没太大吸引力,再加上这种莫名其妙的时间等待,直接拒了。

美亚柏科

估计很多人没听说过这家公司,这是一家厦门本土公司,做政府安防项目的,在厦门也还是小有名气。但是面试完直接颠覆了我对这家公司的认知。进门最显眼的地方是党活动室,在等面试官的一小段时间里有好几拨人到里面参观。面试前做了一份笔试题,基本都是web/数据库方面的。第一面简单问了几个redis的问题之后面试官介绍了他们的项目,他们都是做C和C++的,想找一个人搭一套大数据集群,处理他们每天几百G的数据,然后服务器全部是windows!二面是另一个部门的,印象中就问了kafka为什么性能这么好,然后就开始问买房了没有,结婚了没有,他对我现在的公司比较了解,又扯了挺久。三面应该是个部门老大了,没有问技术问题,也是问买房了没,结婚没,问各种生活问题,有点像人口普查。我有点好奇,问他们为啥这么关心这些问题,他直接说他们更强调员工的稳定性,项目比较简单,能力不用要求太高,不要太差就行。汗,直接拒了。

有赞

绝对推荐的一家公司,效率超高。中午找了一个网友帮忙内推,晚上就开始一面,第二天早上二面,第三天HR就约现场面试时间,快的超乎想象。现场面也是先一个技术面,最后才HR面。面试的整体难度中等。现在就记得几个问题:G1和CMS的区别,G1有啥劣势;Kafka的整体架构;Netty的一次请求过程;自旋锁/偏向锁/轻量级锁(这个问题在头条的面试里也出现了一次)、hbase线上问题排查(刚好遇到过NUMA架构下的一个问题,借此把hbase的内核介绍了下)。 这里不得不说下有赞的人,真的很赞。终面的面试官是一个研发团队的负责人,全程一直微笑,中间电话响了一次,一直跟我道歉。面完之后还提供了团队的三个研发方向让我自己选择。后面看他的朋友圈状态,他那天高烧,面完我就去打点滴了,但是整个过程完全看不出来。帮我内推的网友是在微信群里找到的,知道我过了之后主动找我,让我过去杭州有啥问题随时找他。虽然最终没有去,但还是可以明显感受到他们的热情。

字节跳动(今日头条)

HR美眉打电话过来说是字节跳动公司,想约下视频面试时间。那会是有点懵的,我只知道今日头条和抖音。后面想到北京的号码才想起来。头条可以说是这次所有面试里流程最规范的,收到简历后有邮件通知,预约面试时间后邮件短信通知,面试完后不超过一天通知面试结果,每次面试有面试反馈。还有一个比较特别的,大部分公司的电话或者视频面试基本是下班后,头条都是上班时间,还不给约下班时间(难道他们不加班?)。

一面

面试官刚上来就说他们是做go的,问我有没有兴趣,他自己也是Java转的。我说没问题,他先问了一些Java基础问题,然后有一道编程题,求一棵树两个节点的最近的公共父节点。思路基本是对的,但是有些细节有问题,面试官人很好,边看边跟我讨论,我边改进,前前后后估计用来快半小时。然后又继续问问题,HTTP 301 302有啥区别?设计一个短链接算法;md5长度是多少?整个面试过程一个多小时,自我感觉不是很好,我以为这次应该挂了,结果晚上收到面试通过的通知。

二面

在一个上午进行的,我以为zoom视频系统会自动连上(一面就是自动连上),就在那边等,过了5分钟还是不行,我就联系HR,原来要改id,终于连上后面试官的表情不是很好看,有点不耐烦的样子,不懂是不是因为我耽误了几分钟,这种表情延续了整个面试过程,全程有点压抑。问的问题大部分忘了,只记得问了一个线程安全的问题,ThreadLocal如果引用一个static变量是不是线程安全的?问着问着突然说今天面试到此为止,一看时间才过去二十几分钟。第二天就收到面试没过的通知,感觉自己二面答的比一面好多了,实在想不通。

下半场

一直感觉自己太水了,代码量不大,三年半的IT经验还有一年去做了产品,都不敢投大厂。上半场的技术面基本过了之后自信心大大提升,开始挑战更高难度的。

美团

这个是厦门美团,他们在这边做了一个叫榛果民宿的APP,办公地点在JFC高档写字楼,休息区可以面朝大海,环境是很不错,面试就有点虐心了。 两点半进去。

一面

我的简历大部分是大数据相关的,他不是很了解,问了一些基础问题和netty的写流程,还问了一个redis数据结构的实现,结构他问了里面字符串是怎么实现的,有什么优势。一直感觉这个太简单,没好好看,只记得有标记长度,可以直接取。然后就来两道编程题。第一题是求一棵树所有左叶子节点的和,比较简单,一个深度优先就可以搞定。第二题是给定一个值K,一个数列,求数列中两个值a和b,使得a+b=k。我想到了一个使用数组下标的方法(感觉是在哪里有见过,不然估计是想不出来),这种可是达到O(n)的复杂度;他又加了个限制条件,不能使用更多内存,我想到了快排+遍历,他问有没有更优的,实在想不出来,他提了一个可以两端逼近,感觉很巧妙。

二面

面试官高高瘦瘦的,我对这种人的印象都是肯定很牛逼,可能是源于大学时代那些大牛都长这样。先让我讲下kafka的结构,然后怎么防止订单重复提交,然后开始围绕缓存同步问题展开了长达半小时的讨论:先写数据库,再写缓存有什么问题?先写缓存再写数据库有什么问题?写库成功缓存更新失败怎么办?缓存更新成功写库失败怎么办?他和我一起在一张纸上各种画,感觉不是面试,而是在设计方案。

三面

这是后端团队负责人了,很和蔼,一直笑呵呵。问了我一些微服务的问题,我提到了istio,介绍了设计理念,感觉他有点意外。然后他问java8的新特性,问我知不知道lambda表达式怎么来的,我从lambda演算说到lisp说到scala,感觉他更意外。此处有点吹牛了。我问了一些团队的问题,项目未来规划等,感觉榛果还是挺不错的。 四面。这个应该是榛果厦门的负责人了,技术问题问的不多,更多是一些职业规划,对业务的看法等。面试结束的时候他先出去,我收拾下东西,出去的时候发现他在电梯旁帮我开电梯,对待面试者的这种态度实在让人很有好感。 出来的时候已经是六点半。

网易

面的是网易云音乐,平时经常用,感觉如果可以参与研发应该是种挺美妙的感觉。 一面。下午打过来的,问我有没有空,我说有,他说你不用上班吗?有态度真的可以为所欲为(苦笑)。然后问了为什么离职,聊了会房价,问了几个netty的问题,gc的问题,最后问下对业务的看法。 然后约了个二面的时间,结果时间到了没人联系我,第二天打电话跟我道歉重新约了时间,不得不说态度还是很好的。二面问的反而很基础,没太多特别的。让我提问的时候我把美团二面里的缓存问题拿出来问他,很耐心的给我解答了好几分钟,人很好。

阿里

这个其实不是最后面试的,但是是最后结束的,不得不说阿里人真的好忙,周三跟我预约时间,然后已经排到下一周的周一。总体上感觉阿里的面试风格是喜欢在某个点上不断深入,直到你说不知道。

一面

自我介绍,然后介绍现在的项目架构,第一部分就是日志上传和接收,然后就如何保证日志上传的幂等性开始不断深入,先让我设计一个方案,然后问有没有什么改进的,然后如何在保证幂等的前提下提高性能,中间穿插分布式锁、redis、mq、数据库锁等各种问题。这个问题讨论了差不多半小时。然后就问我有没有什么要了解的,花了十几分钟介绍他们现在做的事情、技术栈、未来的一些计划,非常耐心。

二面

也是从介绍项目开始,然后抓住一个点,结合秒杀的场景深入,如何实现分布式锁、如何保证幂等性、分布式事务的解决方案。问我分布式锁的缺点,我说性能会出现瓶颈,他问怎么解决,我想了比较久,他提示说发散下思维,我最后想了个简单的方案,直接不使用分布式锁,他好像挺满意。感觉他们更看重思考的过程,而不是具体方案。还问了一致性hash如何保证负载均衡,kafka和rocketmq各自的优缺点,dubbo的一个请求过程、序列化方式,序列化框架、PB的缺点、如何从数据库大批量导入数据到hbase。

三面

是HR和主管的联合视频面试。这种面试还第一次遇到,有点紧张。主管先面,也是让我先介绍项目,问我有没有用过mq,如何保证消息幂等性。我就把kafka0.11版本的幂等性方案说了下,就没再问技术问题了。后面又问了为啥离职,对业务的看法之类的。然后就交给HR,只问了几个问题,然后就结束了,全程不到半小时。 不懂是不是跟面试的部门有关,阿里对幂等性这个问题很执着,三次都问到,而且还是从不同角度。

总结

从面试的难易程度看阿里 > 美团 > 头条 > 有赞 > 网易 > 曹操专车 > 美亚柏科。整个过程的体会是基础真的很重要,基础好了很多问题即使没遇到过也可以举一反三。另外对一样技术一定要懂原理,而不仅仅是怎么使用,尤其是缺点,对选型很关键,可以很好的用来回答为什么不选xxx。另外对一些比较新的技术有所了解也是一个加分项。 最后感谢所有帮我内推的小伙伴!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/323949.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用bladex+avue实现一对多的关系

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂”今天,记录一篇技术文章吧,也是解决了好久才解决掉的(说来也惭愧)。涉及技术前端:vue,element ui后端框架&#xff…

.NET中的高性能应用

本文要点 .NET自4.0以来得到了大幅的性能提升,很值得重新考虑一下基于旧版本.NET框架所做的假定。在讨论性能时垃圾回收是个重复出现的主题,它带来了许多CLR和语言的提升,比如引用返回和ValueTask在内存分配上更细粒度度量的性能分析API会成…

利用bladex+avue实现下拉数据源展示

“ 大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂???? ”昨天给大家整理了下如何使用bladex实现多表查询的方法,今天我们趁热打铁,顺便看看下拉列表的实现。 需求 我们经常会有这样的需求,…

汇编语言(一)之反转字符串输出

BASED ADDRESSING反转输出 程序运行: 代码: datas segmentstring db BASED ADDRESSING$ count dw $-string-1 ;计算string的长度,$为当前地址,-1为去掉字符串结束符$srcsTip db SRC string:$ dstsTip db 0…

前后端分离项目部署上线详细教程

“ 大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂???? ”今天,给大家分享的是,SpringbootVue项目如何部署上线的详细步骤。 代码编辑器 前端:Webstorm 2021.1.2 后端:IntelliJ …

.Net Core2.0下使用Dapper遇到的问题

今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和大家分享一下。下面我会还原迁移的每一个过程,以及在此过程中遇到的问题和处理这些问题的方法。 一、迁移前的…

汇编语言(二)之数值求和

输入一串数字,求和 运行结果: 程序代码: datas segmentx db ? y db ? z db ?xInputPrompt db Enter a number x$ yInputPrompt db 0dh,0ah,Enter a number y$ zOutputPrompt db 0dh,0…

avue中怎样隐藏新增和编辑的按钮

“大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂????”????‍♂️今天给大家分享的技术是:avue中如何设置新增和编辑的按钮隐藏掉。????‍????涉及技术????前端:avue????后端&…

.NET跨平台实践:Linux .Net Core自宿主应用程序瘦身记

一,.NET Core 自宿主应用程序个头有点大 发布.NET Core应用程序有两个方式,一种是“便携式”,一种是“自宿主式”。便携式发布时,目标程序不带.net core运行环境,所以“个头”很小,可能只有几十K几百K字节…

汇编语言(三)之判断数值是否大于42H并统计个数

在内存中一串数值,判断数值是否大于42H并统计个数 程序运行: 代码: datas segmentidata equ 100hnums db idata dup(41h,42h,43h,42h,41h,43h,30h)count dw $-numsup dw 0down dw 0upNumber …

idea打war的问题

大家好,我是雄雄,欢迎关注微信公众号:👉雄雄的小课堂👈。 👨‍🏫前言 今天,记录个到现在为止还没搞清的问题,这个问题浪费了我几个小时的时间,基本上昨天晚上…

汇编语言(四)之比较字符串

输入两个字符串,比较字符串是否相同 程序运行: 代码: datas segmentstring1MaxLength db 0ffh,0 string1 db 100h dup(?)string1Number dw 0 string2MaxLength db 0ffh,0 string2 db 100h dup(?) string2Number…

.NET平台微服务项目汇集

最近博客园出现了一篇文章《微服务时代之2017年五军之战:Net PHP谁先死》,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的。.NET Core就是专门针对模块化的微服务架构而设计,在微服务架构这方…

idea打war包时,JDK版本的问题解决方式

“大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂????。”????‍????前言今天,记录个到现在为止还没搞清的问题,这个问题浪费了我几个小时的时间,基本上昨天晚上啥也没干&#xff0…

汇编语言(五)之数组中正数和负数分离

将数组中的正数和负数分离到两个数组 程序运行: 代码: datas segmenta dw -1,2,3,4,-2,-3,5,6,7,8,9,-10,13,15,-5,-24,-36,34,53,-90count dw ($-a)/2p dw 20 dup(?)n dw 20 dup(?)pNumber dw 0…

dotnet使用Selenium执行自动化任务

如果要做百度文库,百度贴吧,百度知道签到,你,会怎么做?前不久我还会觉得这好像太麻烦了,now,soeasy。 自动化测试工具:Selenium Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行…

若依前后端部署之后验证码不显示

大家好,我是雄雄,欢迎关注微信公众号:👉雄雄的小课堂👈。 最近的几天都在搞publiccms的内容,从0到1实现,在花费了大量精力下,终于将一个门户站完完全全的实现了,且还可以…

汇编语言(六)之输出字符的前导后字符

输入一个字符,输出该字符的前导后字符 程序运行: 代码: datas segmenta db ?inputPrompt db input a lowercase character:$outputPrompt db 0dh,0ah,output …

若依部署上线之后验证码不显示的解决方法之一

“大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂????。”最近的几天都在搞publiccms的内容,从0到1实现,在花费了大量精力下,终于将一个门户站完完全全的实现了,且还可以自定义扩…

在 ASP.NET Core 中执行租户服务

本博文翻译自:http://gunnarpeipman.com/2017/08/tenant-providers/ 在我之前关于 Entity Framework core 2.0 全局查询过滤器的文章中,我提出了一个想法,当构建模型时,如何自动地将查询过滤器应用到所有的领域实体中&#xff0c…