首页 > 其他分享 >OPPO 后端开发 一、二面面经

OPPO 后端开发 一、二面面经

时间:2023-01-10 21:56:19浏览次数:60  
标签:面试官 缓存 Java 项目 面经 线程 SQL 二面 OPPO

你好,我是 Guide,看了这么多面试成功的经验分享,今天来看一个读者分享的 Oppo 秋招面试失败经历。

面经合集请看:Java面试题&面经精选集

下面是正文(文中的我为读者本人)。

个人情况

我的学校可能比大部分同学都比较差,是一个很一般的二本,土木专业转的计算机专业。

大三之前一直在做 C 语言开发,期间只在课堂上学习过 Java ,对其并不是特别熟悉,仅仅使用 Java 基于 Java FX 做过一个小的课程设计,主要用到了爬虫、MySQL、网络编程等技术。

大三上学期听学长们说,Java 后端的岗位比较多,比较容易找到工作。于是,我开始主攻 Java 后端。在学长的推荐下,我使用尚硅谷作为主要的学习资料,通过 JavaGuide 在线网站(https://javaguide.cn/ ) 作为课后复习资料并使用其准备对应的八股文和知识点,平时没事就会拿出来看看。

这两份资料都是学长推荐的,很不错,他毕业之后去了美团,也算是大厂了。

大概花了快一年的时间完成了 Java 后端常见知识点的学习。简历上一共两个项目,一个已经上线,另外一个是跟着视频做的。跟着视频做的这个项目改了个比较像正式项目的名字,简单完善了一下放在了简历上。

笔试了很多家公司,可能是因为自己没有重视笔试或者学校比较差的原因,只有 Oppo 的笔试通过了,给了面试机会。

技术面试体验还不错,但终究还是凉了。。。心塞。。。

一面

  1. 万年不变的自我介绍,突出个人优势即可。
  2. 面试官夸我长的很精神,我:???。然后,问我平时是怎么安排学习时间的,项目都是和谁一起做的。
  3. 开始疯狂问项目。讲讲项目的整体业务,技术架构,自己负责哪一块。
  4. 你们用的 Java 版本是什么?Java8 有哪些让你印象深刻的新特性?
  5. 为什么会考虑使用多线程优化?有什么好处?
  6. 如何创建线程?你比较推荐哪一种方式?为什么?
  7. Java 线程的状态有哪几种?
  8. Java 如何保证变量的可见性?(volatile 关键字)
  9. volatile 可以保证原子性么?(volatile 关键字能保证变量的可见性,但不能保证对变量的操作是原子性的)
  10. 了解 synchronized 和 ReentraLock 吗?有何区别?如何选择?
  11. 多级缓存的是怎么做的?为什么还要再多加一层本地缓存呢?对性能提升大吗?QPS提升多少?
  12. Redis 数据类型有哪些?String 的应用场景有哪些?String 还是 Hash 存储对象数据更好呢?
  13. 如何保证缓存和数据库的一致性?
  14. Redis 缓存穿透、缓存击穿、缓存雪崩区别和解决方案
  15. 想来深圳工作吗?如何看待加班?
  16. 有什么想问的?(自己进入公司之后可能会做什么,自己的表现)

一面的面试官还挺不错的,很有耐心,没听太懂的问题会再继续给我解释,点赞!

面试官对我评价应该还挺好的(二面面试官说的),虽然也有一些问题没有回答上来或者回答的并不好。

个人觉得一面还是比较有难度的,问了很多并发和 Redis 相关的问题,面试官还是很有水平的。

二面

  1. 自我介绍
  2. 问项目。项目的整体业务,技术架构,怎么分配工作的。
  3. 数据库表的设计思路。
  4. 项目是如何部署的?上线了吗?每天有多少人访问?
  5. 为什么要用线程池?项目中使用的线程池是使用内置的还是自己创建的?
  6. 线程池的原理,饱和策略有哪些?你项目中用到的是哪种饱和策略?为什么?
  7. 项目开发过程中进行过 SQL 优化吗?
  8. 如何找慢 SQL?(MySQL 慢查询日志是用来记录 MySQL 在执行命令中,响应时间超过预设阈值的 SQL 语句)
  9. 如何分析 SQL 的性能?(可以通过 EXPLAIN 命令分析对应的 SELECT 语句)
  10. 项目中是怎么使用索引的?联合索引了解吗?
  11. Java 多态的优点?
  12. String 为什么是不可变的?
  13. 你在校的代码量怎么样?
  14. 有什么想问的?(自己进入公司之后可能会做什么,自己的表现)

挺奇怪的。。。个人感觉和面试官聊的还挺好的,结果直接挂了。

说实话,看到结果的时候,我真的一脸懵逼,很绝望。还是不要抱太大的期望,期望越大,失望越大!

今年是真的难啊!!!

总结

简单复盘了一下自己的面试过程,个人反思自己或许在下面这些方面存在问题:

  1. 项目经历的一些细节没有回答好,可能会让面试官觉得项目比较假,并不是真实的。
  2. 八股文的回答过于书面化,还是没有吃透成为自己的知识。
  3. 性能优化相关的问题回答的过于简单,面试官的一些追问没有回答好。

寒假好好准备一下,继续完善一下简历,刷一波笔试题,冲击一波明年的春招,希望能够找到满意的工作。感谢你能看到这,也祝大家能够找到满意的工作!

标签:面试官,缓存,Java,项目,面经,线程,SQL,二面,OPPO
From: https://www.cnblogs.com/javaguide/p/17041467.html

相关文章

  • 前端二面经典vue面试题指南
    v-model的原理?我们在vue项目中主要使用v-model指令在表单input、textarea、select等元素上创建双向数据绑定,我们知道v-model本质上不过是语法糖,v-model在内部为......
  • OPPO暑期实习记录
    1、浏览器业务接入Goblin自动化测试框架1)传统单元测试痛点>单元测试数据依赖复杂且无法实现数据隔离>mock框架学习成本高,代码冗余>基于内存实现成本高,且易出现生产环境......
  • 2023前端二面必会vue面试题指南
    action与mutation的区别mutation是同步更新,$watch严格模式下会报错action是异步操作,可以获取数据后调用mutation提交最终数据Vue路由hash模式和history......
  • 校招前端二面常考react面试题(边面边更)
    高阶组件高阶函数:如果一个函数接受一个或多个函数作为参数或者返回一个函数就可称之为高阶函数。高阶组件:如果一个函数接受一个或多个组件作为参数并且返回一个组件就......
  • 温故知新 - 靶机练习-Toppo
    今天闲来无事,重新做了一下以前做过的第一个靶机(https://www.cnblogs.com/sallyzhang/p/12792042.html),这个靶机主要是练习sudo提权,当时不会也没理解。开启靶机,直接告诉了......
  • 前端二面vue面试题(边面边更)
    Vuex有哪几种属性?有五种,分别是State、Getter、Mutation、Action、Modulestate=>基本数据(数据源存放地)getters=>从基本数据派生出来的数据mutations=>提交......
  • 阿里前端二面必会react面试题总结
    非嵌套关系组件的通信方式?即没有任何包含关系的组件,包括兄弟组件以及不在同一个父级中的非兄弟组件。可以使用自定义事件通信(发布订阅模式)可以通过redux等进行全局状态......
  • 校招前端二面高频vue面试题
    vue-router中如何保护路由分析路由保护在应用开发过程中非常重要,几乎每个应用都要做各种路由权限管理,因此相当考察使用者基本功。体验全局守卫:constrouter=createR......
  • 2023前端二面高频vue面试题集锦
    vuex是什么?怎么使用?哪种功能场景使用它?Vuex是一个专为Vue.js应用程序开发的状态管理模式。vuex就是一个仓库,仓库里放了很多对象。其中state就是数据源存放地,对应于......
  • 校招前端一面经典react面试题(附答案)
    React.forwardRef是什么?它有什么作用?React.forwardRef会创建一个React组件,这个组件能够将其接受的ref属性转发到其组件树下的另一个组件中。这种技术并不常见,但在以下......