面试经历 – 字节跳动测开实习
由 ChatGPT 生成的文章摘要
博主最近参加了字节跳动的测开实习岗位面试,并分享了面试经历。面试问题涵盖了自我介绍、性能波动原因、性能工具、程序在不同机器上无法运行的原因、Java程序问题排查、程序的健壮性验证、常用Linux命令和性能监控命令等多个方面。在回答过程中遇到了困难和回答不上来的问题,整体感觉自己不够好,最后的算法题也没有做出来。博主对于自己面试表现不满意,打算后续继续学习和提升。

面试经历 - 字节跳动测开实习

前几天用某位朋友的内推码投递了字节的“测试开发实习生-系统架构”一职,本来泡池子了,结果硬是被这位朋友捞起来了,于是昨天下午收到了字节 HR 打来的约面电话,了解了一些基本信息后,约定了在今日下午五点进行面试。

不得不说字节的面试体验确实很好,但是掩盖不住我太菜了,感觉答得都不好,算法题也没做出来。🥲🥲🥲🥲

下面是问的一些问题:

  • 介绍一下自己
  • 问一下如果一个业务的性能波动比较大,你有什么想法?(排查测试环境,应用自身原因,性能工具监控)
  • 既然聊到了性能工具,能简单介绍一下有哪些以及他们的原理吗?(jprofiler,覆盖率检测)
  • 如果一个可执行程序在 x86 机器上能跑但是在 ARM 的机器上不能跑,你认为有什么可能的原因?(系统架构,编译,代码问题)
  • 如果一个 Java 程序出现了上述问题,具体可能会有什么原因?(JNI 调用,Magic code,面试官随后补充 JDK 版本原因)
  • 如果需要让你验证一个程序包的健壮性,都会从哪些角度去验证(压力测试,内存泄漏)
  • Linux 常用命令(ls, pwd, rm, cd
  • Linux 常用性能监控命令(只记得 netstat,面试官后续补充例如 free 等命令)
  • 对软链接的了解(路径映射)
  • Linux 权限相关了解(chmod,Linux 权限组成)
  • Linux 设置环境变量(export,刚开始答成 PowerShell 的$env 了,被指正了以后改过来了)
  • Java 函数分配原理(堆栈)
  • 简述 Java 的堆和栈(对象创建在堆上,基本数据类型创建在栈上)
  • 简述 Java 垃圾回收机制(标记,计数,G1新生代老年代)
  • 如何判断对象是否存活?
  • 对象标记是从 root 开始的,那么 root 是从哪些信息或者哪些变量里获得的(不会,瞎说的)
  • 如何理解 STW,STW 会在什么情况下发生?
  • 简单描述一下线程池(分配,调度线程)
  • 协程和线程池的优缺点(用户态,占用小)
  • 简述 Maven 和 Gradle 的功能或特点
  • 如果希望在 Maven 项目中通过 JNI 加载并调用一个本地 .so 文件,应该如何配置 Maven(我没听懂这个题,瞎答了一通,实际上面试官想让我回答打包 JAR)
  • 展开讲讲 JVM 的编译和解释执行(.class, .java, JIT, AOT,热点代码)
  • JVM 是从什么角度进行了跨平台的适配(没答好,只说了中间字节码)
  • 对编译链接的了解(还是没答好,他其实问的是 JVM 的链接,但我没答)
  • 对 x86 和 ARM 架构指令集的了解(不会)
  • 简单讲讲项目经历
  • 算法题:找出最大的湖(DFS,没做出来,全程被指导)

感觉应该一面挂了🥲,⑧说了,回炉重造去了。

扫码关注 HikariLan's Blog 微信公众号,及时获取最新博文!


微信公众号图片

评论

  1. 江湖刀
    Linux Firefox 117.0
    1 年前
    2023-9-14 19:46:29

    呜呜呜,我啥都不会

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇