上周抽空面了三家公司,过了一个给19K+14薪,后来考虑了下没去,因为没有公积金...
总结下这三家面试
第一家 医声医事,一面问的都是常用的比较简单,二面应该是个技术总监之类的,问的数据库较多,然后手写一个两数寻找最小公倍数算法,我挂在哪呢,
就是他问我Mysql怎么消除笛卡尔积,我瞬间懵了,这玩意大学学的,现在真的忘了,就没回答上来,然后就挂了,其实挺不服气的,其他的问题都回答上来了,因为这个概念问题没回答出来把我否定确实不甘心。现在回想起来,面我的哥们,自己都说错了,他原话是:left join on 这种语法会产生笛卡尔积,MySql是怎么解决的。
下来了我查了下,这哥们说反了 left join on 这种语法是可以解决笛卡尔积的,因为sql会先执行on后面的条件,符合条件才会join其他表,不会产笛卡尔积,
产生笛卡尔积的是这种写法:select * from user1 , user 2 where user1.username = user2.username;技术总监就这水平,这公司可以拉黑了。。

第二家面我的是个小姐姐,技术挺厉害,先是对着我写的面试题逐题的问,接着对着简历上面写的技术一个个的问,问的大概这些。
设计一个买火车票系统,@Autowired注解的作用,以及能用在方法上面吗(我回答错了我说不能用在方法上,结果下去试了下是可以的,作用在方法上相当于初始化工作),二叉树,Redission分布式锁超时的处理,MySQL的优化,CountDownLatch的使用,Spring依赖注入的方法,SpringMVC执行流程,大概记得这么多

第三家 RELX锐刻,我面的JAVA高级开发,我其实感觉面试挺好的,大部分回答出来了,最后让面试官评价下,他说我基础弱,What??我心里一万个问号,有些我没了解的东西就没回答出来,就说我基础不行了?我说我没细看1.7的源码这哥们一直问。。。我简历写的很多技术不问,问的都是他们俩熟悉的技术...俩面试官坐我对面轮流问,一个问的数据库多,另一个问java知识,其中有个问题是,问我hashmap1.7扩容细节,我说1.7在扩容的时候会扩容原来容量的2倍,然后重新计算每个元素的hash值,有个哥们当时打断我十分鄙视的说,你觉得java源码设计者会用这么low的设计吗?你确定扩容要重新计算hash?当时我懵逼了,因为1.7的源码没好好看,我只有点印象是重新hash的,当时怂了没怼回去,这两天好好的把java1.7,1.8的HashMap和ConcurrentHashMap的源码好好看了下,1.7的hashMap确实扩容的时候重新计算了元素的hash值。。。。面我的哥们作为高级开发,这水平也是没谁了,RELX锐刻这公司能招到人也是厉害,可以拉黑了....

这三场面试后对知识进总结:
HashMap源码分析:https://zhi.re/index.php/archives/984/
ConcurrentHashMap:https://zhi.re/index.php/archives/1009/
MySQL锁机制:https://zhi.re/index.php/archives/1008/
Nginx:https://zhi.re/index.php/archives/1007/
Explain关键字:https://zhi.re/index.php/archives/1011/
MySQL索引:https://zhi.re/index.php/archives/1012/

Last modification:June 30th, 2020 at 10:38 am