查看原文
其他

一个妹子的大厂后台面试经验总结

程序猿DD 2020-10-16

点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

作者 | 倾听潮汐

来源 | nowcoder.com/discuss/57771

自我介绍

本文作者妹子,985硕士,211本科,专业都是软件工程,一直投的是java后台开发,只投过一次网易的测试,技术不是大牛,但是比较努力。实验室没有项目,so项目经验是0,在去年这个时候看到实验室师兄找工作的艰难,因此开始复习的时间比较早。

最开始先看的java基础,看的毕某某的视频,后面就看框架视频,后来也看过某某学院的视频,都是在网上找的免费的。《剑指offer》刷了一遍,有些重点的题一定要滚瓜烂熟。《大话设计模式》《mysql必知必会》《程序员面试金典》《java并发编程实战》《计算机操作系统第三版》《计算机网络》都看了一遍,《深入理解java虚拟机》看了两遍。《java编程思想》《Java数据结构和算法中文第二版》《Spring技术内幕:深入解析Spring架构与设计原理(第2版)》《Struts2 in action中文版》《tcp详解卷一》挑的重点看。

现在觉得最后悔的是leetcode没有刷,有时间一定要刷,有时间一定要刷,有时间一定要刷,对解题思路很有帮助。因为没有项目经验,就在网上找了一个项目,对于项目中的问题一定要很熟,用到的技术不仅要会用,还要理解底层,反正每次都会被问,感觉面试官对什么高并发的东西挺感兴趣的。

我主要是想找成都的公司,但是最开始海投的时候,不管公司在哪里,我都投了,反正投的公司有几十家,我认为多面几家公司可以多增加一点面经。多关注一些技术群,有很多内推信息(很多公司内推可以免笔试,这是很爽的!!),我的前两个offer都是内推的(美团和携程),因为美团是成都的,自己也比较满意,所有后面很多公司的面试都没有去,但是建议还投的时候还是都投,先拿一个心里有底。

排名按面试时间

蚂蚁金服-内推的,面了3面技术

1面hr(在池子中泡了3个多月,最后还是gg了)这是我秋招的第一次面试,别提多紧张了,声音都在发抖,自我介绍都不知道说什么。。。

1.自我介绍(说的很乱)

2.序列化的底层怎么实现的

3.synchronized的底层怎么实现的

4.tomcat集群怎么保证同步

5.了解nosql吗?redis?

6.怎么解决项目中超卖的问题

7.int的范围

8.有什么想问的?我问对于没有实现经验和实际项目经验的,阿里会考虑吗?面试官说对于应届生,阿里还是最看重基础。我:你们平时怎么学习技术?面试官:从实际项目中学习。。。面完之后,面试官说我基础可以,给我过,我能走多远就不知道了,反正很谢谢这位面试官,给我的秋招增加了很多信心,毕竟是阿里的面试官说我基础可以。

二面

清楚的记得二面是在晚上7点左右,刚走到教研室楼下,看见是杭州的电话,顿时激动了,然后一接,果然是阿里,因为下面很吵,我就一口气跑到5楼,然后喘着粗气进行自我介绍。。尴尬

1.问了项目中超卖的问题怎么解决

2.你熟悉什么数据结构

3.说说快排,我说了快拍实现的过程,相当于口述代码,然后问了复杂度

4.int的范围,我说的是2的-31次方到2的31次方-1,面试官说具体点,我就不知道了

5.乐观锁vs悲观锁

6.gc

7.concurrenthashmap分段锁的细节

8.设计模式怎么分类,每一类都有哪些

9.并发包里了解哪些

10.b树,b+树,b*树

11.字节与字符的区别

三面

一二面只隔了2,3天,三面和二面隔了2周,当时一直以为自己挂掉了,接到电话也很突然

1.自我介绍

2.项目

3.知道哪些服务器?答:JBoss,Apache,weblogic。问:区别?

4.java有什么后端技术

5.springIOC优点

6.jdk动态代理vscglib动态代理,他们底层分别怎么实现的

7.synchronizedMap知道吗?他和concurrenthashmap分别使用于什么场景?

8.https过程?公钥能用公钥解吗?在客户端抓包,看到的是加密的还是没加密的?当时乱猜的加密,面试官说不对,是没加密的

9.描述一下java线程池。

10.怎么保证redis和db中的数据一致

11.设计模式怎么用到项目中?

12.类加载

hr面

不记得3面和hr面之间间隔多久了,也是晚上6,7点收到的电话

1.自我介绍

2.有什么优点?

3.有什么缺点?

4.项目中遇到的困难?怎么解决

5.意向城市 时间已经过去太久了,只记得这么多,可能有些问题不是阿里面试官问的,但都是在面试过程中遇到的,希望能帮到更多的人。

携程(offer)内推-只有一次视频面

1.链表的定义

2.怎么实现链表翻转

3.怎么判断链表是否有环

4.二叉平衡树,怎么用一维数组存储

5.讲讲jvm分区

6.讲讲jvm gc

7.怎么求数组的最大子序列和

8.final关键字4种用法

9.sleep用法

10.await关键字

11.线程池

12.spring ioc,aop以及其优点

13.栈和堆的定义

现在记得的只有这么多了。

美团成都提前批(收到offer)

在河畔上看到的内推消息,然后就发了邮件,3、4天后,收到邮件让去公司面试,在天府三街附近。

一面

先给了一个A4纸,上面写满了题,然后就做题。做完题就自我介绍,说项目,问项目里的东西(自己一定要对项目里用的东西很熟,还要明白底层原理,我用了redis,面试官就问了redis怎么实现),然后就问java基础,面了40分钟吧,然后就让我在外面等,过了一会,二面面试官来了。

试卷题目,只记得部分

一、简答题

1.浏览器访问一个网址的时候都有哪些过程(还要了解DNS查找的过程)

2.tcp三次握手,四次分手

3.线程池

4.你了解的设计模式(面试官说什么单例模式就不用说了)

二、编程题

1.二分查找

2.树的中序遍历

三、智力题

给你一个5L和3L桶,水无限多,怎么到出4L

二面

面试官问我觉得一面面的怎么样,我。。。。然后就看我做的试卷,我竟然连二分查找都写错,面试官说不对,然后我改了改就好了,然后面试官就问还有什么可以优化的地方吗?我只说出来一个。。然后又是自我介绍,说项目,问项目,问基础。差不多也是40分钟。

三面

过了几天,收到3面邮,应该是部门boss,也是自我介绍,然后出了两个题1)一个n*n的矩阵,按副对角线打印2)4个瓶盖换1瓶酒,要和150瓶酒,他自己最少多少瓶?然后问了职业规划。感觉有1个小时。

Hr面

北京的电面,就随便聊聊。

58现场面试(offer)

两面技术,一面hr,然后就让我回来了 技术一面

1.自我介绍

2.根据58笔试题,看着问的 服务器之间怎么通信,写了一个链表反转,项目中nginx怎么配置的,什么硬件条件可以实现多线程,什么情况下多线程才能发挥作用,mysql索引底层是什么,b 树和hash应用场景 技术二面 讲项目,什么是乐观锁,以后的规划

hr面

1.项目流程

2.项目中遇到的问题,怎么解决

3.自己最大的缺点

4.喜欢和什么样的人合作,不喜欢和什么样的人合作

5.了解58吗

6.找工作有区域限制吗?家人支持吗

7.讲了讲学生活动,一个活动怎么组织的

8.有其他公司offer吗?

中兴(一面挂)

所有人在一个大厅里面,很多面试官,每个人两个面试官。

1.自我介绍

2.手撕代码1)怎么写多线程2)1,2,3,4组成的不重复三位数,都用代码写出来

3数据库会不会,我说可以,他问会什么,我说索引,然后让写sql,让我建一个表,我说这种我都是百度的,然后让我写了两个查询

4.问项目

5.会linux吗?答不怎么用,会常用命令

6.愿不愿意转测试,答不愿意,问看不起测试吗?答不是,只是自己喜欢研发

7.意向城市,答成都,只有成都吗?答,嗯

滴滴(二面挂,现场面)

一面

1.一来就手撕代码,给你三个string s1,s2和s3,判断s3能不能由s1和s2组成,s1和s2内部元素相对位置不能变,比如a 和bc,可以组成的有abc bac bca,我写的暴力的,在面试官的指导下改为了动态规划,不过最后还有不对的地方

2.自我介绍

3.hashcode和equals区别

4.实现一个类,要求要放在hashset里

5.你了解哪些设计模式?我说了一些,然后让写了一个单例,我用枚举写了一个,感觉面试官不懂,说再写一个,然后写了一个双重检查的

6.你还有什么要问的?

二面

1.说项目,被批的很惨

2.写了四次分手的图,然后问若客户端和服务器之间,1s会发生5000到6000次短链接,会发生什么问题

3.手撕代码,不断优化,最后应该是对了

4.你有什么问的吗?

招银网络(offer,现场面)

一面

自我介绍

问项目

用过log4j吗?把他输出到数据库用过吗?

一致性hash,怎么解决hash冲突

除了写代码,有什么爱好

怎么保证写的代码出错少

写自己项目中类的函数声明

有没有遇到什么有印象的bug

二面

项目,没什么好说的,反正问的很深,被怼死了

hr面

自我介绍;得过哪些奖;家是哪里;选公司的标准;抗压的能力;父母是做什么的,具体一点;父母对于你找工作的意见

对开发工作的要求,我本来说的不想做android,后来我问他们公司业务时,听hr的意思就是,如果一个项目用c写,你就用c,如果用c#,你就用c#,如果是ios,你又用iso,具体用什么语言都不确定的,然后我就说我什么都愿意做。。。。就酱。

华为(offer,现场面)

一面

1.自我介绍

2.自己实现一个链表,写了以后也不说对不对

3.说项目,问了很多,还让画框架图

4.写生产者消费者代码,我用的阻塞队列

5.说我不适合研发,让转测试或资料

6.说发的论文的算法

二面

1.自我介绍

2.平时怎么提高自己的编程能力,我说刷题,他问频率,我说不忙的时候一天一次,然后他说既然刷那么多次,怎么笔试成绩还这么低。。。感觉自己给自己挖了一个坑

3.意向城市

4.自己的缺点,怎么改进

5.项目中遇到的最大的困难

6.在课题中遇到的最大困难

7.你们4人合作项目是怎么分工的

8.你有什么想问的

贝贝网

一面

1.自我介绍

2.java同步机制有哪些

3.equals和hashcode区别和联系

4.进程和线程讲讲

5.equals和==区别

5.代码题,没让写,只说了思路,有n个长方形,每个的长宽为x,y,从下往上堆,要求上面的长宽小于下面的长宽,求最多可以堆几层

6.在浏览器输入一个网址到得到页面的过程,越详细越好

二面

1.自我介绍

2.问项目,问的很深,还有什么可以改进的

3.同1面的6题

4.进程vs线程

5.平时怎么学习

6.写sql

hr面

hr和二面在一起,先二面然后hr面

1.你本来不是杭州人,愿意来杭州工作吗?为什么

2.有关注杭州其他企业吗

3.周末平时干什么

4.还有什么问题

大疆(只记得3面)

1.自我介绍

2.说项目,问项目

3.讲讲你的家庭

4.为什么来大疆

5.面过其他公司吗

6.如果主管没给你安排事情,又没有项目,你会干些什么

7.遇到的挫折,我说了一个,然后他说这不算挫折。。

8.了解大疆吗

9.有什么想问的

以上就是参加的所有面试总结,总而言之,作为技术人员就要保持终生学习的态度,让学习力成为核心竞争力,才能不被时代所淘汰,高效的时间支配能让你变得更加优秀。



往期推荐



重磅消息:Redis 6.0.0 稳定版发布

来阿里前 vs 来阿里后

树莓派基于 Linux 的 Windows XP 现已可用

Java如何优雅的实现时间控制

微软开源 MsQuic,QUIC 协议的跨平台实现



扫一扫,关注我

一起学习,一起进步

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存