0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一位Java工程师的电话面试经历

工程师人生 来源:工程师吴畏 2019-07-09 16:28 次阅读

今天5点半接到一个杭州的电话,是蚂蚁金服打来的,当时心里一阵发慌,由于还在上班,就和面试官约定6点下班之后再来。挂完电话,心里忐忑的不行,感觉自己这也没准备好,那也没准备好。剩下半个小时完全没有心思再工作了,把常问的HashMap,concurrentHashMap底层看了一下,算是临时抱佛脚吧。一下班,就收拾出发在公司楼下找了个地方等面试电话。

没一会儿,电话如期而至。先是聊了下大概情况,然后聊了下工作经历。叫我挑选一个自己觉得掌握的最好的项目开始发问。

最开始问了你觉得项目中最难的地方,自己因为毕业了一直在小公司,也没有感觉遇到特别困难的地方,憋了半天憋不出来。面试官也放弃了,直接问,项目中用到Map集合吧,用到过哪些Map。自己就说了个最熟悉的HashMap。但是面试官好像不太想问这个,又问有没有用到过排好序的Map,当时自己脑子短路了,没想到TreeMap是排序的,当时竟然一时想不出有排好序的Map,就说了没有排好序的Map,但是可以实现Compareble接口来实现排序。肯定面试官也很无语,这送分题都不会啊!然后又问HashMap put方法的时间复杂度,我说因为HashMap底层是数组加链表实现的,如果没有hash碰撞时间复杂度就是O(1),有碰撞最坏情况就是O(n)。然后看到我建立上有写线程池,就问了下创建线程池的具体参数的含义,这个没啥难的,然后又问线程池的缓存队列,然后又问是否自己去实现过缓存队列。最后一问完全不知道咋回答,因为平时都是直接使用现成的。然后继续发问,问了下JDK bin目录下的工具除了java javac还有没有用过其他的。我心里想,面试官啊,你把我用过的工具都说完了。然后就只有说没有使用过。自然又是跳过。然后又问项目除了开发,有没有用到优化方面的。我想肯定是想问JVM方面的了。就说了下自己在测试环境服务老是启动没多久就挂了,自己调整了下堆内存的大小。其实当时只是试探性的加大了堆内存,根本没有怎么去分析过。然后面试官问,你是根据什么觉得要去调整堆内存大小的,自己当时就慌了,因为没有实际做过,所以就说自己在启动项目的时候加了输出GC日志的命令,看到有很多Full GC,所以就调整了。感觉面试官不是很满意。然后又问我你知道JVM垃圾回收机制吗?自己其实对JVM垃圾回收这一块还是挺熟悉的,但是这么一问自己一时不知道怎么回答,就把垃圾收集器说了一下,但是感觉不是很对。后来回来百度JVM垃圾回收机制,感觉都有说到JVM内存结构,对象可达性分析,垃圾回收算法,垃圾回收器都有讲到。其实自己这块挺熟悉的,但是一笼统的问JVM垃圾回收机制当时一直在想我该回答哪一块的内容。最后面试官问了如果你要让现在做的项目更好,你回添加一些什么功能。但是自己想了半天也不知道如何回答。面试官应该也很无语,但是不得不说面试官全程都是态度非常好,电话面试都能感受到面试官是一个又谦虚又有真才实学的人。给了我很多建议,说我们程序员一定要一直保持学习,要多学习底层方面的东西。其实自己也很想学习底层的东西,但是底层的确实要难很多,很多书看不动,还是要继续努力才行啊。面试官说,如果有下一步会发邮件,叫我注意关注下。

这次面试虽然表现很差,但是还是让我获益很多。我知道大的公司都喜欢面试底层,所以自己也对底层有过一些关注,在网上看到都会问HashMap , concurrentHashMap所以对这两个的底层是看了又看,特别是concurrentHashMap的实现1.8之前怎么实现,1.8之后怎么实现都做了很深的了解,然而今天并没有被问到。连简单的TreeMap都忘了,也是自己平时没怎么使用。平时的业务确实也没有涉及到。还有自己对自己做的项目完全没有一个总结,面试官问的关于自己项目的问题自己都回答的简直像坨翔一样。更深的感觉就是不管是什么东西,一定要自己动手去敲,去实现,这样面试官问你你才能完完全全的回答出来,而不是去背书,背书的话随便拐弯问两下你就现原形了。

接下来,总结项目,根据项目用到的技术复习吧。蚂蚁金服是真看中基础,面试了半个多小时,完全没有问一道框架方面的问题,我还以为会问Spring,Springboot相关的,然而一道题都没有,也不知道是不是因为自己前面基础知识回答得确实太差了,已经不想再问框架的了。面试了这一次也好,也知道该怎么准备了,接下来就是好好努力,努力看书,努力敲代码了。以后争取每一个知识点都自己去用代码敲出来,直到把键盘敲烂为止。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1570

    浏览量

    68514
  • JAVA
    +关注

    关注

    19

    文章

    2967

    浏览量

    104739
收藏 人收藏

    评论

    相关推荐

    面试题】人工智能工程师高频面试题汇总:机器学习深化篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备面试常问的问题,比如机器学习
    的头像 发表于 12-16 13:42 1924次阅读
    【<b class='flag-5'>面试</b>题】人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总:机器学习深化篇(题目+答案)

    面试题】人工智能工程师高频面试题汇总:Transformer篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备面试常问的问题,比如机器学习
    的头像 发表于 12-13 15:06 493次阅读
    【<b class='flag-5'>面试</b>题】人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总:Transformer篇(题目+答案)

    人工智能工程师高频面试题汇总——机器学习篇

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备面试常问的问题,比如机器学习
    的头像 发表于 12-04 17:00 848次阅读
    人工智能<b class='flag-5'>工程师</b>高频<b class='flag-5'>面试</b>题汇总——机器学习篇

    寻求专业工程师帮助设计USB多口充电器

    嗨, 我正在开发款USB多口充电器,现寻求一位专业工程师或产品设计的帮助。希望能够与有经验的工程师合作,共同完成产品设计。以下是我们的需
    发表于 08-05 12:03

    嵌入式软件工程师如何提升自己?

    ,可以为自己的职业生涯打下坚实的基础,并实现个人的职业目标。愿每一位嵌入式软件工程师都能在这个充满挑战和机遇的领域中取得成功!
    发表于 06-12 11:20

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的种专业工程师
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #威廉希尔官方网站 知识 #面试

    电子工程师威廉希尔官方网站
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    为何国外工程师偏爱使用for(;;)来实现MCU死循环?

    一位工程师发现,国外工程师在给demo在做死循环时用的是for(;;),而不是常用的while(1)。这仅仅是个人习惯的问题,还是有更深层次的含义?
    发表于 04-01 11:26 643次阅读
    为何国外<b class='flag-5'>工程师</b>偏爱使用for(;;)来实现MCU死循环?

    如何搞崩个硬件工程师心态?试试对ta说这几句

    硬件工程师
    扬兴科技
    发布于 :2024年02月20日 18:05:49

    名嵌入式工程师的涨薪经历

    下面是一位嵌入式工程师的涨薪经历,希望可以帮助到你,帮到其他的在校学生。   阶段 1 大到大三这个阶段我与大多数学生相同:   、学习
    的头像 发表于 01-05 08:39 445次阅读

    年底接到电话那刻,硬件工程师顿时汗流浃背

    硬件工程师扬兴科技
    扬兴科技
    发布于 :2023年12月29日 19:15:30