美文网首页程序员Java 杂谈Java
6个offer,10家公司,25场面试,从美团到头条,我的求职之

6个offer,10家公司,25场面试,从美团到头条,我的求职之

作者: 若丨寒 | 来源:发表于2019-05-23 16:47 被阅读16次

    简介:文章的笔者是三四月时跳槽换工作,对面试经验做一些总结,今后也是总结自己工作中遇到的一些问题分享给大家,算是一个开始吧!

    跳槽经历分为定位、准备、简历、面试这四个部分,本篇文章我着重分析了我面试经历的这一部分,以后有机会也给大家分享我如何定位和如何准备面试。

    先说下整体面试下来的一些感受:

    1. java基础知识真的要扎实,面试准备阶段不像考试有题可压,任何一个问题都有可能都会问到,所以,对自己负责,欺骗自己等于拿自己的事业开玩笑。

    2.大部分的面试官不是真的要问倒你,他们只是想看看你的解决思路和套路是否能够灵活多变,问到一个你不知道,你就说不知道了,那这个还怎么继续。所有的问题都有相通性,找到相似的场景扩展自己的思路。

    3.深入浅出!大部分的面试官都喜欢刨根接地的问,从简单的应用到底层原理再到某一个点,不要仅仅是知道了解,要有一定深度的学习

    1. 关于薪资,八仙过海各显神通,看你自己能力,只要你有能力,要多少还不是你自己说了算么!

    面试情况

    有赞

    一面:

    1. hashMap原理,put和resize过程

    2. 线程池有哪些类型,

    3. concurrentHashMap分段锁原理,java8和java7实现的区别

    4. B-树和B+树区别,数据库索引原理,组合索引怎么使用?最左匹配的原理

    5. spring生命周期,几种scope区别,aop实现有哪几种实现,接口代理和类代理会有什么区别

    二面:

    1. 项目介绍
    2. 斐波拉契数列非递归实现
    3. 短URL实现

    三面:(HR+主管)

    你现在做的事情,为什么要离职?反正对你性格生活薪资全面了解

    今日头条:

    一面:

    1. 自我介绍,做的项目价值,架构设计,给你一个集群你会怎么分布,考虑哪些因素,容灾、负载均衡

    2. 让你来设计咸鱼,你会怎么设计?模型设计

    3. linux常用指令

    二面:

    1. 算法在线编程
    2. 项目,主要做了什么,项目中碰到的问题有哪些,都市怎么解决?你觉得那个项目是最有挑战的
    3. java多线程,线程池的选型,为什么要选这个,底层实现原理

    三面:

    1. 你最熟悉的项目,做了什么,为什么这么做,怎么体现你项目的价值
    2. 让你来推广广告,你会怎么设计?
    3. java基础问了些,JVM内存模型 G1和CMS垃圾回收器
    4. 如何中断线程,await和sleep区别
    5. 设计一个秒杀系统
    6. spring生命周期,几种scope区别

    四面:
    跟上面差不多
    五面:
    主管面,主要问项目,然后说下他们在做什么
    六面HR:
    期望薪资,为什么要离职,现在的级别,会考北京的原因

    网易:

    一面:

    1. RPC原理,netty原理
    2. hashMap原理
    3. redis缓存回收机制,准备同步,哨兵机制
    4. 要统计10分钟内订单的亏损,你会怎么设计(strom窗口模式)
    5. 项目:你做了什么,为什么要这么做,用了什么技术要解决什么问题

    二面:

    1. 分布式缓存redis原理,zookeeper锁是如何实现的
    2. 分布式缓存读写不一致问题
    3. java线程你是怎么使用的
    4. 数据库是如何调优的
    5. git rebase命令发生了什么
    6. 讨论项目

    三面HR:
    薪资,为什么要离开,级别

    华为:

    一面:

    1. 结构数据库和非结构数据库区别,你了解的非结构数据库有哪些
    2. 频繁的增删数据量某个表,数据库最终数据只有几万或者更少,为什么查询会变慢
    3. 数据如果出现了阻塞,你是怎么排查的,top和jstack命令用过没,jstack命令的nid是什么意思,怎么查看java某个进程的线程
    4. 大数据算法聚类算法有哪些
    5. 写一个算法判断某个数是2的n次方
    6. 说你最熟悉的项目

    二面HR:
    薪资级别,你是怎么抗压的,平时喜欢做什么,对加班什么看法

    三面业务主管:

    1. 你想做什么,会给你介绍他们部门做的东西
    2. 你自己做的项目,怎么设计的
    美团
    1. 分布式缓存redis,dubbo原理,分布式缓存锁的实现
    2. mysql分库分表原则,为什么要分这么多库这么多表,基于什么考虑?数据库动态扩容要如何实现?
    3. 线程池coreSize,maxSize怎么设置,依据是什么?场景1:单台机器4核,服务A请求时间为5S,但是A调用的某个服务B耗时4.98S,A服务超时时间是10S,问100QPS的访问量,动态线程池CoreSize,maxSize,等待队列怎么指定?
    4. 场景2:设计一个订餐排队系统,底层模型有哪些?(客户,商家,桌型)
    滴滴
    1. 基本也是问java基础,线程池
    2. 跟二面面试官讨论了些设计模式,模型设计,接口设计的原则
    3. 分布式缓存、rpc原理、消息幂等怎么实现
    4. redis、zookeeper原理,HSF和Dubbo区别,整体跟之前面试问的差不多。
    5. 前端写过一些,所以问了些react和nodejs
    6. HR:离职原因,这么多公司offer你会考虑滴滴吗

    总结

    零零碎碎的比较多,整体上面试分为几个部分:

    1. java基础知识和源码
    2. 线程池,这个每个面试都必问,结合使用场景和原理说一说
    3. 分布式必要要去了解,每个面试基本都会问,redis、dubbo、kafka或者其他,集群管理zookeeper
    4. 数据库性能调优,组合索引和原理也是必问
    5. 业务设计能力和架构negligence考察

    学习共勉

    金三银四已经过了,就目前国内的面试模式来讲,在面试前积极的准备面试,复习整个 Java 知识体系将变得非常重要,可以很负责任的说一句,复习准备的是否充分,将直接影响你入职的成功率。但很多小伙伴却苦于没有合适的资料来回顾整个 Java 知识体系,或者有的小伙伴可能都不知道该从哪里开始复习。我偶然得到一份整理的资料,不论是从整个 Java 知识体系,还是从面试的角度来看,都是一份含技术量很高的资料(PDF版)。
    资料免费领取方式:扫码关注公众号,后台回复关键词【java】即可获取学习资料!


    更多架构专题及视频资料展示如下:

    资料免费领取方式:扫码关注公众号,后台回复关键词【java】即可获取学习资料!

    相关文章

      网友评论

        本文标题:6个offer,10家公司,25场面试,从美团到头条,我的求职之

        本文链接:https://www.haomeiwen.com/subject/kliuzqtx.html