精选

看似上岸?实则道阻且长!

这里我就以小学生式的”流水账“记录我秋招情况、近期的面试情况以及面经,最后附上我接下来要努力的方向吧!

想必大家也都知道,陆续很多大公司都已陆续开奖。可是似乎都与我无关,没有做到雨露均沾啊喂!!!简单来说,就是秋招 0 offer,让我心碎不易😢

好在唯一让我稍感希望的事情,就是有一份离学校近,产品自研,业务较为感兴趣,技术较为靠前,能够包转正(但我自己还是觉得不一定)的 Java 后端开发岗的 offer,下周一正式入职。让我不那么蕉绿吧,至少有点盼头,有个保底。再不济,在这份实习,学到技术,磨练自己,可以在后续的求职多一点底气和实力!

自己从八月开始投递简历(大公司走官网,非互联网大公司走的是 boss 直聘),也不是每天都在投,频率时高时低。目前官网投递应该 50+,boss 直聘沟通 1400+,交换简历近 200。投的时候,邀约面试其实并不多。后续我吸取了各路大佬的建议和指导,在这周面试邀约就巨多,一路累积到了 10 面!(含 hr 面)可把我累坏了,其中我即将入职的公司,就在其中。后面我会贴出记录的面经(含部分答案和当时的回答):happy:

DXC面试

ps:应该是凉了,对面老是打断我,面试体验不好,前段问的问题基本不会

一面(偏 hr 面):

  1. 介绍自己的实习项目(ai 智能问答助手和 ERP 物流管理系统)
  2. hashmap 扩容
  3. 给你一个前端项目,你如何启动运行?

二面(技术面)

  1. Spring、SpringMVC、SpringBoot的区别

  2. MVC 又是什么?

    M - model V - view C - controller

  3. 为什么 SpringBoot 可以不用配置,就可以迅速启动

    Springboot 工程中,有一个入口文件中的 main 函数,上面有一个 @SpringBootApplication,里面是有一个注解@EnableAutoConfiguration。这个注解呢,里面是可以自动读取项目的上下文,加载注入所需要依赖的 bean 对象。

    同时还会根据 META-INF 下的 spring.factories 文件找到对应所需要自动加载的类

  4. IOC 控制反转三种注入方式

  5. Mybatis 为什么将对象和数据表做映射(xml 文件)

  6. redis 缓存雪崩、缓存击穿、缓存穿透

  7. bloom过滤器的如何降低误判的可能呢

    1. 元素删除,但是我们不能直接删除,因为有多个值共有一个 bit 位。所以我们得额外设置一个变量,来记录共用次数,删除就减一操作,直到次数为零时,删除该元素。(这种要降低误判率,我们就得要增加内存空间了。)

    2. 设计更加合理的 hash 函数,减少碰撞率。

    追问:为什么 bloom 过滤器会有误判的情况呢?

    就是因为他用的是 hash 函数做位置映射,相同的 bit 会被设置成为 1

  8. sql 优化(回答思路)

    先讲方案,后讲场景(场景一般用于扩展,因为对方不一定有耐心听!)

    • 慢日志定位
    • explain 分析执行计划
  9. sql 里有函数有什么坏处

    比如:索引字段加上函数计算,会存在索引失效的可能

  10. left join 和 join 的区别(订单表和订单详情表为例子)

    join 是内连接,求两张表的交集

    所以说,在出现订单表有订单,订单详情没有该订单记录,我们使用内连接 join 其实是更为合适的

    左连接

    右连接

  11. 消息队列如何保证幂等性呢?

  12. 工厂模式有哪些

    简单工厂模式

    抽象工厂模式

    工厂方法模式

  13. 盒子模型

  14. js 中数组,你知道有哪些操作

  15. jQuery 中如何获取指定的类名呢

  16. flex 布局是什么

阿拉丁面试

ps:对方似乎对我感觉还不错,笑盈盈的,结果未知,看后续是否通知吧

一面(含 hr 面)

  1. 你这个多模态接口如何做的?
  2. prompt 如何优化的?还知道哪些 prompt 指令的优化么?
  3. 给你一个字符串,如何快求出第四个字符的内容(String.charAt(i))
  4. 分布式事务是什么
  5. 用过哪些数据库(mysql 、redis、mongodb、es)
  6. 慢 sql 如何定位?
  7. 抗压能力怎么样
  8. 领导给你一个比较难得任务,你会怎么办?
  9. 上一家为什么离职

天源迪科面试

ps:结果五五开吧,二面主管似乎对我不太满意,就是因为我填表不完整,面试提问之前,对我进行教育一番😢,看后续结果

笔试(选场景题来讲)

  1. @Qualifier有什么用
  2. 排序十亿用户电话号码,尽可能小内存(思路 和伪代码)
  3. 如何发现系统中内存泄漏

一面

  1. 反射能够访问私有变量么,如何防止

  2. 多个线程如何顺序写数字

  3. 创建线程的方法有哪些

  4. 现在有多个线程写入 redis ,写入的顺序是怎么样的

  5. jvm 的内存模型有了解么

  6. sql如何优化

  7. tcp 三次握手

  8. linux操作会哪些

  9. ioc和 aop

  10. 分库分表有了解过么(MyCat 组件)

  11. redis如何在springboot配置

  12. kafka消息队列中分区消息能够一对多吗

  13. arraylist

  14. 多态

  15. 读取文件中百万数据,如何快速写入数据库

    读文件阶段:

    (1) 采用 bufferReader 字符流读取

    (2) 批量读取

    写入数据库

    (1) 在并发低的业务情况下,修改 MySQL 的隔离级别

    (2) 并发写入

    (3) 修改更新日志的参数,innodb_flush_log_at_trx_commit (将默认的 1 修改为 0,每秒提交一次)减少 IO 开销

二面

前面这个领导,就在巴拉巴拉说要我填写的表格信息没填完(我没填家庭信息),估摸有十分钟 😦

  1. 大模型如何训练数据的(应该是想我问细节)
  2. 你这接口qps为什么提升了50倍
  3. 为什么不用消息队列,而要自己写框架
  4. nps是什么 评价:开发经验较为丰富,基础知识有些许遗忘

悠饭面试

ps:面试通过,offer 已发

笔试

基本正确,sql有瑕疵,一道选择题不对

java
复制代码
class solve{ public static void main(String args[]){ String aa = "a"; int b = 1; int c = 2; System.out.println(aa + b + c);// 问结果是什么?我当时说是编译错误??? // 经过验证,字符串是可以直接跟整数进行字符串拼接的!!!可以讲整数 int 类型转换成 String 类型!!! } }

一面

  1. String a = “abc”和 String b = new String("abc") 进行== 比较,true 还是 false,为什么

  2. 讲讲 list

  3. arraylist 如何扩容(新开空间,再复制)

  4. list 遍历删除可以么

  5. hashmap 扩容机制?

  6. 系统异常你怎么排查(没有日志查看)

    text
    复制代码
    面试官是有引导我的,因为我最终没说到时数据库执行 sql 层面导致的系统异常 我当时是这么想的,从系统接受请求到执行请求到返回请求整个链路去思考,所以有三个方面可以讲 1. 请求过来,可能是网络问题 2. 代码问题(死循环等bug 错误),可能会有运行异常(oom、空指针、边界异常),第三方调用超时异常。后面我说看日志发现异常,定位代码bug,但是面试官说没有日志可以看,如何解决?其实他可能是想提醒我是执行 sql 层面的问题
  7. 如何判定系统是否有内存泄漏的风险?(用 jvisualvm 监控 jvm, 查看 gc 次数,以及内存分布情况和走向)

    text
    复制代码
    详情可以康康 why 师傅关于内存泄漏如何处理的文章 https://mp.weixin.qq.com/s/xTL-8OqF5vpMnr_eJeJgGA
  8. 接口超时你怎么做

  9. 发现慢 sql 如何做

  10. sql 优化 你怎么做

  11. 表你如何设计

  12. 如果我不知道有哪些字段要设计,如何做冗余列(增加相同数据类型作为备份列)

  13. 设计模式中适配器模式你讲一下

  14. 消息队列如何保证消息不丢失,不重复

  15. varchar(6) 和 char(6) 的区别

  16. redis 你除了用分布式锁、缓存,还知道哪些应用场景

  17. redis 能做消息队列么 用什么数据结构? 如何实现? 和 kafka 有什么区别?

  18. 讲讲你对卡发卡的理解

  19. 什么是消费组?同一个分区消息可以重复么?

  20. 索引失效的场景是什么

    二面

  21. 你知道有什么消息队列可以保证消息不丢失么

  22. 要记录接口的一些信息,你会采用什么方式

  23. 有哪些注解(aspect前置 后置 环绕)

  24. 除了你说你熟悉 kafka,你有了解过 RabbitMQ 或者是说 RobbitMQ?

  25. ack机制什么(我当时直接用 TCP 三次握手的 ack 来类比了)

    text
    复制代码
    这里他应该是想问问关于 RabbitMQ 这个消息队列中的 ack 机制,我当时不懂,我敲
  26. hashmap扩容步骤

  27. 红黑树如何平衡的?(这里有点崩,我直接说他是平衡树,左右子树高度差超过阈值,就会平衡😢 )

  28. 有哪些集合

  29. 消息如何不丢失

  30. concurrenthashmap介绍一下

  31. 1.8用分段锁 后面的版本呢

  32. springboot如何创建代理(答了个proxy和反射)

  33. 有用过 dubbo 么,简单介绍一下

  34. 低代码开发,若依框架,你们是什么工作模式

  35. linux如何改用户密码

  36. linux如何重命名指令

  37. 如何添加用户

  38. 如何执行shell脚本

  39. 环境变量放在哪

  40. 职业规划是什么

  41. 你知道我们公司是什么公司么 总监建议: 1.基础学深,技术学广 2.要有明确的短期目标 3.系统学习,不能一点一点学习 评价:人还可以,基础深度不够,有一定技术广度

天识科技一面(杭州)

ps:通过,二面线下面,已拒

  1. 讲讲多模态接口开发,你是如何实现的
  2. 任务调度框架是什么,简单介绍一下
  3. 倒排索引(es)讲讲
  4. 为什么你会想到采用并发编程(你自己想的还是mentor跟你说的)
  5. 开发ai智能助手 你遇到的困难的是什么

融力通

一面含hr面(深圳)

ps:通过,二面线下面,已拒

  1. ai智能助手,你负责什么模块
  2. 遇到最困难的事情是什么
  3. 个人开发和团队开发你觉得差别在哪里
  4. 一个and和两个and区别(位运算和逻辑运算)
  5. 重载和重写的区别
  6. callable和runnable x别
  7. 什么是hash冲突
  8. hashmap扩容
  9. hashmap为什么线程不安全
  10. error 和 exception 的区别
  11. 单例模式是什么
  12. 慢sql优化
  13. 类加载器的类型
  14. 索引的类型(非数据类型)
  15. list集合有哪些(线程安全,非线程安全)
  16. list和set的区别
  17. sql几个函数有哪些(说3-4个)
  18. 锁的优化(我从synchronized优化出发
  19. 分布式锁的特点
  20. fullgc是什么
  21. redis的数据结构有哪些
  22. 泛型是什么 有什么作用

后续计划

下周一就要入职了!打工人启动!😢

短期目标

(1)看完两本技术书籍(Java 相关的 和 linux 相关)

(2)leetcode 100(五遍,目前是两遍),每周周赛训练

(3)争取春招能够谋求更大的公司!㊗️

计划:

(1)要得继续保持算法题感了,之前面试强度大,一个星期都没写算法了...

(2)开始回顾基础知识的积累,形成系统学习(就是因为总是看速成面经,没有系统学习,所以回答出来的点总是一点一点出来,很不体系!因此也建议有时间的鱼友,多去看看经典书籍,内力沉淀是需要时间的!)

(3)记录学习内容,包括公司和下班后的学习

(4)开始准备毕设,导师说要开发要结合算法进行(还在思考,有点想搞共识算法 Raft 吧)

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
Louis
下载 APP