985、211毕业一年,面试八家大厂,四面拿美团offer(Java后端)

自我介绍

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

复习经历写在文末

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

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

排名按面试时间

蚂蚁金服(内推)

面了3面技术,面hr (在池子中泡了3个多月,最后还是gg了)。

添加图片注释,不超过 140 字(可选)

一面

这是我秋招的第一次面试,别提多紧张了,声音都在发抖,自我介绍都不知道说什么。。。

  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动态代理 vs cglib动态代理,他们底层分别怎么实现的

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

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

  9. 描述一下java线程池。

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

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

  12. 类加载

hr面

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

  1. 自我介绍

  2. 有什么优点?

  3. 有什么缺点?

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

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

携程(offer)

内推-只有一次视频面。

添加图片注释,不超过 140 字(可选)

  1. 链表的定义

  2. 怎么实现链表翻转

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

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

  5. 讲讲jvm分区

  6. 讲讲jvm gc

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

  8. final关键字4种用法

  9. sleep用法

  10. await关键字

  11. 线程池

  12. spring ioc,aop以及其优点

  13. 栈和堆的定义

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

美团

成都提前批(收到offer)。

添加图片注释,不超过 140 字(可选)

在河畔上看到的内推消息,然后就发了邮件,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)

添加图片注释,不超过 140 字(可选)

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

技术一面

1.自我介绍

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

hr面

1.项目流程

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

3.自己最大的缺点

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

5.了解58吗

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

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

8.有其他公司offer吗?

中兴(一面挂)

添加图片注释,不超过 140 字(可选)

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

1.自我介绍

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

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

4.问项目

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

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

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

滴滴(二面挂,现场面)

添加图片注释,不超过 140 字(可选)

一面

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,现场面)

添加图片注释,不超过 140 字(可选)

一面

  1. 自我介绍

  2. 问项目

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

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

  5. 除了写代码,有什么爱好

  6. 怎么保证写的代码出错少

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

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

二面

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

hr面

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

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

华为(offer,现场面)

添加图片注释,不超过 140 字(可选)

一面

1.自我介绍

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

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

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

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

6.说发的论文的算法

二面

1.自我介绍

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

3.意向城市

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

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

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

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

8.你有什么想问的

贝贝网

添加图片注释,不超过 140 字(可选)

一面

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.还有什么问题

面试前我是如何“啃”书复习,刷题提升的

面试前一段时间我不断找资料学习,也通过很多渠道和朋友要到一份美团架构师写的Java面试宝典(284篇)我把美团架构师给我的一份Java面试宝典啃完了,从而还找了Java后端以及一些大厂的面试场景和面试题不断刷题提高自己的眼界

Java核心面试宝典复习知识

这本Java核心知识把每个知识点解析的很深,对大家应该很有帮助,它把大部分的Java知识集结在一起深入的解析出来(非常建议大伙看一看)

这本文档覆盖了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、Redis、数据结构、算法、大数据等大量知识点。

Java部分:Java基础,集合,并发,多线程,JVM,设计模式

数据结构算法:Java算法,数据结构

开源框架部分:Spring,MyBatis,MVC,netty,tomcat

分布式部分:架构设计,Redis缓存,Zookeeper,kafka,RabbitMQ,负载均衡等

微服务部分:SpringBoot,SpringCloud,Dubbo,Docker

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

求来的大厂面试场景(为了学习提升可以没脸没皮,啊哈哈哈)

我针对这些大厂的面经场景也找了很多题刷,对自身的提升也是非常大(还特意要了份面试答案)

添加图片注释,不超过 140 字(可选)

面试答案

既然是要面试,那么就少不了刷题,实际上面试前,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

根据自身面试经历整理以及不断收集的(珍藏版)

添加图片注释,不超过 140 字(可选)

相关的电子书、底层源码

添加图片注释,不超过 140 字(可选)

阿里巴巴面试必备知识想进大厂的朋友们可以获取看看(对面试进大厂帮助很大)

添加图片注释,不超过 140 字(可选)

对于大厂面试,我最后想要强调的一点就是心态真的很重要,是决定你在面试过程中发挥的关键,若不能正常发挥,很可能就因为一个小失误与offer失之交臂,所以一定要重视起来。另外提醒一点,充分复习,是消除你紧张的心理状态的关键,但你复习充分了,自然面试过程中就要有底气得多。

以上内容中所有的学习资料、面试资料,均可以免费提供,希望大家金三银四面试顺利,拿下自己心仪的offer!

                                                                                                                    

资源获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻微信公众号获取联系方式👇🏻👇🏻👇🏻
精彩专栏推荐订阅:下方专栏👇🏻👇🏻👇🏻👇🏻
每天学四小时:Java+Spring+JVM+分布式高并发,架构师指日可待

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 大厂java后端开发规范包括以下几个方面: 1. 代码规范:大厂java后端开发中非常重视代码规范,包括命名规范、注释规范、代码风格等。合理的命名、清晰的注释以及统一的代码风格可以提高代码的可读性和可维护性。 2. 项目结构:大厂通常会要求有清晰、合理的项目结构,包括分模块、分层等。每个模块的功能要明确,便于团队合作开发和维护。 3. 运行环境:大厂一般会规定开发环境、测试环境和生产环境的配置。开发环境需要包括所需的IDE、数据库、版本控制等,测试环境的配置要与生产环境尽量一致,保证测试的有效性。 4. 数据库设计:在数据库设计上,需要规范表的命名、字段的命名以及数据类型的选择。合理的数据库设计可以提高查询性能和数据存储的效率。 5. 接口设计:对于大型后端项目,接口的设计尤为关键。接口需要规范输入输出参数、返回结果的格式、错误码等方面,以提供给前端或其他系统使用。 6. 测试规范:大厂通常会要求进行单元测试、集成测试和性能测试等。测试代码的编写规范同样重要,可以保证代码的质量和功能的正确性。 7. 代码管理:大厂一般会使用版本控制工具对代码进行管理,如Git。规范的代码提交、分支管理以及代码合并流程可以保证团队协作的顺利进行。 以上是大厂java后端开发规范的几个方面,通过遵循这些规范,可以提高代码的质量和开发效率,同时也有利于团队协作和项目的维护。 ### 回答2: 大厂Java后端开发规范是指在大型软件开发公司或互联网公司中,Java后端开发人员遵循的一定规范和标准,以保证团队合作效率、代码质量和系统可维护性。以下是一些常见的大厂Java后端开发规范: 1. 代码规范:采用统一的命名规范,如驼峰命名法,避免使用拼音或缩写等不规范命名方式。代码格式应统一,使用约定俗成的缩进、空格、注释等规范,提高代码的可读性。 2. 设计模式:遵循常见的设计模式,如单例模式、工厂模式、观察者模式等,提高代码的可重用性和可扩展性,降低耦合度。 3. 异常处理:合理处理异常,使用try-catch块捕获异常并进行适当的处理,避免异常影响系统的稳定性和可用性。 4. 数据库操作:使用数据库连接池进行数据库连接,避免频繁地创建和关闭连接。使用预编译语句或者ORM框架进行数据库操作,提高数据库访问性能。 5. 日志记录:使用统一的日志框架,如log4j、slf4j等,记录关键操作和异常信息,方便系统的排查和定位问题。 6. 并发控制:合理使用线程池和锁机制,控制并发访问,保证数据的正确性和系统的性能。 7. 测试规范:编写良好的单元测试和集成测试,覆盖核心代码。使用相关的测试框架和工具,如JUnit、Mockito等,提高测试效率和代码质量。 8. 安全规范:对用户输入进行合理的校验和过滤,避免安全漏洞。对重要信息进行加密传输,保证数据的安全性。 以上是大厂Java后端开发常见的规范,遵循这些规范可以提高代码的质量和可维护性,提高团队协作效率,保证整个系统的稳定性和可用性。 ### 回答3: 大厂 java 后端开发规范可以从以下几个方面进行描述。 1. 代码风格规范:大厂 java 后端开发规范会要求遵循统一的代码风格,包括代码缩进、命名规范、注释规范等。这样可以提高代码的可读性和可维护性。 2. 设计模式规范:大厂 java 后端开发规范会强调使用设计模式来解决常见的设计问题,例如单例模式、工厂模式、代理模式等。这样可以提高代码的可扩展性和灵活性。 3. 异常处理规范:大厂 java 后端开发规范会明确规定如何处理异常,包括捕获异常、处理异常和抛出异常等。这样可以提高系统的稳定性和可靠性。 4. 数据库访问规范:大厂 java 后端开发规范会规定如何进行数据库的访问,包括使用什么类型的数据库连接池、如何编写 SQL 语句等。这样可以提高数据库操作的效率和安全性。 5. 接口设计规范:大厂 java 后端开发规范会要求清晰定义接口的输入和输出,遵循 RESTful 设计原则,使用合适的 HTTP 方法和状态码等。这样可以提高接口的可用性和易用性。 6. 性能优化规范:大厂 java 后端开发规范会指导如何进行性能优化,包括数据库查询优化、缓存设计和使用合适的并发控制等。这样可以提高系统的响应速度和并发能力。 7. 安全规范:大厂 java 后端开发规范会强调安全性,包括防止 SQL 注入、XSS 攻击、CSRF 攻击等。这样可以提高系统的安全性和抵御恶意攻击的能力。 总之,大厂 java 后端开发规范旨在提高团队协作效率、代码质量和系统性能,保证软件项目的高效开发和稳定运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值