您的位置 首页 java

Java程序员工作三年面试阿里,成功拿到offer,朋友说凭什么?

那现在来聊一聊我所遇到的一些面试经历,希望给各位寻求新机会的小伙伴一个参考。总共面完5家收了4个offer,应该算是比较成功的吧。

由于种种原因,博文中所涉及的公司均以代号标志,且我能告诉大家的也只有面试题,其他的不便透露细节,希望大家理解。

面试题

A公司

写出 Java synchronized 的使用方式。

Java中设置最大堆和最小 堆内存 的参数是什么?

volatile的作用?

一道设计题

多个 线程 同时读写,读线程的数量远远⼤于写线程,你认为应该如何解决 并发的问题?你会选择加什么样的锁?

JAVA的AQS是否了解,它是⼲嘛的?

除了synchronized关键字之外,你是怎么来保障 线程安全 的?

什么时候需要加volatile关键字?它能保证线程安全吗?

B公司

问题一:“请你自我介绍一下”

问题二:“你有什么业余爱好?”

问题三:“你认为你工作中的哪些方面是最重要的?”

问题四:“谈谈你的缺点”

问题五:“谈一谈你的一次失败经历”

问题六:“你为什么选择我们公司?”

问题七:“对这项工作,你有哪些可预见的困难?”

问题八:“我们为什么要录用你?”

问题十:“您在前一家公司的离职原因是什么?”

C公司

Mybatis 怎么防止SQL注入

Hibernate 的缓存机制

Hibernate一级缓存

Hibernate 二级缓存

什么样的数据适合存放到第二级缓存中

Mybatis和Hibernate的区别(优缺点)

redis的使用场景

Tomcat本身的参数你⼀般会怎么调整?

如果有很多数据插⼊MYSQL 你会选择什么⽅式?

D公司

1. 你知道哪些或者你们线上使⽤什么GC策略? 它有什么优势,适⽤于什么 场景?

2. JAVA类加载器包括⼏种?它们之间的⽗⼦关系是怎么样的?双亲委派机 制是什么意思?有什么好处?

3. 如何⾃定义⼀个类加载器?你使⽤过哪些或者你在什么场景下需要⼀个⾃ 定义的类加载器吗?

4. 堆内存设置的参数是什么? 5. Perm Space中保存什么数据? 会引起OutOfMemory吗? 6. 做gc时,⼀个对象在内存各个Space中被移动的顺序是什么?

7. 你有没有遇到过OutOfMemory问题?你是怎么来处理这个问题的?处理 过程中有哪些收获?

8. 1.8之后Perm Space有哪些变动? MetaSpace⼤⼩默认是⽆限的么? 还是 你们会通过什么⽅式来指定⼤⼩?

9. Jstack是⼲什么的? Jstat呢? 如果线上程序周期性地出现卡顿,你怀疑可 能是gc导致的,你会怎么来排查这个问题?线程⽇志⼀般你会看其中的什么 部分?

10. StackOverFlow异常有没有遇到过?⼀般你猜测会在什么情况下被触 发?如何指定⼀个线程的堆栈⼤⼩?⼀般你们写多少?

E公司

● 简述synchronized?Object;Monitor机制;

● 简述happen-before规则 ;

● JUC和Object ; Monitor机制区别是什么 ; 简述AQS原理 ;

● 简述DCL失效原因,解决方法 ;

● 简述nio原理 ;

JVM 运行时数据区域有哪几部分组成,各自作用 ;

● gc算法有哪些 ; gc收集器有哪些 ;

● 简述class加载各阶段过程 ; class ; loader有哪些模型 ;

● 简述常用的JDK命令行工具 ;

● 简述字节码文件组成 ;

● 讲讲你平常是如何针对具体的SQL做优化 ;

● mysql的存储引擎有哪些,区别 ;

● gc:内存模型;

● gc: 垃圾回收 ;

多线程 :如何实现一个定时调度和循环调度的工具类。但提交任务处理不过来的时候,拒绝机制应该如何处理 ; 线程池默认有哪几种拒绝机制 ;

● 多线程: 如何实现一个ThreadLocal ;

● 说说你了解的一个线程安全队列 ;

● Atomic包的实现原理是什么 ;

● CAS又是怎么保证原子性的 ;

● string分析1000次循环subString用了多少内存 ;

我面试E公式时是最吃力的,问的好多问题,反正他想到的都会问,由于问题太多,我也只能凭记忆罗列出这么一点点出来,希望能体谅。

打动面试官的五大技能

1. 定量分析

定量分析是对社会现象的数量特性、数量关系与数量变化的分析。数据是许多组织的重要组成部分,所以你的组织、分析、解释和呈现数据能力是很重要的。不管是在做应用程序还是寻找不同的办法来吸引用户。特别说明下,招聘公司很重视组织数据和基于数据进行组织的能力。如果你有挖掘数据的能力,并有自己的见解,那么在竞争中将很有优势。(面试时,你可以带上曾经做过的关于数据分析的项目)。

2. Excel

管理数据分析中最主要工具是什么?Excel。Excel在工作中会经常遇到,而且公司不会花时间去教你怎样使用Excel。所以,如果你能精通Excel,在录取中也会占有一定的优势。

3. 创造性思维

当今企业界发展步伐异常快,招聘企业对那些有创新能力和能超越现状的求职者很感兴趣。他们希望自己的员工能够有拓展性思维,不安于现状,从第一天上班时起就能有与其他员工分享自己的想法,最好可以提高公司当前的工作系统。但是,创造性思维有点不好学习。

4. 沟通能力

一般情况下,招聘公司都想找一些沟通能力比较强的员工。因为公司日后需要你可以有效的与客户进行电话、邮件及日常生活的交流,你的一言一行都将代表公司的形象。更重要的是,公司希望你能以简洁专业的语言来表达自己的某些看法。所以,在面试过程中,多向招聘人员展示下你的沟通能力。

5. 谦逊的品格

有人看到谦逊会觉得奇怪,但是这个技能却是招聘人员看中的重要技能之一。当然,招聘公司需要有自信、有激情,也要乐于学习的员工。在面试时,如果被要求分享自己的想法或主意的时候,大胆的说出来。如果被指出错误,虚心的接受。多问面试人员一些问题,比如公司的一些情况和应聘岗位的一些工作。

为什么我面试五家公司有四家录取了呢,以上五大技能不仅要拥有,技术还要过硬,不然以上的面试你不想过关。那从哪里学习才能获取过硬的技术以及过硬的胆识呢?以下便是我学习了这个课程体系,才是我有这么过硬的技术以及过硬的胆识。

工作2年以上的Java程序员该何去何从?(个人学习思路,供参考)

方向:深入学习Java后端 技术栈 ;获得重生!

Java,是现阶段中国互联网公司中,覆盖度最广的研发语言。有不少朋友问,如何深入学习Java后端技术栈,今天分享一个,来自阿里的资深牛人整理出来的Java深入学习路线图,以及文末免费学习资料。(路线图,可以收藏,保存)

一、阅读源码

深入的Java学习,经典源码阅读不可少:

  • 常见的设计模式,编码必备Spring5,做应用必不可少的最新框架MyBatis,玩数据库必不可少的组件

画外音:大家扪心自问,除了写业务代码,看过多少优秀开源代码?

二、 分布式架构

随着业务越来越复杂,数据量越来越大,并发量越来越大,单体的架构模式显然再也无法对应,作为Java后端架构师,高并发+高可用+海量数据的分布式架构体系,是必不可少的:

  • 分布式架构原理分布式架构策略分布式中间件分布式架构实战

画外音:额, 这些分布式理论,是不是感觉零零星星的听过,而没有系统的学习过?

三、 微服务 技术体系

服务分层, 微服务架构 是架构升级的必由之路,Java技术体系,和微服务相关的技术有哪需要深入学习呢?

  • 微服务框架Spring CloudDocker与虚拟化微服务架构

画外音:明明知道Spring Cloud和docker是趋势,为啥没有下定决心学习呢?

四、性能优化

作为后端Java技术专家,解决性能问题才真正体现一个架构师的功力。只有深入学习JVM底层原理,Mysql底层优化以及Tomcat调优,做到知其然,知其所以然:

  • 性能指标体系JVM调优Web调优DB调优

画外音:是不是遇到性能问题就无从下手?只能靠瞎打日志,瞎改代码?解决性能问题,不能只靠运气!

五、典型业务实战

阅读完Java源码,学习完分布式与微服务架构体系,掌握了性能调优的方法,仅仅做一个ppt架构师怎么行?

  • 用户中心,单点登录怎么玩商品,店铺怎么玩订单,支付怎么玩通知,推送怎么玩数据分析怎么玩

唯有通过实战,才能站上华山之巅。

阿里面试题对应的答案以及对应阿里P7学习的视频资料分享给大家

获取学习资料:获取架构师资料以及视请关注我私信回复【架构资料】获取学习资料

获取学习资料:获取架构师资料以及视请关注我私信回复【架构资料】获取学习资料

文章来源:智云一二三科技

文章标题:Java程序员工作三年面试阿里,成功拿到offer,朋友说凭什么?

文章地址:https://www.zhihuclub.com/191492.shtml

关于作者: 智云科技

热门文章

网站地图