Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >从业4年互联网寒潮下我的面试总结(美团\陌陌\百度\阿里\京东)

从业4年互联网寒潮下我的面试总结(美团\陌陌\百度\阿里\京东)

原创
作者头像
欧阳愠斐
修改于 2019-05-14 10:35:33
修改于 2019-05-14 10:35:33
5360
举报
文章被收录于专栏:架构专栏架构专栏

已经凌晨2点多了,看来今天是失眠了,反正睡不着,写篇日记总结一下我最近面试经历吧。

2019年5月1日办理了离职手续,离开了万通中心,也算是和我的第二个东家正式说了再见,其实还是很喜欢国贸的,

这是个美妙的地方,容纳着很多金融界人才们的梦想,每每晚上走到这里你会感叹帝都的夜景好美,只可惜这里的多数人都顾不上欣赏这里的风景,

每个人都生活在压力下,成为了金钱的奴隶,但这并不是什么坏事,因为他们上有老下有小,身上背负着责任,也正是他们的身体力行才造就了CBD的繁华,

而我最终选择了离开这个地方。

我从不否认我的离开和钱有关,这确实是其中一个因素,我也像所有人一样背负着责任,所以我需要钱,但我更想说这次的离开是为了寻求一个对我而言更大的舞台,

让自己更加快速的沉淀和成长。我曾经试图向我的领导们陈述我的价值观,我并不认为钱和理想是互斥的,难道赚的越少你的工作就越有价值么,很明显不是的。

美团网

美团
美团

第一个投的是美团网,去年刚上市的,发展比较迅速、美团的技术在国内也是数一数二的。

先填了一份资料,然后是就是面谈了

算法和数据结构以及架构设计方面,答的很不好,好多都忘了。

一 、自己实现一个hashMap,这个难不倒我,jdk的源码中最熟悉的就是Collection包了,使用数组和内部类完成哈希表的数据结构,

再通过hash算法和链表操作完成哈希表的插入查询等操作;

二 、并发编程中的生产者消费者模式代码,没写出来,忘记了,真是不应该哦,最简单的方式就是使用wait和notify去阻塞唤醒(这么基础的东东我都能忘),

当然还有很多优雅的写法,比如使用可重入锁(ReentrantLock),使用锁计数器(CountdownLatch)等,当时一种都没想到,自责中;

三 、字符串的一道算法题,这类小case,就是位图法,毫无压力的写出;

四.、写一个自己熟悉的架构图,于是我把我的老东家的系统架构搬了上去,简单来说就是通过hessian将前台调用逻辑与后台业务逻辑解耦,

实体可以通过序列化和反序列化传递(这是hessian最擅长干的事情),最终提高后台业务逻辑接口的可重用性以及系统的可维护性。

还有两三道题目忘记是什么了。时间还是很紧的,只有一个小时时间。交卷之后开始面试,一面继续聊了聊jdk的Collection包,

还有就是之前在公司所做项目的部署思想。二面就是聊聊java并发锁机制,为什么要用读写锁而不用synchronized这种同步锁,事务隔离性的理解,

为什么会有脏读,可重复读,提交读等,spring的事务管理是如何实现的,编程式如何实现,aop式如何实现,动态代理的原理是什么,

事务的传播性的理解。总之都是这类比较重视原理的问题,答的还可以吧,最后就是部门负责人来直接面试,谈谈为啥离职,期望薪资什么的,也聊了下技术。

问我会不会来,最后我回答我考虑一下,下周三给回复,然后就离开了。感觉公司环境很好,饮料零食什么的都是免费吃。

360

360
360

第二个去的是360,没有笔试,直接面试,一面主要问基础,String内容存放在哪儿,答运行时常量池,然后我把jvm的内存结构讲了一下,

堆、栈、程序计数器、方法区等,每块区域的作用之类的,那么问题就来了,jvm的回收机制是什么,感觉问的有点大,不知道从哪儿说起,

只好从分代回收算法说起了,从GC ROOTS的引用链机制到新生代的小空间复制算法再到老生代的标记清除算法,最后就是新生代和老生代

之间的关系以及跃迁等,随后面试官点了点头说那你再讲讲jvm的类加载机制吧,委托双亲机制吧,正准备讲,那小哥问反射机制是如何

利用类加载机制的呢,只好把反射的实现原理也balalala。。。继续发问,懂哪些设计模式,答:单例,建造者,观察者,模板方法模式,

迭代器模式balala,你在项目中用到过观察者模式吗,怎么用的。答:做统一配置组件的时候使用到了zookeeper的发布订阅,创建了监听链表,

完成应用系统的注册和同步,balalala,边写代码边讲细节,正讲的起劲,被打断,你写个单例模式吧,把你认为效率最高的单例实现写出来,

当然是通过jvm的内部类机制实现单例了,又快又安全,看完面试官点点头,说再写一个双检查的懒汉单例模式吧,好的遵命,写完后小哥发问,

为什么要用volatile关键字,答:在高并发时会出现并发模式异常,volatile可以防止指令重排,创建对象操作并不是一个原子操作,

分为三个步骤,balala,讲了一通,面试官被说服,随后面试官发问,能不能讲讲线程的内存模型,哈哈,幸好以前研究线程可见性的时候研究过这个,

讲完面试官很满意,感觉他已经hold不住我了(暗自自喜),谈谈你对cas的理解,答:是指乐观锁吗,还没等我说,面试官说好,你等一下,

二面面试官走了进来,开始发问,假设有一个场景,系统需要某个特定时间内响应用户请求,比如说100ms内完成用户请求,

但是在最高峰的时候每单位时间几百万的用户请求,也就是高并发,但我必须要实现系统响应及时,而且高可用(不宕机),假如你是架构师,

你该如何架构这个系统,聊聊你的方案,当时听完脑子就蒙了,恨自己当初没去看那本《大型分布式网站架构》书,于是就开始凭感觉说,

首先肯定需要做缓存集群,防止数据库雪崩,数据库如果请求量很大也需要分库分表,各种乱说,说得自己都晕乎乎的,最后面试官说有的对有的不对,

而且没说到点子上,不过可以理解,你工作经验才4年。然后向我介绍了一下他们部门是做什么业务的,随后问我为什么离职等,到饭点了,

我就被拉走了。第二天hr打电话给了offer,聊了聊薪资待遇,360待遇不错,吃饭还免费,挺好的。

陌陌

陌陌
陌陌

第三个是陌陌,听说是个约炮的,哈哈哈,只是对社交软件充满了好奇,去看看,一面先写代码,写一个二叉树的深度遍历,小case,递归搞定,

随后发问memcache的内存管理机制,答:slab分块管理,最终以chunk分配,维护了一个LRU的双向列表,balabala。。。然后又问了问zookeeper的一些东东;

二面问的比较杂,大部分不记得了,竟然还问vi命令,我也是跪了。

百度

百度
百度

第四个百度,百度今年是停止社招的,大部分部门都不社招只有校招,但也有少数部门有特批名额,于是就去试了一把,一面刚来就是写代码,

一个单链表的算法题目,写完,面试官很满意点点头,随后面试官发问在你的项目中spring是如何管理zookeeper的,答:balabala,

了解zookeeper的leader选取算法吗,讲一下他的流程,知道zab算法吗,讲一下他的流程,汗,问的问题都太变态,没想到会问的这么深,

zab算法太复杂了,zab是基于paxos的,而paxos可是获得图灵奖的算法,勉强说了一下,说的很心虚,有好多盲点自己也没搞清楚,

不过好在面试官也不往下问了,其实我估计他也不见得会(窃喜),随后让我稍等一下;一会儿过后二面面试官过来了,是个成熟的大叔,

二面只问了两个东西,一个jvm,一个并发编程,jvm主要是性能调优,jstack的使用,full GC和minor GC的分析等,并发编程问的很细,

发问多个线程达到同一个状态然后再一起执行,达到某一个状态之后再继续并发执行,这种怎么实现,答:jdk5之后有一个CyclicBarrir,

通过这个来实现,它可以重用等balabala说了一些,再发问读写锁中加读锁后如何避免写线程饿死,答:加策略balabala,发问如何实

现控制线程在某段时间内完成,不完成就撤销,答:实现Callable接口,返回FutureTask类或者Future接口,然后去触发撤销操作。

开始问项目,描述一下对账系统,balabala…数据量大吗,并发量高吗,数据库怎么设计的等,随后让我等一会,又过来一个面试官,

问我业务,你在第三方支付公司,能不能讲一下支付的技术流程,balabala…把自己理解的支付流程讲了一下,最后补了一句,

支付的细节业务很复杂,我也没完全明白呢,汗,让我等了一会,随后面试官说你回去等消息吧,我想完蛋了吧,难道因为业务不熟被刷,

真不甘心;心凉了一个星期,结果hr在星期一打电话说让星期四去最后一面,是技术总监的面试,星期四屁颠屁颠的去了

(话说百度大厦离国贸太远了,地铁每次要坐一个半小时,我也是跪了),四面开始,发问异步处理的幂等性,不是很难,

唯一性索引或者开发分布式锁呗,随后风格立马就转了,不问技术了,发问你觉得你来百度能给百度带来什么样的价值,

你希望你加入的百度的团队是一个什么样的团队,你如何和产品经理沟通,假如你和其他研发接口制定无法统一你该如何解决等,

一点准备都没有,回答的结结巴巴很是不好,哎,听天由命吧!

阿里

阿里巴巴
阿里巴巴

第五个面的是阿里,百度面完等消息,闲来无事查看公司招聘信息,看到阿里招聘薪资很诱人。

哈哈,我就是这样一个无节操的人,开始是电话面试,然后是面试,二面和三面,主要面试技术点有

JVM相关:

  1. jvm中一次完整的GC流程(从ygc到fgc)是怎样的,重点讲讲对象如何晋升到老年代,几种主要的jvm参数等
  2. 你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms
  3. 当出现了内存溢出,你怎么排错
  4. JVM内存模型的相关知识了解多少
  5. 简单说说你了解的类加载器
  6. JAVA的反射机制

网络:

  1. http1.0和http1.1有什么区别
  2. TCP三次握手和四次挥手的流程,为什么断开连接要4次,如果握手只有两次,会出现什么
  3. TIME_WAIT和CLOSE_WAIT的区别
  4. 说说你知道的几种HTTP响应码
  5. 架构设计与分布式
  6. tomcat如何调优,各种参数的意义
  7. 常见的缓存策略有哪些,你们项目中用到了什么缓存系统,如何设计的,Redis的使用要注意什么,持久化方式,内存设置,集群,淘汰策略等
  8. 如何防止缓存雪崩
  9. 分布式集群下如何做到唯一序列号
  10. 设计一个秒杀系统,30分钟没付款就自动关闭交易
  11. 如何做一个分布式锁
  12. 用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗
  13. MQ系统的数据如何保证不丢失
  14. 分布式事务的原理,如何使用分布式事务
  15. 什么是一致性hash
  16. 说说你知道的几种HASH算法,简单的也可以
  17. 什么是paxos算法
  18. redis和memcached 的内存管理的区别等等

后面给了我offer。但是最近996不知道如何选择。

总结

就写到这了,写的有点多了,也算是给这两个星期面试做一个总结,查漏补缺,祝自己好运吧,也希望正在求职或者打算跳槽的 程序员看到这个文章能有一点点帮助或收获,我就心满意足了。

原文来自:CSDN,https://blog.csdn.net/SpringBoot_/article/details/90142876

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java实习总结网易百度小米美团阿里(均offer)
本人是大三的软件工程专业学生,从2017年3月开始学Java,从那时候还不知道什么是接口,到现在分布式也有所了解,很幸运的拿到了这些offer 2017年10月 网易考拉 Java 12月 百度 Java 2018年 1月 小米人工智能云平台 Java(已实习过) 3月 美团外卖 Java 5月 阿里新零售 Java 总的来说面试无非要做到两点:1.别人答不上的,你得知道 2.别人答得上的,你得知道的更多!包括但不限于(Java多线程,锁,SSM源码,并发包,各类集合框架,MySQL索引调优,事务,MVCC
牛客网
2018/07/05
6690
社招一年半面经分享(含阿里美团头条京东滴滴)
最近一段时间面试了几家互联网公司,陆续通过了阿里、头条、美团,滴滴,京东的面试,基本上面试的公司都通过了,所以在这里想分享一些自己面试的经验给大家,希望能帮助大家拿到心仪的offer
捡田螺的小男孩
2021/04/23
2K0
百度,美团,鼎信,涂鸦面经
8.12 百度运维部共三面(offer) 1.自我介绍 2.聊项目 3.epoll和select的区别,epoll两种触发方式,踩过那些坑 4.讲讲reactor模式(结合muduo来回答) 5.OSI七层模型,每一层的作用是什么,tcp和udp的区别,tcp如何保证可靠性,三次握手和四次挥手过程 6.多线程和多进程的区别,进程间通信方式,无名管道和命名管道的区别,共享内存的实现方式,线程同步方式。进程和线程独有的是什么。 7.mysql数据库优化方式,工作原理 8.二叉树之字形打印 9.
牛客网
2018/04/28
1.3K0
记录年前Java岗整个历程(附字节,阿里,百度,网易,美团等面经)
211本,985硕,女生,方向都是Java开发或者后台开发。   目前拿到了字节,百度,网易(白菜价,已拒),美团,小米的意向书,等最终结果通知的是华泰(已收到体检通知),招行信用卡,阿里   招银(资料审查中),网易互娱(二面没去),浦发(没去体检),农行(面试通过,没去笔试),腾讯(两次被捞都是一面挂,第三次还是深圳拒绝了面试),微软(笔试完),银联(笔试完),微博(拒绝了现场面试)   还有各种笔试挂的(流利说,爱奇艺,小红书,B站),后续拒绝了很多面试,再也没有精力再去了,持续躺尸中.... 实习
Java码农那些事
2020/02/15
9960
Java程序员从阿里、百度面试回来,这些面试题你们会吗?
百度面了两次,分别是百度糯米和金融事业部,百度目前只有这两个部门的招聘岗位和我比较匹配。面试都在西二旗的百度新总部,园区还在施工,离地铁也比较远,需要打车过去。
java架构师
2018/08/23
4360
Java程序员从阿里、百度面试回来,这些面试题你们会吗?
社招两年半10个公司28轮面试面经
还有一个点是,看书的时候可以尝试记一下笔记,这样效率会高一些,不至于看完就忘记了。
CoderW
2022/07/13
9230
社招两年半10个公司28轮面试面经
我的奇葩面试经历分享:喊价25K,HR 却给了30K
本文是楼主前两个月 N 家公司的面试经历,总结复盘了面试现场,个人认为干货还是不少,在此和大家分享。
美的让人心动
2019/06/21
9490
我的奇葩面试经历分享:喊价25K,HR 却给了30K
南京渣硕求职路(网易美团头条百度面经)+Java学习路线(拙见)
首先自我介绍一下,楼主南京渣硕一枚,秋招主要投递JAVA后台岗位,面过以下公司:网易+美团+头条+百度+华为+中兴,拿下了网易和中兴提前批offer,华为依旧泡池子,美团四面挂,头条三面挂,百度今天下午二面没去了。其他一些公司收到了面试,没去参加了。
Java架构技术
2019/07/22
9230
阿里腾讯百度头条美团iOS 面试大纲,5万+的工作在等你
面试基本已经结束了,目前已拿头条、百度、腾讯offer,现在可以好好来写写总结了,关于面试题,可能没那么多时间来总结答案,有什么需要讨论的地方欢迎大家指教。主要记录一下我的准备过程,和面试的一些总结,希望能帮助到正在面试或者将要面试的同学吧。
java爱好者
2019/06/18
9520
三年半 Java 后端鹅厂面试经历
经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于开始重拾面试信心,再次出征。
芋道源码
2019/06/21
8160
双非同学,自学编程,毕业一年逆袭百度!
大家好,我是鱼皮,最近秋招快到了,我就想着给大家找一些优秀的程序员面经分享。希望可以帮助准备求职的同学更稳地上岸,同时帮助学编程的小伙伴们更好地明确学习路线和方法。
程序员鱼皮
2021/07/25
8470
最全技术面试180题:阿里11面试+网易+百度+美团!
网络编程 ISO模型与协议 http1.0:需要使用keep-alive参数来告知服务器端要建立一个长连接 http1.1:默认长连接。支持只发送header信息,可以用作权限请求。支持Host域。 http2.0:多路复用的技术,做到同一个连接并发处理多个请求。HTTP2.0使用HPACK算法对header的数据进行压缩。支持HTTP2.0的web server请求数据的时候,服务器会顺便把一些客户端需要的资源一起推送到客户端,免得客户端再次创建连接发送请求到服务器端获取。这种方式非常合适加载静态资源。
Java高级架构
2018/12/06
7220
3年Java,鏖战腾讯
经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于重拾面试信心,再次出征。
Java技术栈
2019/07/31
4930
3年Java,鏖战腾讯
程序员转型到互联网面试必问题:谈谈你对Zookeeper的理解
对一个没有接触过分布式的小伙伴来说,可能还不太清楚Zookeeper在分布式应用中的重要性,今天有位从传统行业转型到互联网的小小伙伴问我,希望跟他讲讲Zookeeper什么,能解决什么问 题?今天,我给大家详细介绍一下。
Tom弹架构
2022/09/22
2270
程序员转型到互联网面试必问题:谈谈你对Zookeeper的理解
Java研发岗常见面试内容大纲
近年来Java工程师这个岗位炙手可热,市场需求大,学习Java的人也越来越多,所以IT企业与求职者的选择都比较多,那么IT企业在面试时都会提哪些问题呢。下面为大家分享 Java高级工程师面试阿里、京东、天猫、菜鸟时涉及的知识点,文章略长,但较全面,阅读时间15分钟左右。
用户7353950
2022/05/10
8100
Java研发岗常见面试内容大纲
JAVA面试解析(有赞二面)
说在前面的话: 本文适合人群:急等着换工作的人 我承认刷面试题很有用的,纵观几年来的JAVA面试题,你会发现每家都差不多。比如,你仔细观察,你会发现,HashMap的出现几率未免也太高了吧!连考察的知识点都一样,什么hash碰撞啊,并发问题啊!再比如JVM,无外乎考内存结构,GC算法等!因此,如果是为了面试,完全是有套路可以准备的!记住,基础再好,也架不住面试官天马行空的问,所以刷面试题还是很有必要的!
乔戈里
2019/09/06
9510
JAVA面试解析(有赞二面)
腾讯,百度,阿里面试经验
腾讯面经 本人IT屌丝一枚,毕业4年,5年经验(大四在腾讯实习一年,实习生工资,工作内容同正式员工一样)。非常幸运,先后收到过腾讯、百度和阿里的offer,在这里跟大家分享下经验,同诸君共勉。 本人职业生涯的起点开始于腾讯,能入职腾讯其实非常偶然。09年腾讯校招的时候,在本人的学校(学校是2本就不说名字了)开宣讲会,学院很多同学都去了,因为当时对腾讯兴趣不大所以没去,当时希望去中软金蝶这样的传统软件公司。一个宿舍的兄弟要去参加腾讯校招的笔试,我作为亲友团陪他一起去。腾讯的hr很nice给了我
机器学习AI算法工程
2018/03/09
4.3K0
金三银四面试回来,我想跟程序员们谈谈
说来惭愧,也不怕你们笑话。做开发8年多,到目前还是一名不折不扣的扫地僧。年前的辞职,到现在还在家静养中。其实也没什么,就是回家总结一下自己这些年来在外工作与面试等做一个简单的总结与反思。做一下自己后面一个人生规划。不过在家每天也是在撸码,还有就是复习与学习现在的架构知识点,学习使人进步嘛!不是么?毕竟技术还是不能落下。
烂猪皮
2019/05/13
6940
金三银四面试回来,我想跟程序员们谈谈
一次惊险的跳槽面试经历(阿里/美团/头条/网易/有赞...)
为啥跳槽 每次说因为生活成本的时候面试官都会很惊奇,难道有我们这里贵?好想直接给出下面这张图,厦门的房价真的好贵好贵好贵。。。 面试过程 有兴趣加入阿里的欢迎发简历至 zhangzb2007@gmai
纯洁的微笑
2018/07/20
1.1K0
互联网公司的面试官是如何360°无死角考察候选人的?(上篇)
本系列文章,我们将会从消息中间件、分布式缓存、分布式搜索、分布式架构、海量数据、NoSQL、高并发、高可用、高性能、数据库、JVM虚拟机等各方面聊一下面试中的高频技术问题。
乔戈里
2019/04/24
6720
互联网公司的面试官是如何360°无死角考察候选人的?(上篇)
推荐阅读
相关推荐
Java实习总结网易百度小米美团阿里(均offer)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档