关于作者
目前正在使用 Java 语言,开发基于 Raft 算法的 KV 分布式存储。
github 地址:https://github.com/stateIs0/lu-raft-kv

一、面试过程分享

1. XX 汇
XX 汇是一家小型的电商网站,由于作者的技术栈集中在 Java 语言这里,所以,即使作者对并发,JVM,Netty,Spring 等都稍有了解,但依然没有任何优势—— 因为他们完全用不到。
整个面试过程中,问了大概以下问题:

1. 说说你的项目,用了 SpringCloud 哪些功能?

2. 熟悉 Mysql 吗?说说索引(不懂 Mysql 啊大佬)

3. 如何实现一个单例模式(这个俺擅长)

4. 平时使用了哪些线程池(这个俺也擅长)

5. Map 接口有哪些类(这个俺也擅长)

6. 写一段 SQL 呗(不会 SQL)

7. 如何实现免登陆功能(cookie session?
总结:当然,被刷了。估计是 SQL 不够好吧,而我擅长的他们也不需要。

2. XX 旅游

这个就比较奇葩了,是最奇葩的一个,面试官是个小伙子,根本不懂并发,然后强行问我并发,自己基本一言不发。还对我的回答貌似不满意?
1. 自我介绍一下。
2. 说说 Mysql 的索引。
3. 说说 redis 主从同步。
4. 说说 redis 缓存穿透,缓存雪崩,恶意访问。redis key 怎么设计?redis master 崩了怎么办?
5. 如何设计一个高并发系统。
6. 如何设计一个高并发活动业务。
7. 说说 volatile 。
8. 说说 Java 里面的锁。使用上有什么不同?
9. 说说 final。
10. 说说 Java 内存模型。
11. 说说 GC。

12. Mybatis 为什么比 JDBC 快(缓存?)?

总结:整个沟通过程中,除了上面的 redis 和项目有一些引导性的提问之外,后面关于 Java 的,基本一言不发,然后不知所以……真不知道 XX 旅游还有没有大神了。

3. XXX 中间件

面试过程:这家就比较有意思了,是在 Mycat 中间件上做的 Mysql 中间件。两个面试官都挺有意思的。
先是研发 leader 问。
1. 说说你擅长的(并发,JVM,RPC,Netty)
2. 说说 Java 的内存模型

3. 说说 Netty 的 reactor 模型相比普通的 NIO 实现好在哪?

然后是中间件 leader 提问。
1. 黑板上手写几段排序和过滤字符串代码。
2. 说说常用的设计模式。

3. GC 优化有哪些经验。

总结:总的来讲,虽然问题不多,但问的都很专业,也能感觉到面试官的技术确实非常深入,按照他们说的,“我们经常要解决操作系统层面的问题,因此要非常熟悉 Linux”,然后和我讲了几个 OS 的函数……

基本上,都是从简历上开始问的,不像有的公司,简历写的和没写一样,根本不问简历上的,就问你不懂的,那你叫我来干啥???我只会我简历上的,简历上给你看的东西就是我擅长的,如果你不需要,就不要叫我过来。

所以,遇到问你简历的面试官,好好珍惜。

PS:这是 4 家中,唯一一家给面试者喝水的公司。

4. XX 医生

怎么说呢?第一个面试官还挺正常的,第二个面试官就奇葩的很……

第一个面试官
1. 懂基本的数据结构和算法吧?说说链表。怎么提高查询效率(2分?还能再提高吗(提示跳表)
2. cookie 和 session。实现一个记住我功能。session 存放在哪里?用户很多怎么办?JVM 崩了 session 怎么办?
3. 设计一个票房表结构。
4. 说说 hashMap。
5. 为什么线程不安全。
6. 为什么 HashMap 线程不安全?
7. 多线程下 HashMap 安全吗?读也不安全吗?(WTF?开始怀疑他们了……)
8. 平时使用并发类库解决了哪些问题?
9. 说说 Java 内存模型。
还算比较正常的,基本上还能聊。
第二个面试官:
1. 写一段代码,把这个字符串过滤然后分组一下。
2. 给 10 个数,下面写的数是上面的数的下面的个数……

3. over,我觉得你思维还是不够开放。

总结:这家公司,6 点叫我过去,七点他们才吃好饭来面试,面到 8 点多,一口水都没得喝。真是神一般的公司……

二、总结

1. 作者的 mysql ,redis 确实不够深入,因为没花时间,无法狡辩。这个确实是职业规划带来的副作用吧。

2. 作者投递简历的时候,不够专业,投递的岗位可能和作者的技能不匹配。
3. 运气好,遇到一个合格的面试官很重要,很多面试官不够专业。
4. 平常心,面试就是一个撮合的过程,合适自己的公司不多。没面上,说明没有缘分,正常,继续努力,找到适合自己的公司。

以上就是作者在面试中的过程分享及经验总结,希望能为其他求职的同学带来一些帮助。也祝愿每个求职者都能拥有良好的面试体验以及好工作。

对于求职者而言,面试不仅仅是争取工作机会的考试,同时也是一场能够让自己客观地正视自身优缺点、接受行业市场评估的过程。
对于企业而言,面试也不只是招揽优秀人才的渠道,还是从另一个角度体现企业文化的一个过程。
所以说呢,面试是一场双向选择的过程。大家要揣着良好的心态、想清楚自己的求职需求、然后好好做功课哦~

那么,第三家带给作者良好面试体验的神仙公司到底是哪家呢?