26.4.8 阿里钉钉c++客户端二面
一、基本情况与工作意愿
1.你先做个简单的自我介绍。
2.你在字节实习时的作息是怎样的?
3.早上九点、晚上十点到十一点下班,这种工作强度你能接受吗?
________________________________________
二、字节实习项目:特征平台 / 缓存 / SQL 优化
4.你做的三档 TTL 分层缓存(2 秒 / 10 秒 / 90 秒)是怎么设计出来的?有数据支撑吗?
5.如果业务场景变化了,这些缓存时间你怎么动态调整?
6.你这里用到的 concurrent hashmap / unordered map,是加锁实现还是无锁实现?
7.你提到的 SQL 签名化、UNION ALL 合并查询、事件驱动失效,这整套优化具体是怎么做的?
8.你们的缓存是自己实现的,还是用现成组件,比如 Redis / Memcached?
9.这里“事件驱动失效”里的事件来源是什么?触发缓存更新的时机是什么?
10.你怎么保证这个事件回调一定成功?如果失败了,会不会导致缓存和数据库不一致?
11.如果 SQL 的字段顺序不一样,还能不能归为同一类查询?
12.你这些优化效果的数据是怎么采集出来的?
13.除了缓存优化,你们还做过哪些性能优化?
14.如果现在让你重新设计这套缓存框架,你觉得还有哪些可优化空间?
________________________________________
三、并发 / 网络模型 / 线程池
15.在你的项目里,水平触发和边缘触发是怎么选的?各自适合什么场景?
16.你动态线程池的扩容和缩容策略是什么?
17.你怎么避免线程频繁创建带来的开销?
18.如果线程池队列满了,或者任务队列也满了,你怎么处理?
19.遇到突发流量时,你最保底想保证什么?
________________________________________
四、服务端 / Agent / AI 编程工具
22.你做过服务端开发吗?你更偏服务端还是客户端?
23.你还做过 Agent 项目,是自己写的还是 AI 辅助写的?
24.你现在常用哪些 AI 编程工具?体验怎么样?
25.你会对 AI 编程产生危机感吗?
26.这些 AI 使用能力基本都是你自己学的吗?
________________________________________
五、学习能力 / 解决问题能力
27.你有没有在一两周内快速学习一项新技术的经历?
28.你成长过程中,有没有一个印象很深、最后被你自己解决掉的技术难点?
29.你平时除了搜索、看视频,还会通过哪些方式学习或定位问题?
30.当你面对源码时,你是怎么理解和真正学会它的?
________________________________________
六、工程素质 / 团队协作 / 技术关注
31.你认为一个好的工程师,除了技术能力,还需要具备哪些素质?
32.你们之前团队是怎么做技术分享和技术沉淀的?
33.你自己分享过什么内容?
34.你会经常关注新技术吗?为什么目前更多停留在“表面了解”这一层?
35.你觉得“了解到能用”就够了吗?还是应该继续深挖原理?
1.你先做个简单的自我介绍。
2.你在字节实习时的作息是怎样的?
3.早上九点、晚上十点到十一点下班,这种工作强度你能接受吗?
________________________________________
二、字节实习项目:特征平台 / 缓存 / SQL 优化
4.你做的三档 TTL 分层缓存(2 秒 / 10 秒 / 90 秒)是怎么设计出来的?有数据支撑吗?
5.如果业务场景变化了,这些缓存时间你怎么动态调整?
6.你这里用到的 concurrent hashmap / unordered map,是加锁实现还是无锁实现?
7.你提到的 SQL 签名化、UNION ALL 合并查询、事件驱动失效,这整套优化具体是怎么做的?
8.你们的缓存是自己实现的,还是用现成组件,比如 Redis / Memcached?
9.这里“事件驱动失效”里的事件来源是什么?触发缓存更新的时机是什么?
10.你怎么保证这个事件回调一定成功?如果失败了,会不会导致缓存和数据库不一致?
11.如果 SQL 的字段顺序不一样,还能不能归为同一类查询?
12.你这些优化效果的数据是怎么采集出来的?
13.除了缓存优化,你们还做过哪些性能优化?
14.如果现在让你重新设计这套缓存框架,你觉得还有哪些可优化空间?
________________________________________
三、并发 / 网络模型 / 线程池
15.在你的项目里,水平触发和边缘触发是怎么选的?各自适合什么场景?
16.你动态线程池的扩容和缩容策略是什么?
17.你怎么避免线程频繁创建带来的开销?
18.如果线程池队列满了,或者任务队列也满了,你怎么处理?
19.遇到突发流量时,你最保底想保证什么?
________________________________________
四、服务端 / Agent / AI 编程工具
22.你做过服务端开发吗?你更偏服务端还是客户端?
23.你还做过 Agent 项目,是自己写的还是 AI 辅助写的?
24.你现在常用哪些 AI 编程工具?体验怎么样?
25.你会对 AI 编程产生危机感吗?
26.这些 AI 使用能力基本都是你自己学的吗?
________________________________________
五、学习能力 / 解决问题能力
27.你有没有在一两周内快速学习一项新技术的经历?
28.你成长过程中,有没有一个印象很深、最后被你自己解决掉的技术难点?
29.你平时除了搜索、看视频,还会通过哪些方式学习或定位问题?
30.当你面对源码时,你是怎么理解和真正学会它的?
________________________________________
六、工程素质 / 团队协作 / 技术关注
31.你认为一个好的工程师,除了技术能力,还需要具备哪些素质?
32.你们之前团队是怎么做技术分享和技术沉淀的?
33.你自己分享过什么内容?
34.你会经常关注新技术吗?为什么目前更多停留在“表面了解”这一层?
35.你觉得“了解到能用”就够了吗?还是应该继续深挖原理?
全部评论
相关推荐
查看14道真题和解析