字节一面

  1. 自我介绍
  2. 项目
  3. java中的线程池?如果要自己设计一个线程池要怎么做?
  4. 线程池中的队列是用来保存运行中的线程还是等待中的线程?
  5. 线程池有哪些拒绝策略?
  6. 最大核心线程数是能运行的最多的线程数吗?
  7. 线程池中有些线程在运行,有些线程是阻塞在等待,要对线程进行调度,那么这个调度的过程是阻塞的还是非阻塞的?(没太理解)
  8. 要自己设计LRU要怎么做?
  9. 对于缓存要设置过期时间,过期的缓存要处理,有什么方案吗?
  10. 除了自己设计的方案,有了解Redis中的缓存淘汰策略吗?
  11. 缓存+数据库的设计模型中,读写的过程大概是怎么样的?数据更新的逻辑大概是怎么样的?
  12. 缓存与数据库不一致的问题,有什么解法吗?
  13. 对于数据库并发更新的问题,有什么解决方案吗?
  14. 手撕,判断树B是否为树A中存在的子结构

反问:

  1. 对于程序员的年龄危机,以及大模型的越来越强大的代码生成能力,有什么看法吗
  2. 职业道路规划大概有哪些方向
  3. 大厂的工作强度中,如何保持工作和生活的平衡
  4. 对读研有什么看法?

面试体验还是很不错的,但是自己已经很久没准备了(拿到保底offer没什么动力了),很多其实都忘了,面试官人也很好,一直有引导,代码题也和我讨论了很久。有可能是春招最后一两个面试了,不管怎样好好迎接未来吧。

全部评论
好奇面试官的回答
点赞 回复 分享
发布于 05-12 23:19 湖北

相关推荐

05-01 16:03
已编辑
门头沟学院 安卓
1 技术深度受限,容易陷入“业务逻辑搬运工”:客户端开发的核心工作往往围绕UI搭建、数据绑定、API调用和基础性能优化展开。在业务逻辑简单的App(如工具类、信息展示类)中,开发者容易沦为“调API工程师”,长期处理重复性高的UI调整和兼容性问题,难以积累核心技术竞争力。即便涉及复杂交互(如动画、手势),也大多依赖系统API或第三方库,真正需要底层优化的场景较少。相比之下,后端开发涉及高并发、分布式架构、数据库优化等更硬核的技术挑战,算法工程师则需钻研数学模型和训练调优,职业成长路径更清晰。  2 转型路径狭窄,技术栈封闭性成阻碍:  客户端技术栈(iOS的Swift/OC、Android的Kotlin/Java)与其他领域(如后端、大数据、AI)差异较大。若想横向转型,开发者需从零学习新语言(如Go、Python)、系统设计(如微服务、分布式存储)或算法基础(如机器学习、深度学习),成本远高于前后端之间的切换。许多客户端开发者工作5~8年后陷入“高不成低不就”的困境:既难以在客户端领域继续突破(高阶架构岗稀缺),又缺乏跨领域竞争力,被迫在薪资停滞的中级岗位徘徊。  3 管理岗机会稀缺,高阶岗位竞争激烈: 客户端团队在互联网公司中的规模通常远小于后端。例如,一个日活千万的App可能只需5~10名客户端开发者,但需要30~50名后端工程师支撑服务。这导致客户端管理岗(如技术总监)数量有限,晋升通道更拥挤。此外,客户端架构师岗位往往集中在头部大厂,要求候选人既精通系统底层(如Android Framework、iOS Runtime),又具备跨端架构能力(如Flutter引擎优化),门槛极高。多数中小公司的客户端团队甚至不设专门架构岗,技术纵深发展空间被进一步压缩。      
点赞 评论 收藏
分享
评论
1
7
分享

创作者周榜

更多
牛客网
牛客企业服务