楼主离职已有 10 天,这段时间里除了看源码,就是投简历面试了。一共面试了 4 家,说说感受。
1、XX 汇
XX 汇是一家小型的电商网站,由于楼主的技术栈集中在 Java 语言这里,所以,即使楼主对并发,JVM,Netty,Spring 等都稍有了解,但依然没有任何优势—— 因为他们完全用不到。
整个面试过程中,问了大概以下问题:
- 说说你的项目,用了 SpringCloud 哪些功能?
- 熟悉 Mysql 吗?说说索引(不懂 Mysql 啊大佬)
- 如何实现一个单例模式(这个俺擅长)
- 平时使用了哪些线程池(这个俺也擅长)
- Map 接口有哪些类(这个俺也擅长)
- 写一段 SQL 呗(不会 SQL)
- 如何实现免登陆功能(cookie session?)
当然,被刷了,估计是 SQL 不够好吧,而我擅长的他们也不需要。
2、XX 旅游
这个就比较奇葩了,是最奇葩的一个,面试官是个小伙子,根本不懂并发,然后强行问我并发,自己基本一言不发。还对我的回答貌似不满意?
- 自我介绍一下。
- 说说 Mysql 的索引。
- 说说 redis 主从同步。
- 说说 redis 缓存穿透,缓存雪崩,恶意访问。redis key 怎么设计?redis master 崩了怎么办?
- 如何设计一个高并发系统。
- 如何设计一个高并发活动业务。
- 说说 volatile 。
- 说说 Java 里面的锁。使用上有什么不同?
- 说说 final。
- 说说 Java 内存模型。
- 说说 GC。
- Mybatis 为什么比 JDBC 快(缓存?)?
整个沟通过程中,除了上面的 redis 和项目有一些引导性的提问之外,后面关于 Java 的,基本一言不发,然后不知所以。。。。真不知道 XX 旅游还有没有大神了。
3、XXX 中间件
这家就比较有意思了,是在 Mycat 中间件上做的 Mysql 中间件。两个面试官都挺有意思的。
先是研发 leader 问。
- 说说你擅长的(并发,JVM,RPC,Netty)
- 说说 Java 的内存模型
- 说说 Netty 的 reactor 模型相比普通的 NIO 实现好在哪?
然后是中间件 leader 提问。
- 黑板上手写几段排序和过滤字符串代码。
- 说说常用的设计模式。
- GC 优化有哪些经验。
总的来讲,虽然问题不多,但问的都很专业,也能感觉到面试官的技术确实非常深入,按照他们说的,“我们经常要解决操作系统层面的问题,因此要非常熟悉 Linux”,然后和我讲了几个 OS 的函数。。。
基本上,都是从简历上开始问的,不像有的公司,简历写的和没写一样,根本不问简历上的,就问你不懂的,那你叫我来干啥???我只会我简历上的,简历上给你看的东西就是我擅长的,如果你不需要,就不要叫我过来。
所以,遇到问你简历的面试官,好好珍惜。
PS:这是 4 家中,唯一一家给面试者喝水的公司。。。。。
4、XX 医生
怎么说呢?第一个面试官还挺正常的,第二个面试官就奇葩的很。。。
第一个面试官:
- 懂基本的数据结构和算法吧?说说链表。怎么提高查询效率(2分?)还能再提高吗(提示跳表)
- cookie 和 session。实现一个记住我功能。session 存放在哪里?用户很多怎么办?JVM 崩了 session 怎么办?
- 设计一个票房表结构。
- 说说 hashMap。
- 为什么线程不安全。
- 为什么 HashMap 线程不安全?
- 多线程下 HashMap 安全吗?读也不安全吗?(WTF?开始怀疑他们了。。。。)
- 平时使用并发类库解决了哪些问题?
- 说说 Java 内存模型。
还算比较正常的。基本上还能聊。
第二个面试官:
- 写一段代码,把这个字符串过滤然后分组一下。
- 给 10 个数,下面写的数是上面的数的下面的个数。。。。。
- over,我觉得你思维还是不够开放。
我他么的也是日了狗。。。。。
这家公司,6 点叫我过去,七点他们才吃好饭来面试,面到 8 点多,一口水都没得喝。真是神一般的公司。。。。
5、总结
- 楼主的 mysql ,redis 确实不够深入,因为没花时间,无法狡辩。这个确实是职业规划带来的副作用吧。
- 楼主投递简历的时候,不够专业,投递的岗位可能和楼主的技能不匹配。
- 运气好,遇到一个合格的面试官很重要,很多面试官不够专业。
- 平常心,面试就是一个撮合的过程,合适自己的公司不多,没面上,说明没有缘分,正常。继续努力,找到适合自己的公司。
此外,我这里也整理出了一套Java后端进阶笔记文档和学习资料免费分享给大家!
因篇幅问题,我就不全部展示出来了,有需要的各位程序员(媛)们可以进我的一个学习交流群:909666042 免费获取;
更多笔记分享