java开发面试记录

从三月到现在,大大小小的面试算起来参加了6次面试,其中有过的有没过的,往后短期内(秋招之前吧)应该也不会参加面试了。想记录下来

先说一下总体感受:小公司更关心项目,想要能直接上手接项目的实习生;超大公司(BAT)面面俱到;中型公司面面俱到不过总体难度不如超大公司

求职建议:专业对口,离学校近,200人以上风口公司

地点:杭州    时间:2019.3/4   专业:安卓转java(后端)  身份:本科大三下

第一次 ,小公司(20人),江干区,距离学校50分钟,车费¥4,3月初,面试安卓。  未过

现场上机做笔试题,考点主要是activity的简单使用+listview控件(是的,这个控件比较老了)+数据库(由于时间很短,设计出来并不很容易)+网络(具体我忘了,但是这个我不会就没写)+实际问题分析解决题型。——总共考试时长3小时,结果隔天出,说没通过笔试。——因为是个小公司,我本以为出题会比较简单;甚至还想就算题目比较困难,也应该不会要求太高

不过后来可以通过他笔试题分析出点东西,笔试题完全未涉及java基础,数据结构,编程算法等科班基础,而是几个功能(说白了新人培训个几天问题都不大的事情),所以我不是很推荐各位去这样规模的公司  虽然这是我第一次笔试,但是没通过也没给我任何压力。如果有同学想去类似的公司,可以做个参考,不过我不是很推荐去。另外,这家公司在某求职APP上的面试难度达到4.2(满分5)

第二次,中型公司的新建小部门(杭州团队20人,西湖区),距离学校1小时20分钟,车费¥7,三月中下,安卓。  通过

直接是分部门经理来聊天。询问专业课程以及自己是如何学习java的,对行业的走势怎么看,而且让人奇怪的是没有具体问技术,就一直聊天聊了大概一个小时(矿泉水都喝了一瓶)。关键有如下几个问题:你觉得java和C++各有什么优势?为什么选择学java?了解过Linux系统吗(我回答的学过但是忘了只记得基本命令,就没有深入问)?了解混合开发吗(因为我应聘的安卓),你觉得混合开发会给原生APP开发带来哪些影响?对互联网教育行业怎么看的?(因为该公司是属于为教育行业提供产品服务的,更具体地说幼儿教育)。

这次的面试其实进行的很愉快,老大在阿里干过,后来走管理路线,谈吐都很不错,但是也可以感觉出来有一点缺少底气(因为几次尝试跟我解释现在公司的发展前景很好,其实我一个实习生不看这些)。

一个星期以后(恰好那个星期我在备考CSP所以没怎么管),正好是考完CSP的第二天,老大微信给我发了offer,周二我就去上班了。然后谈的公司是3.5k/月,三个月后转4k,那天我就加入了公司的gitee,并且给一台电脑配置了jdk,AndroidStudio等环境,然后跑了团队的大项目(我第一次看到这么大的项目感觉好晕)。不过在最后老大跟我说了公司是每个月的前三周上六天班,说白了就是周六上班,即966。也许是我当时觉得找工作太快了吧(在CSP考试之前我其实是随便看看),第二天我问老大能不能一周只去5天,工资不变。结果没谈好,我就辞了

也就是在哪个辞职的周二周三,我深思熟虑,要不要继续上班,还是先去考个研,继续安卓还是撤头来java。我给女朋友商量了,给我妈说了(我妈一直让我考研),咨询了我家里面学历最高的表姐(某港在读博士)。最后的决定是,就业,直接找java工作(因为我始终详细,java开发学好了转Android[当然很大程度可能不会],要比Android学差不多了转java简单得多)

补充说一下我的情况:java基础良好,数据结构较好,操作系统,计组原理都懂一点。
javaee基本不懂,jdbc,servlet都只是用过但早忘了;
Android基础还行,四大组件都会一点,recyclerView这种新组件也会一点。
最初的想法是先不管那么多找个工作,在工作中慢慢学java开发,等秋招跳槽。

那大概是3月20号,我去图书馆借了本书《java自学手册》,开始从html学习java开发,周期大概是一个星期

如图所示,其中前端的东西只是了解,重点写了几个servlet。时间到了三月底,我再次打开求职软件,发现HR突然不怎么爱搭理人了,前两个安卓都是很快回复我,现在投几个也少有一个回复。。加上一些同学已经找到了工作我开始很慌张。。这个时候鬼迷心窍的投了一份简历——第三次面试经历

第三次,阿里巴巴天猫技术部,电话面试44分钟(较为详细),三月底。未过。兼具广度和深度

Q:自我介绍一下。

A:您好,我是~~,来自~~,就读于~~,专业~~,希望找到一份java实习工作,近两年的大目标是java全栈。

Q:学java多久了,怎么学习的?    A:半年,看书《疯狂讲义》为主

Q:了解java集合吗,有哪些集合?  A:了解,有Map,和collection,collection分为Set和List

Q: hashmap源码看过吗,知不知道是怎么实现的?A:看过部分,是数一个数组,每个数组元素是一个链表。

Q(也许是因为我大方向答对了,进入了数据结构的深入讨论):让你写一个列表你会怎么写,如果ArrayList数组越界了怎么处理。排序算法了解吗,冒泡排序说一下,说一下堆排序,如果让你在超多数据中找到TopN你会用那种排序。二叉树了解吗?描述一下平衡二叉树的插入操作,知道红黑树吗,给我讲一下红黑树,知道B+树吗?

A:TopN应该用堆排序我没打上来,红黑树(平衡二叉树的一种特例变式)我没回答清楚。其他我都差不多答上了

Q:数据库用过哪些(mysql),mysql是如何在物理盘查数据的,mysql的存储引擎了解吗,索引的好处在哪里,知道事务吗,有用过锁吗?

A:通过B+树,不了解存储引擎,索引快,不太了解事务(是和安卓中transaction差不多吗?我随便扯了点),没有用过锁(只在java编程中用过。。我就不该说这句话)。

Q:谈一下线程,java中线程同步怎么实现,知道哪些加锁方式。

A:答得不太好,不过其实概念我知道一点,但是确实不熟。

Q:看简历你做过一个博客系统项目。你负责哪些方面,用的什么技术?

A:(其实就是以前抱大腿的一个项目,我啥也没做。)我负责数据库已经相应的数据库调用方法还有servlet类的编写。主要用到jdbc,servlet技术。

Q:解释一下数据库连接的整个过程?怎样判断用户是否登录?用session吗?数据库表具体怎么设计的?

A:~~~判断用户是否登录用的cookie,但不是我负责的内容。数据库表一共就两张,谈不上什么设计

Q:了解springboot,spring吗?

A:不了解,框架我确实没用过,我最近在学习,刚看过jdbc,下面准备看Struts2和hibernate。

Q:不要看Struts了,基本没人用了,直接看springmvc吧。

A:啊,谢谢!

Q:你说你在XX有过安卓实习工作,具体做什么了?

A:把项目从Mac换到win,改了几个兼容性bug,熟悉了git基本操作,拜读了企业级代码结构,,代码上具体也没做啥功能实现

Q:好的,我大概了解了,你还有什么问题吗

A:~~~~随便问了些,比如“大佬,您觉得我现在最该学习哪块知识”

Q:你的基础还是蛮不错,不过项目太低了,还有数据库像事务这块需要尽快学习

大概就是这样,,整个电话面试44分钟(室友面了30分钟。貌似时间越长越有戏)。。然后两天后,我被刷了。。

整个人都不好了,尽管我知道阿里很难,但是还是感觉整个人都不好了~~~!!!

面试建议:不要谈自己不清楚地领域,不懂直接说,别逞强;我后来分析我面试的一大败笔是明明不太懂红黑树,硬要说他并不复杂(当然其实本来也没得好复杂),还有项目,一定要对简历上的项目非常熟悉。。

第四次面试,指令集科技,距离1小时20分钟,¥7,潘爱民大佬创办的新公司,未过。

Q:自我介绍。

Q:聊一下servlet生命周期。

A:这个问题把我问到了,,我知道servlet请求响应的这个过程,但是不知道如何回答这个问题,我就描述了以下请求响应过程。

Q:数据库了解吗,谈一下事务。

A:阿里面试后赶紧做了功课,基本答上了。

Q:知道springmvc吗?用过mybatis,hibernate没有?

A:不知道,没有用过。

个人觉得面试得并不太好,因为问的基本是项目,而java基础的东西没咋问。。但是顺利进入二面

Q:自我介绍。

Q:熟悉队列吗?如何实现一个循环队列?

A:熟悉,一种先进先出的线性结构,尾指针指向头就好了

Q:尾指针指向头就好了吗?————继续纠结这个问题大概几分钟吧,其实我是很不愿意谈这个问题的,毕竟说白了线性结构并不复杂,只要学过数据结构都应该很清楚,就算理解程度可能有欠缺,这种都是很容易纠正的问题。。总之让我感觉技术官老师问些没必要纠结的问题

后来。。居然还有三面,,三面是人士

A:谈一下你对刚才两位面试官的感觉。

Q:这绝对是我最傻的一次之一。。我居然回答“都是大佬,很希望有机会向他们学习”。。后来一想,我应该细致点,或者说一点自己的看法,毕竟对面是非本专业的人士面,,更多的是看我的语言,表达力,思维等。。

这个时候恰好清明节放假,假期后第一天得到消息,没过。。。气死了,没过你让我面三次。。

不过我后来总结,最大的败笔应该在第二面没有引导技术官问我擅长的部分,在处理队列相关问题的时候显得比较自大,还有第三面的人士,,表现得太low了。。

清明假期加上前段时间,差不多跑了一遍springmvc+mybatisdemo。

如图

第五次面试,400人规模,杭州卓建科技,江干区,骑车距离12分钟。     中规中矩,循序渐进

A:自我介绍。

A:学过哪些课程?(我答C++,Linux,数据结构,操作系统~~)

A:C++模板用过吗,Linux基本命令知道吗,常用排序会写吧(就是根据你说的学过的问)

Q:用过,在java中被称为泛型,Linux基本命令学的时候很熟悉,现在模糊的记得一些命令如新建文件makedir,复制移动文件cp,mv等等,排序算法如希尔,归并,堆排序都会写,快速排序有点忘了。

A:说一下你做过的项目

Q:主要用到servlet和jdbc技术(经过阿里的面试我后来考虑过要怎样描述这个项目,所以还算答得可以)

A:现在的新技术了解吗,vue,dubbo,springboot

Q:我只知道vue是前端的东西,dubbo只是听过不知道具体干嘛,springboot没了解过,知道springmvc

A:谈一下springmvc

Q:首先说一下MVC结构。然后从中心的dispatcherServlet开始说,谈一下处理请求的整个过程。

A:对于公司有过了解吗?如何看996.icu

Q:有过一些了解,我知道公司的老大是浙大医学博士,留学学历,做过医科主任,后来创业,拿了多少亿融资。现在公司的状态。不赞同996.icu,不过如果是攻坚时期,上面的人管理得当,我愿意短时间接收。

A:你等一下,我让人士来谈工资。。

Q:我曰(注意这个字是曰[yue]),爽快!

最后的结果是,工资3k/月,965工作制度(午休一个半点),大楼有食堂,超市,咖啡厅。

而且我也接受了,因为距离学校进确实很舒服

第六次,税友,距离1小时40分钟,¥7(杭州的同学搜一下就知道了吧,6000人量,挺大的公司)

为什么还会有第六次?因为在投第四次简历的时候还投了另一家公司,不过其动作很慢。。我在卓健工作了一周后才收到笔试通知,因为是线上笔试,我就随便做了、结果第二天,实际上就是我现在写总结的今天让我去面试。

人士面:

A:除了技术,还有什么爱好吗?或者说,你觉得比其他人的优势

Q:文化,投资,组织能力,演讲能力

A:谈一下投资吧,你有学过吗

Q:没有系统的学过,我的一些朋友学会计,金融方面的,他们的一些考证书籍后来给了我,比如证券投资基金,股权投资基金。我都有看过一点,且也想后续自己考几个相关的证书。跟互联网相关的投资,前几年很热的比如区块链,我也有过了解还自己买入过(其实后来想我应该说自己看过一些启蒙书籍,像《穷爸爸富爸爸》一类的)

A:人士面好像对区块链比较感兴趣跟我聊了半天。。包括问我行情,什么点会考虑买入,是否觉得还会大涨之类的

Q:由于我显然不知道什么时候会涨。。我很机智的从单纯的谈行情转移到了区块链思想层次,然后随便扯了一下

技术面

税友技术面试和阿里电话面试很像。。但是源码相对问得少,也没有问怎么实现排序啊这种。。而且面试官,至少我遇到的面试官给人感觉很亲切很舒服

税友过没过我不知道,,后续会更新

虽然春招进入尾声了,如果你能看见的话祝你好运了。

如果你像我一样想做开发但基础不太好,别担心,这种东西入门到面试级别都很快,难的在后面。。不知道明天师傅又会分配什么任务,,啊,希望早日成为小佬

猜你喜欢

转载自blog.csdn.net/qq_25929565/article/details/89438835