Skip to content

Commit c6ef097

Browse files
author
Fantasy
authored
Merge pull request #3 from Snailclimb/master
更新
2 parents 4f61178 + 5fd6855 commit c6ef097

File tree

56 files changed

+3175
-1352
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+3175
-1352
lines changed
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
> 作者:ppxyn。本文来自读者投稿,同时也欢迎各位投稿,**对于不错的原创文章我根据你的选择给予现金(50-200)、付费专栏或者任选书籍进行奖励!所以,快提 pr 或者邮件的方式(邮件地址在主页)给我投稿吧!** 当然,我觉得奖励是次要的,最重要的是你可以从自己整理知识点的过程中学习到很多知识。
2+
3+
**目录**
4+
5+
<!-- MarkdownTOC -->
6+
7+
- [前言](#前言)
8+
- [一面\(技术面\)](#一面技术面)
9+
- [二面\(技术面\)](#二面技术面)
10+
- [三面\(技术面\)](#三面技术面)
11+
- [四面\(半个技术面\)](#四面半个技术面)
12+
- [五面\(HR面\)](#五面hr面)
13+
- [总结](#总结)
14+
15+
<!-- /MarkdownTOC -->
16+
17+
### 前言
18+
19+
在接触 Java 之前我接触的比较多的是硬件方面,用的比较多的语言就是C和C++。到了大三我才正式选择 Java 方向,到目前为止使用Java到现在大概有一年多的时间,所以Java算不上很好。刚开始投递的时候,实习刚辞职,也没准备笔试面试,很多东西都忘记了。所以,刚开始我并没有直接就投递阿里,毕竟心里还是有一点点小害怕的。于是,我就先投递了几个不算大的公司来练手,就是想着刷刷经验而已或者说是练练手(ps:还是挺对不起那些公司的)。面了一个月其他公司后,我找了我实验室的学长内推我,后面就有了这5次面试。
20+
21+
下面简单的说一下我的这5次面试:4次技术面+1次HR面,希望我的经历能对你有所帮助。
22+
23+
### 一面(技术面)
24+
25+
1. 自我介绍(主要讲自己会的技术细节,项目经验,经历那些就一语带过,后面面试官会问你的)。
26+
2. 聊聊项目(就是一个很普通的分布式商城,自己做了一些改进),让我画了整个项目的架构图,然后针对项目抛了一系列的提高性能的问题,还问了我做项目的过程中遇到了那些问题,如何解决的,差不读就这些吧。
27+
3. 可能是我前面说了我会数据库优化,然后面试官就开始问索引、事务隔离级别、悲观锁和乐观锁、索引、ACID、MVVC这些问题。
28+
4. 浏览器输入URL发生了什么? TCP和UDP区别? TCP如何保证传输可靠性?
29+
5. 讲下跳表怎么实现的?哈夫曼编码是怎么回事?非递归且不用额外空间(不用栈),如何遍历二叉树
30+
6. 后面又问了很多JVM方面的问题,比如Java内存模型、常见的垃圾回收器、双亲委派模型这些
31+
7. 你有什么问题要问吗?
32+
33+
### 二面(技术面)
34+
35+
1. 自我介绍(主要讲自己会的技术细节,项目经验,经历那些就一语带过,后面面试官会问你的)。
36+
2. 操作系统的内存管理机制
37+
3. 进程和线程的区别
38+
4. 说下你对线程安全的理解
39+
5. volatile 有什么作用 ,sychronized和lock有什么区别
40+
6. ReentrantLock实现原理
41+
7. 用过CountDownLatch么?什么场景下用的?
42+
8. AQS底层原理。
43+
9. 造成死锁的原因有哪些,如何预防?
44+
10. 加锁会带来哪些性能问题。如何解决?
45+
11. HashMap、ConcurrentHashMap源码。HashMap是线程安全的吗?Hashtable呢?ConcurrentHashMap有了解吗?
46+
12. 是否可以实习?
47+
13. 你有什么问题要问吗?
48+
49+
### 三面(技术面)
50+
51+
1. 有没有参加过 ACM 或者他竞赛,有没有拿过什么奖?( 我说我没参加过ACM,本科参加过数学建模竞赛,名次并不好,没拿过什么奖。面试官好像有点失望,然后我又赶紧补充说我和老师一起做过一个项目,目前已经投入使用。面试官还比较感兴趣,后面又和他聊了一下这个项目。)
52+
2. 研究生期间,做过什么项目,发过论文吗?有什么成果吗?
53+
3. 你觉得你有什么优点和缺点?你觉得你相比于那些比你更优秀的人欠缺什么?
54+
4. 有读过什么源码吗?(我说我读过 Java 集合框架和 Netty 的,面试官说 Java 集合前几面一定问的差不多,就不问了,然后就问我 Netty的,我当时很慌啊!)
55+
5. 介绍一下自己对 Netty 的认识,为什么要用。说说业务中,Netty 的使用场景。什么是TCP 粘包/拆包,解决办法。Netty线程模型。Dubbo 在使用 Netty 作为网络通讯时候是如何避免粘包与半包问题?讲讲Netty的零拷贝?巴拉巴拉问了好多,我记得有好几个我都没回答上来,心里想着凉凉了啊。
56+
6. 用到了那些开源技术、在开源领域做过贡献吗?
57+
7. 常见的排序算法及其复杂度,现场写了快排。
58+
8. 红黑树,B树的一些问题。
59+
9. 讲讲算法及数据结构在实习项目中的用处。
60+
10. 自己的未来规划(就简单描述了一下自己未来的设想啊,说的还挺诚恳,面试官好像还挺满意的)
61+
11. 你有什么问题要问吗?
62+
63+
### 四面(半个技术面)
64+
65+
三面面完当天,晚上9点接到面试电话,感觉像是部门或者项目主管。 这个和之前的面试不大相同,感觉面试官主要考察的是你解决问题的能力、学习能力和团队协作能力。
66+
67+
1. 让我讲一个自己觉得最不错的项目。然后就巴拉巴拉的聊,我记得主要是问了项目是如何进行协作的、遇到问题是如何解决的、与他人发生冲突是如何解决的这些。感觉聊了挺久。
68+
2. 出现 OOM 后你会怎么排查问题?
69+
3. 自己平时是如何学习新技术的?除了 Java 还回去了解其他技术吗?
70+
4. 上一段实习经历的收获。
71+
5. NginX如何做负载均衡、常见的负载均衡算法有哪些、一致性哈希的一致性是什么意思、一致性哈希是如何做哈希的
72+
6. 你有什么问题问我吗?
73+
7. 还有一些其他的,想不起来了,感觉这一面不是偏向技术来问。
74+
75+
## 五面(HR面)
76+
77+
1. 自我介绍(主要讲能突出自己的经历,会的编程技术一语带过)。
78+
2. 你觉得你有什么优点和缺点?如何克服这些缺点?
79+
3. 说一件大学里你自己比较有成就感的一件事情,为此付出了那些努力。
80+
4. 你前面跟其他面试官讲过一些你做的项目吧?可以给我讲讲吗?你要考虑到我不是一个做技术的人,怎么让我也听得懂。项目中有什么问题,你怎么解决的?你最大的收获是什么?
81+
5. 你目前有面试过其他公司吗?如果让你选,这些公司和阿里,你选哪个?(送分题,回答不好可能送命)
82+
6. 你期望的工作地点是哪里?
83+
7. 你有什么问题吗?
84+
85+
### 总结
86+
87+
1. 可以看出面试官问我的很多问题都是比较常见的问题,所以记得一定要提前准备,还要深入准备,不要回答的太皮毛。很多时候一个问题可能会牵扯出很多问题,遇到不会的问题不要慌,冷静分析,如果你真的回答不上来,也不要担心自己是不是就要挂了,很可能这个问题本身就比较难。
88+
2. 表达能力和沟通能力太重要了,一定要提前练一下,我自身就是一个不太会说话的人,所以,面试前我对于自我介绍、项目介绍和一些常见问题都在脑子里练了好久,确保面试的时候能够很清晰和简洁的说出来。
89+
3. 等待面试的过程和面试的过程真的好熬人,那段时间我压力也比较大,好在我私下找到学长聊了很多,心情也好了很多。
90+
4. 面试之后及时总结,面的好的话,不要得意,尽快准备下一场面试吧!
91+
92+
我觉得我还算是比较幸运的,最后也祝大家都能获得心仪的Offer。
93+
94+
95+
96+
File renamed without changes.
File renamed without changes.
File renamed without changes.

面试必备/JavaInterviewGithub.md renamed to EssentialContentForInterview/PreparingForInterview/JavaInterviewLibrary.md

File renamed without changes.

面试必备/java programmer need know.md renamed to EssentialContentForInterview/PreparingForInterview/JavaProgrammerNeedKnow.md

File renamed without changes.

面试必备/books.md renamed to EssentialContentForInterview/PreparingForInterview/books.md

File renamed without changes.

面试必备/interviewPrepare.md renamed to EssentialContentForInterview/PreparingForInterview/interviewPrepare.md

File renamed without changes.
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
我还记得当时我去参加面试的时候,几乎每一场面试,特别是HR面和高管面的时候,面试官总是会在结尾问我:“问了你这么多问题了,你有什么问题问我吗?”。这个时候很多人内心就会陷入短暂的纠结中:我该问吗?不问的话面试官会不会对我影响不好?问什么问题?问这个问题会不会让面试官对我的影响不好啊?
2+
3+
![无奈](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-2/无奈.jpg)
4+
5+
### 这个问题对最终面试结果的影响到底大不大?
6+
7+
就技术面试而言,回答这个问题的时候,只要你不是触碰到你所面试的公司的雷区,那么我觉得这对你能不能拿到最终offer来说影响确实是不大的。我说这些并不代表你就可以直接对面试官说:“我没问题了。”,笔主当时面试的时候确实也说过挺多次“没问题要问了。”,最终也没有导致笔主被pass掉(可能是前面表现比较好,哈哈,自恋一下)。我现在回想起来,觉得自己当时做法其实挺不对的。面试本身就是一个双向选择的过程,你对这个问题的回答也会侧面反映出你对这次面试的上心程度,你的问题是否有价值,也影响了你最终的选择与公司是否选择你。
8+
9+
面试官在技术面试中主要考察的还是你这样个人到底有没有胜任这个工作的能力以及你是否适合公司未来的发展需要,很多公司还需要你认同它的文化,我觉得你只要不是太笨,应该不会栽在这里。除非你和另外一个人在能力上相同,但是只能在你们两个人中选一个,那么这个问题才对你能不能拿到offer至关重要。有准备总比没准备好,给面试官留一个好的影响总归是没错的。
10+
11+
但是,就非技术面试来说,我觉得好好回答这个问题对你最终的结果还是比较重要的。
12+
13+
总的来说不管是技术面试还是非技术面试,如果你想赢得公司的青睐和尊重,我觉得我们都应该重视这个问题。
14+
15+
### 真诚一点,不要问太 Low 的问题
16+
17+
回答这个问题很重要的一点就是你没有必要放低自己的姿态问一些很虚或者故意讨好面试官的问题,也不要把自己从面经上学到的东西照搬下来使用。面试官也不是傻子,特别是那种特别有经验的面试官,你是真心诚意的问问题,还是从别处照搬问题来讨好面试官,人家可能一听就听出来了。总的来说,还是要真诚。除此之外,不要问太Low的问题,会显得你整个人格局比较小或者说你根本没有准备(侧面反映你对这家公司不伤心,既然你不上心,为什么要要你呢)。举例几个比较 Low 的问题,大家看看自己有没有问过其中的问题:
18+
19+
- 贵公司的主要业务是什么?(面试之前自己不知道提前网上查一下吗?)
20+
- 贵公司的男女比例如何?(考虑脱单?记住你是来工作的!)
21+
- 贵公司一年搞几次外出旅游?(你是来工作的,这些娱乐活动先别放在心上!)
22+
- ......
23+
24+
### 有哪些有价值的问题值得问?
25+
26+
针对这个问题。笔主专门找了几个专门做HR工作的小哥哥小姐姐们询问并且查阅了挺多前辈们的回答,然后结合自己的实际经历,我概括了下面几个比较适合问的问题。
27+
28+
#### 面对HR或者其他Level比较低的面试官时
29+
30+
1. **能不能谈谈你作为一个公司老员工对公司的感受?** (这个问题比较容易回答,不会让面试官陷入无话可说的尴尬境地。另外,从面试官的回答中你可以加深对这个公司的了解,让你更加清楚这个公司到底是不是你想的那样或者说你是否能适应这个公司的文化。除此之外,这样的问题在某种程度上还可以拉进你与面试官的距离。)
31+
2. **能不能问一下,你当时因为什么原因选择加入这家公司的呢或者说这家公司有哪些地方吸引你?有什么地方你觉得还不太好或者可以继续完善吗?** (类似第一个问题,都是问面试官个人对于公司的看法,)
32+
3. **我觉得我这次表现的不是太好,你有什么建议或者评价给我吗?**(这个是我常问的。我觉得说自己表现不好只是这个语境需要这样来说,这样可以显的你比较谦虚好学上进。)
33+
4. **接下来我会有一段空档期,有什么值得注意或者建议学习的吗?** (体现出你对工作比较上心,自助学习意识比较强。)
34+
5. **这个岗位为什么还在招人?** (岗位真实性和价值咨询)
35+
6. **大概什么时候能给我回复呢?** (终面的时候,如果面试官没有说的话,可以问一下)
36+
7. ......
37+
38+
39+
40+
#### 面对部门领导
41+
42+
1. **部门的主要人员分配以及对应的主要工作能简单介绍一下吗?**
43+
2. **未来如果我要加入这个团队,你对我的期望是什么?** (部门领导一般情况下是你的直属上级了,你以后和他打交道的机会应该是最多的。你问这个问题,会让他感觉你是一个对他的部门比较上心,比较有团体意识,并且愿意倾听的候选人。)
44+
3. **公司对新入职的员工的培养机制是什么样的呢?** (正规的公司一般都有培养机制,提前问一下是对你自己的负责也会显的你比较上心)
45+
4. **以您来看,这个岗位未来在公司内部的发展如何?** (在我看来,问这个问题也是对你自己的负责吧,谁不想发展前景更好的岗位呢?)
46+
5. **团队现在面临的最大挑战是什么?** (这样的问题不会暴露你对公司的不了解,并且也能让你对未来工作的挑战或困难有一个提前的预期。)
47+
48+
49+
50+
#### 面对Level比较高的(比如总裁,老板)
51+
52+
1. **贵公司的发展目标和方向是什么?** (看下公司的发展是否满足自己的期望)
53+
2. **与同行业的竞争者相比,贵公司的核心竞争优势在什么地方?** (充分了解自己的优势和劣势)
54+
3. **公司现在面临的最大挑战是什么?**
55+
56+
### 来个补充,顺便送个祝福给大家
57+
58+
薪酬待遇和相关福利问题一般在终面的时候(最好不要在前面几面的时候就问到这个问题),面试官会提出来或者在面试完之后以邮件的形式告知你。一般来说,如果面试官很愿意为你回答问题,对你的问题也比较上心的话,那他肯定是觉得你就是他们要招的人。
59+
60+
大家在面试的时候,可以根据自己对于公司或者岗位的了解程度,对上面提到的问题进行适当修饰或者修改。上面提到的一些问题只是给没有经验的朋友一个参考,如果你还有其他比较好的问题的话,那当然也更好啦!
61+
62+
金三银四。过了二月就到了面试高峰期或者说是黄金期。几份惊喜几份愁,愿各位能始终不忘初心!每个人都有每个人的难处。引用一句《阿甘正传》里面的台词:“生活就像一盒巧克力,你永远不知道下一块是什么味道“。
63+
64+
![加油!彩虹就要来了](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-2/生活就像一盒巧克力你永远不知道下一块是什么味道.JPEG)
File renamed without changes.

0 commit comments

Comments
 (0)