发个一年以来作为留学生的经历(JAVA)
下周就要入职了,我就发个从去年秋招到现在的面经吧,写在开头的是,各位能面对面的千万要选择面对面千万别online,因为自己展现不了很难受。
由于留学的原因,当时秋招就参加了一个华为的现场面试,(提醒留学生千万晚点面华为,华为有海外招聘,给的钱比暑假的多得多得多!)
面经如下:
项目介绍,最短生成树算法的,TCP底层协议实现,实习经历,以及当时的SDN。
(当时研一,所以报的岗位不是软件开发)
拿到offer之后,就放松两个月,但是后来觉得这个岗位不适合我自己(其实是觉得给钱少还没有技术)然后醒悟过来发现秋招已经过去了;
接下来就是秋招补录,偶然的机会接触到了阿里云中台的一个前辈,给了内推,然后远程面了5面,还补做了网测,最后可惜评级是B+没有能进去
面经如下:
一面:项目经历,着重问了项目里面的cdn模块,场景题,如果多个人访问一个热点新闻你会怎么处理。异步框架搭的时候是如何考虑的。
知识面考核:DUBBO了解吗?spring 中的事务是怎么回事?请问你在项目里面怎么使用spring的?多线程中的线程池讲解一下,AQS原理 讲一下,Synchronized做过什么优化?
(还有一些源码不记得 了)
线下作业题:重写hashmap,使他能够记录数据插入的先后顺序,伪代码思路即可。15分钟。
二面:问了10分钟知识点:mybatis的缓存,redis的集群实现,redis持久化,mysql的范式。聊人生,理想。
三面:大佬全程在怼我项目,问我哪里来的(= =),设计思路,以及给我出了一个题目:类似于mysql慢查询优化= =忘记
四面:总监是校友(= =90年代的留学生果然值钱)给做了一题leetcode的原题就给过了,path sum iii
之后hr面就不说了,前辈说我实习经验不足,同时开源项目的研究不深入所以评级不高。于是就回去充电。
接下来的就是戏剧化的两个公司(都跪在了一面):
小红书:
项目经历随便问了一下,然后做了一题leetcode的hard题,(上锁的。各位可以去翻我以前的贴子)。
然后没有做出来,跪了。。
头条:
个人感觉面试官不尊重,整个面试过程都是拽拽的。上来说,把你知道的jvm的东西说一下,把你知道所有关于线程池的东西说一下,把你知道i的所有redis的东西说一下(我:。。。。)好了我们做题:
1. max point line(边界条件未考虑,基本是做出来了)
2. 计算100w以内的所有质数,(卧槽,难翻了,后来一查是ACM的题目,哦哦哦,我是应该不会)
接下来就是春招, 可笑的是很多家公司笔试全ac拿不到面试机会,于是我顿时很慌,是不是不要18届的了。。。。
幸好有牛客网组织的留学生招聘,做了以后收到了链家,微策略以及趋势科技的面试:
趋势科技:
一面:聊天,问了一点点技术,面试官很好奇在美国的生活怎么样,(= =个人感觉emmm这是在面试吗)
二面:双人面试,个人感觉面试官不懂redis,他问我redis为什么快?我说1。redis是基于内存的2.redis的i/o复用模型,典型的单进程单线程,reactor。
面试官说,不对,redis不是单线程,嗯,不然多核cpu不就没有用了吗?我回答,对啊,多核你就要多开几个redis实例,否则是没有用的。面试官又说,不对,你错的。我:emm,那您要不百度一下。。。后来,,,他说我说的单线程不是你说的单线程。。我:。。。嗯嗯。。然后技术面试到此结束。
其他两家大同小异,链家也拿到了,微策略没有(当场写sql语句没有写出来)
然后就是携程6面
面经:
一面很详细问了经历,实习经历,项目经历,以及做得笔试题目关于jvm的
后面4面略,那天太累了,基本是感觉疲劳轰炸,记不得了。
说说第六面CTO面吧:问了我项目中异步框架是怎么想到的,我回答是通过类似于阅读reactor框架想到的,同步的话容易遇到阻塞,用户体验极差。又追问,如何保证异步队列的消费者执行的正确性,我回答,返回参数。接着追问,那你和实际如何校验例如积分成功与否,我回答点赞数和积分大小是否匹配。继续追问我,你项目中写了你做过测试,请问你如果要你测试你的程序登陆模块对的话你会从几方面出发?我:从防sql注入能力,输入错误密码后台前端返回的参数校验等。然后又追问,请问你觉得项目中还有什么可以优化的吗?然后我很顺理成章的引导第二个项目,我说第二个项目就是在第一个项目基础上优化的,使用了rabbitmq异步队列,https加密增加安全性,solr等等,然后解释了一下原理。
好了,还有4家中型互联网我就不写了~祝各位秋招顺利~~~