字节跳动Java项目面试:抖音直播岗位面经

一面:

面试的是一个小姐姐,面试体验很好,会根据回答抛出问题,过程还算顺利,没太多卡壳的地方

可以正式面试前模拟面试准备一下比如这个多面鹅模拟面试不仅可以帮你模拟面试可以进行面试复盘而且因为ai基本也都是结构化答案你完全可以参考给的答案最关键的复盘可以帮你分析面试问题哪里回答的不好帮你查漏补缺

OfferGoose 多面鹅官网 - AI 面试模拟 | 实时面试提醒 | 通过面试

 

1.自我介绍

2.项目介绍

3.项目用到token,说一下

4.项目如何实现的,如果多终端呢

5.还可以存放在哪里session

6.那cookie是什么

7.为什么当时没有这么实现?回答:因为不会

8.算法题:正整数开根,保留两位小数

9.JMM说一下(开始背书)

10.说到线程,那么线程是属于哪块区域的11.GC说一下 (开始背书)12.有用过hashmap吗?实现?13.是线程安全的吗?14.想要线程安全怎么办?15.(经典HashMap背书)16.为什么使用红黑树17.红黑树特性

18.和平衡搜索二叉树的区别19.时间复杂度?

20.在浏览器输入一个网址会发生什么?(背书了背书了)

21.TCP/IP模型和OSI模型22.用过索引吗

23.怎么样确定使用到了索引24.索引类型25.为什么用B+树26.和B树有什么区别27.聚簇索引和非聚簇索引28.有用过锁吗

29.说一下lock和synchronized的区别30.代码题:手写一个单例模式吧(默写)31.看到有volatile关键字32.说一下volatile吧33. 和synchronized的区别34.乐观锁悲观锁35.反问环节

一面结束,问了面试官感觉面试下来感觉如何,说挺好的,就是有的地方遗忘了,希望后续补全一下知识点。

一面的大量背书直接导致我后续准备接着复习基础,而且一面没有问到计网和多线程,操作系统的知识,感觉之后面试可能是重点,就开始重点准备这一块。

二面 (2.753min)

这次的面试官起来就知道是一个大佬,后来问的一些问题也证明了我的猜想

1.自我介绍

2.没有问项目,问为什么没有实习,自己学习是怎么样学习的,课程成绩

3.你觉得自己相比一年前进步了多少

4.算法题:编辑距离

我直接说了我刷到过这道题,然后开始默写,写完了问到替换的时候,我卡住了,就是因为这么卡了一下,让面试官认为我是在背题,后面思考了一会就说了出来,然后还问了我状态转移方程是什么,我说我做动态规划不太会写这种方程,然后大概解释了一下状态有哪几种,状态之间是如何转移的。开始提问:

5.你使用的是什么版本的jdk?

硬着头皮说1.8,因为我也没在意,然后开始问

1.6和1.71.8的差别

(没准备,从JMM角度和HashMap角度说了一下)

6. HashMap和HashTable的区另是什么

7.那么HashMap有没有线程安全的版本

8.如何实现的?

<think>好的,我现在需要处理用户关于代码治理红黑榜机制的问题。用户希望了解红黑榜的实施方案或示例。首先,我得先理解红黑榜在代码治理中的具体作用和应用方式。红黑榜通常用于激励和惩戒,红榜表彰优秀实践,黑榜则指出需要改进的地方。接下来,我需要结合之前的引用内容,特别是引用[2]中提到故障演练和持续改进的思路,这可能与代码治理中的机制设计相关。 接下来,我需要考虑如何结构化解答案。用户可能期望具体的步骤、示例以及相关的问题。需要确保回答符合之前的系统级指令,比如使用正确的中文,数学公式格式,以及引用标识。但当前问题不涉及数学公式,所以可能不需要用到LaTeX数学格式,但代码部分需要用正确的格式展示。 然后,我需要回忆或查找代码治理红黑榜的常见实施方案。例如,红榜可能包括代码规范、评审优秀案例,而黑榜可能涉及常见错误或违规行为。实施步骤可能包括制定标准、建立评审机制、定期公示、奖惩措施等。同时,可能需要引用类似引用[2]中提到的持续演练和改进的理念,强调红黑榜的持续性和反馈机制。 还要注意用户提到的“示例”,所以需要提供一个具体的例子,比如某个公司的实施情况,或者一个简化的模型。此外,生成的相关问题需要与代码治理和红黑榜相关,可能涉及效果评估、挑战、与DevOps结合等。 需要确保回答的结构清晰,分步骤说明,并包含示例代码或流程。同时,引用部分要自然融入,比如在提到持续改进时引用[^2]。最后,检查是否符合所有格式要求,避免使用markdown,用中文回答,并正确添加引用标识。</think>### 代码治理红黑榜机制实施方案示例 #### 一、红黑榜机制设计目标 1. **正向激励**:通过红榜表彰优秀代码实践,提升团队代码质量意识 2. **反向约束**:通过黑榜公示典型问题,减少重复性错误和违规操作 3. **可视化治理**:建立量化评估体系,实现代码质量的持续改进[^2] #### 二、实施步骤与示例 **1. 标准制定阶段** - 红榜标准示例: ```markdown ✅ 代码注释覆盖率 ≥80% ✅ SonarQube扫描零严重漏洞 ✅ 代码评审通过率100%且无返工 ✅ 创新性技术方案(如优化性能30%+) ``` - 黑榜标准示例: ```markdown ❌ 存在安全漏洞未修复直接上线 ❌ 重复代码率 >15% ❌ 绕过CI/CD流程强制合并代码 ❌ 单方法超200行/圈复杂度>15 ``` **2. 评审机制建设** - 采用**双轨制评审**: - **自动化检测**:集成SonarQube/Checkstyle等工具,每日生成质量报告 - **人工评审**:成立代码治理委员会,每周进行案例复审 - 示例评审流程: ``` 代码提交 → 自动化扫描 → 问题分类 → 红榜提名/黑榜预警 → 委员会终审 → 结果公示 ``` **3. 公示与奖惩(示例)** - **红榜奖励措施**: - 月度优秀案例展示在技术wiki - 奖励技术书籍/培训机会 - 绩效考核加分(如+5%) - **黑榜改进要求**: - 强制参加代码规范培训 - 问题代码结对重构 - 连续三次上榜者暂停代码合并权限 #### 三、技术实现参考方案 ```python # 红黑榜自动检测脚本示例 class CodeGovernance: def __init__(self, repo): self.repo = repo self.metrics = self._get_code_metrics() def evaluate(self): if self.metrics['duplication'] < 0.15 and self.metrics['coverage'] > 0.8: return "红榜提名", self._generate_report() elif self.metrics['vulnerabilities'] > 0 or self.metrics['complexity'] > 15: return "黑榜预警", self._highlight_issues() def _get_code_metrics(self): # 连接代码分析工具API获取数据 return { 'duplication': 0.12, 'coverage': 0.85, 'vulnerabilities': 2, 'complexity': 10 } ``` #### 四、持续改进机制 1. **动态调整标准**:每季度根据团队能力提升修订评估指标 2. **案例复盘制度**:每月组织黑榜案例深度分析会 3. **质量趋势可视化**:建立代码健康度仪表盘,展示关键指标趋势图
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值