一位面试了阿里,滴滴,网易,蚂蚁金服,最终有幸去了网易的Java程序员【面试题分享】

前言

15年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...
最终有幸去了网易。

但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导。

面试整体事项

  • 简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责,简历的模板尽量选择简洁的,毕竟程序员大部分还是喜欢简单明了的。
  • 推荐boss直聘,我觉得很好用(不是广告)。
  • 一般的整体面试流程都是电面->现场面->HR面->等着。
  • 不要觉得HR说让你回去等消息就是GG了,他们也要跟你之前的面试官讨论,再向领导汇报,如果说不急可能还要和其他候选人比较,所以HR让你回去等消息绝对不是说明你完蛋了。
  • 面试前准备好自我介绍,1分钟左右就可以,可以写在纸上,电面可以照着念,等你到了现场面了基本也都快背下来你的自我介绍了。
  • 准备好扎实的基础,这是一切的根源,没实力怎么都没用的。
  • 面试中你可以把你的面试官往你会的知识上引导(我遇到过你会什么他不问什么的)。
  • 遇到了设计类题目不要着急,面试官不是为了让你几分钟设计一个高并发高可用设计模式完美的架构,只是- 想看看你的思路,看看你应变的能力,然后给你些提示看看你能否迅速的调整。
  • offer都会有的,不要着急,把面试当成一个交流的过程。
    ###需要准备的知识
    以下为在近期面试中比较有印象的问题,也就不分公司了,因为没什么意义,大致分类记录一下,目前只想起这么多,不过一定要知道这些问题只是冰山一角,就算都会了也不能怎么样,最最重要的,还是坚实的基础,清醒的头脑。

Java基础

  1. HashMap的源码,实现原理,JDK8中对HashMap做了怎样的优化。
  2. HaspMap扩容是怎样扩容的,为什么都是2的N次幂的大小。
  3. HashMap,HashTable,ConcurrentHashMap的区别。
  4. 极高并发下HashTable和ConcurrentHashMap哪个性能更好,为什么,如何实现的。
  5. HashMap在高并发下如果没有处理线程安全会有怎样的安全隐患,具体表现是什么。
  6. java中四种修饰符的限制范围。
  7. Object类中的方法。
  8. 接口和抽象类的区别,注意JDK8的接口可以有实现。
  9. 动态代理的两种方式,以及区别。
  10. Java序列化的方式。
  11. 传值和传引用的区别,Java是怎么样的,有没有传值引用。
  12. 一个ArrayList在循环过程中删除,会不会出问题,为什么。
  13. @transactional注解在什么情况下会失效,为什么。

    数据结构和算法

  14. B+树
  15. 快速排序,堆排序,插入排序(其实八大排序算法都应该了解
  16. 一致性Hash算法,一致性Hash算法的应用

    JVM

  17. JVM的内存结构。
  18. JVM方法栈的工作过程,方法栈和本地方法栈有什么区别。
  19. JVM的栈中引用如何和堆中的对象产生关联。
  20. 可以了解一下逃逸分析技术。
  21. GC的常见算法,CMS以及G1的垃圾回收过程,CMS的各个阶段哪两个是Stop the world的,CMS会不会产生碎片,G1的优势。
  22. 标记清除和标记整理算法的理解以及优缺点。
  23. eden survivor区的比例,为什么是这个比例,eden survivor的工作过程。
  24. JVM如何判断一个对象是否该被GC,可以视为root的都有哪几种类型。
  25. 强软弱虚引用的区别以及GC对他们执行怎样的操作。
  26. Java是否可以GC直接内存。
  27. Java类加载的过程。
  28. 双亲委派模型的过程以及优势。
  29. 常用的JVM调优参数。
  30. dump文件的分析。
  31. Java有没有主动触发GC的方式(没有)。

    多线程

  32. Java实现多线程有哪几种方式。
  33. Callable和Future的了解。
  34. 线程池的参数有哪些,在线程池创建一个线程的过程。
  35. volitile关键字的作用,原理。
  36. synchronized关键字的用法,优缺点。
  37. Lock接口有哪些实现类,使用场景是什么。
  38. 可重入锁的用处及实现原理,写时复制的过程,读写锁,分段锁(ConcurrentHashMap中的segment)。
  39. 悲观锁,乐观锁,优缺点,CAS有什么缺陷,该如何解决。
  40. ABC三个线程如何保证顺序执行。
  41. 线程的状态都有哪些。
  42. sleep和wait的区别。
  43. notify和notifyall的区别。
  44. ThreadLocal的了解,实现原理。

    数据库相关

  45. 常见的数据库优化手段
  46. 索引的优缺点,什么字段上建立索引
  47. 数据库连接池。
  48. durid的常用配置。

    计算机网络

  49. TCP,UDP区别。
  50. 三次握手,四次挥手,为什么要四次挥手。
  51. 长连接和短连接。
  52. 连接池适合长连接还是短连接。

    设计模式

  53. 观察者模式
  54. 代理模式
  55. 单例模式,有五种写法,可以参考文章单例模式的五种实现方式
  56. 可以考Spring中使用了哪些设计模式

    分布式相关

  57. 分布式事务的控制。
  58. 分布式锁如何设计。
  59. 分布式session如何设计。
  60. dubbo的组件有哪些,各有什么作用。
  61. zookeeper的负载均衡算法有哪些。
  62. dubbo是如何利用接口就可以通信的。

    缓存相关

  63. redis和memcached的区别。
  64. redis支持哪些数据结构。
  65. redis是单线程的么,所有的工作都是单线程么。
  66. redis如何存储一个String的。
  67. redis的部署方式,主从,集群。
  68. redis的哨兵模式,一个key值如何在redis集群中找到存储在哪里。
  69. redis持久化策略。

    框架相关

  70. SpringMVC的Controller是如何将参数和前端传来的数据一一对应的。
  71. Mybatis如何找到指定的Mapper的,如何完成查询的。
  72. Quartz是如何完成定时任务的。
  73. 自定义注解的实现。
  74. Spring使用了哪些设计模式。
  75. Spring的IOC有什么优势。
  76. Spring如何维护它拥有的bean。
  77. 一些较新的东西
  78. JDK8的新特性,流的概念及优势,为什么有这种优势。
  79. 区块链了解
  80. 如何设计双11交易总额面板,要做到高并发高可用。

    一些小建议

  81. 可以去leetcode上刷题换换思路。
  82. 八大排序算法一定要手敲一遍(快排,堆排尤其重要)。
  83. 了解一些新兴的技术。
  84. 面试之后面试官都会问你有没有什么问题,千万不要没问题,也别傻乎乎的问一些敏感问题。
  85. 了解你要面试的公司的产品及竞争产品。

    总结

    无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

如果这些文字能够帮到你,那就最好了,帮不到就当是我自己的一个记录。

读者福利(学习分享)

对于很多初级Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。

整理的这些架构技术希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。同时欢迎工作一到五年的Java工程师朋友们加入Java进阶学习交流:868284384
群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

在分享一个学习资源笔记分享给大家:Java架构进阶学习资源分享

原文地址:https://blog.51cto.com/13732225/2415407

时间: 2024-10-10 01:11:55

一位面试了阿里,滴滴,网易,蚂蚁金服,最终有幸去了网易的Java程序员【面试题分享】的相关文章

阿里最全面试100题:阿里天猫、蚂蚁金服、阿里巴巴面试题含答案

[阿里天猫.蚂蚁.钉钉面试题目] 1.微信红包怎么实现. 2.海量数据分析. 3.测试职位问的线程安全和非线程安全. 4.HTTP2.0.thrift. 5.面试电话沟通可能先让自我介绍. 6.分布式事务一致性. 7.nio的底层实现. 8.jvm基础是必问的,jvm GC原理,JVM怎么回收内存. 9.Java是什么. 10.API接口与SDI接口的区别(API是提供给别人的接口). 11.dubbo如何一条链接并发多个调用.Dubbo的原理,序列化相关问题. 12.用过哪些中间件. 13.做

网易暴力裁员?!寒冬凛冽,我依靠这八大专题面试文档,收获蚂蚁金服、字节跳动等一线大厂的offer

互联网的寒冬早已开始, 整个行业出现这样一种奇怪的场面: 企业里一方面加快更新换代,加大内部竞争的压力以提高效率: 另一方面疯狂招人,对稀缺性人才依然保持了极高的需求 . 想必大家已经有了切身的感受,公司内部晋升要求变高.名额变少,外部机会的要求也水涨船高,并且限制涨幅.职级等. 国外也是如此: Facebook.微软.谷歌不时有高管离职的消息传来. 就目前大环境来看,跳槽成功的难度比往年高很多.一个明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底. 整理的这些架构技术

金九银十,浅谈关于java程序员面试的一些事项

本篇博文针对的是应届毕业生以及工作两三年左右的java程序员. 为什么要跳槽? 这是一个很广义的问题,每个人心中都有一份答案. 例如: 公司的待遇不好, 薪资涨幅不符合预期要求, 厌倦了出差的荒无天日的繁重工作, 公司的妹子太少, 领导太傲娇, 同事之间关系太逼格, 某某同学跳槽到某某公司之后涨到了多少多少钱, 某某同学的朋友的同事的三姑妈家的大儿子的好基友在某某高就, 等等辞职理由. 咱们就不多说了,还是谈谈怎么应付面试吧. 以下内容是我在面试中总结的一些经验,希望这些可以给各位带来帮助和启迪

阿里P7Java最全面试296题:阿里天猫、蚂蚁金服含答案文档解析

[阿里天猫.蚂蚁.钉钉面试专题题目加答案] 不会做别着急:文末有答案以及视频讲解,架构师资料 1. junit用法,before,beforeClass,after, afterClass的执行顺序 2. 分布式锁 3. nginx的请求转发算法,如何配置根据权重转发 4. 用hashmap实现redis有什么问题(死锁,死循环,可用ConcurrentHashmap) 5. 线程的状态 5. 线程的阻塞的方式 6. sleep和wait的区别 7. hashmap的底层实现 8. 一万个人抢1

一个三年Java程序员的面试总结!绝对会对你有所帮助!

15年毕业到现在也近四年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中,最终有幸去了网易. 但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导. 回家后,我对这次面试经历,做了总结,希望对想要跳槽的朋友们有个借鉴. 面试整体事项 1.简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责,简历的模板尽量选择简洁的,毕竟程序员大部分还

蚂蚁金服换将!新任CEO:区块链是蚂蚁金服金融科技应用底盘之一

<strong> 导语:</strong> 蚂蚁金服是阿里巴巴区块链的"主阵地",目前落地项目达 100 多个,涉及场景达 40 多个. 今天,蚂蚁金服 CEO 发生变动.<strong>胡晓明(孙权)将出任蚂蚁金服 CEO,</strong> 原蚂蚁金服 CEO 井贤栋以后工作重点将转向蚂蚁金服的市场全球化业务.同时,程立(鲁肃)不再担任蚂蚁金服 CTO 和蚂蚁金服国际事业群 COO,将调任阿里巴巴集团 CTO,胡喜(阿玺)会出任蚂蚁金

Java面试学问多,看看高级程序员面试题是什么样的

Java 面试跟着时刻的改动而改动.在以前的日子里,当你知道 String 和 StringBuilder 的差异就能让你直接进入第二轮面试,可是如今疑问变得越来越高档,面试官问的疑问也更深入. 在以前初入职场的时分,类似于 Vector 与 Array 的差异.HashMap 与 Hashtable 的差异是最盛行的疑问,只需求记住它们,就能在面试中取得更好的时机,但这种景象已经不复存在.如今,你将会被问到许多 Java 程序员都没有看过的范畴,如 NIO,规划形式,老练的单元测验,或许那些很

Java程序员精选高频面试笔试题全家桶,通往BAT必备法宝!《附赠PDF》

作为一名即将求职的程序员,面对一个可能跟近些年非常不同的 2019 年,你的就业机会和风口会出现在哪里?在这种新环境下,工作应该选择大厂还是小公司?已有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动? 最近这波互联网裁员浪潮下,许多朋友被裁之后几周内陆陆续续找到工作,但也有部分现在还在求职中,其中重要区别就是在于平时是否坚持积累和成长. 面对工作,与其选择满不情愿,最后收获痛苦煎熬和差强人意的结果,不如思考如何提升工作效率和自身能力,在工作中关注自身能力成长,并去刻意练习,想办

聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路

阿里社招面试都问什么? 和之前一样,文章一上来,我们先来谈谈阿里的社招面试都问什么,其实这个话题并不是什么秘密,所有来阿里面试过的同学,都能回答一二. 两年前的时候,笔者在文章里是这么回答的. 这个是让LZ最头疼的一个问题,也是群里的猿友们问的最多的一个问题. 说实话,LZ只能隐约想起并发.JVM.分布式.TCP/IP协议这些个关键字,具体的问题真的是几乎都没记住.而且就算LZ记住了,也告诉你了,你也背会了,但LZ觉得,在面试中,你被问到一模一样问题的可能性依然很小. 甚至,就算你运气好被问到了