职位题库

应用软件开发工程师面试题库

面向应用软件开发工程师相关面试,围绕计算机网络、HTTP、算法、SSE、WebSocket等主题展开练习,结合题目考察点、回答思路、参考答案和常见误区,梳理知识要点并练习清晰表达。

22 道题目建议用时 66 分钟专项面试练习

全部题目 22 道题

13

在多线程并发场景下,你如何保证共享数据操作的安全性?请结合具体做法说明。

考察候选人对并发安全的理解是否落到实际手段,包括锁、原子操作、线程安全容器和不可变设计等。
14

Java 线程池需要配置哪些核心参数?你会根据什么指标决定线程数?

考察候选人对线程池参数含义和配置依据的掌握,能否从任务类型和系统指标推导线程数,而非套用固定数字。
15

请现场实现一个洗牌算法,并说明它为什么能保证每种排列等概率出现。

考察候选人能否正确实现 Fisher-Yates 洗牌,并理解等概率性,避免常见错误写法。
16

WebSocket 和 SSE 有什么区别?分别适用于什么场景?

考察候选人对两种服务端推送技术的协议差异、通信方向和适用场景的理解。
17

如果现在要拆分一个单体项目为微服务,你会遵循哪些原则?按业务领域拆分后是否一定越细越好?

考察候选人对微服务拆分原则和服务粒度的理解,能否结合业务边界、团队和运维成本做权衡。
18

请设计一个基于 Playwright 的自动化方案,并说明你的设计思路。

考察候选人是否真正理解 Playwright 的架构与自动化设计,而非只会调用 API。
19

你的 Agent 项目为什么选择 SSE?SSE 与 WebSocket 有什么区别?

考察对实时通信协议的理解,以及技术选型是否能结合业务场景。
20

实现股票买卖最大利润算法,并讨论输入递增、递减及无交易次数限制时的改法。

考察基础算法能力、边界分析以及根据约束变化调整解法的能力。
21

从输入 URL 到页面展示,网络层发生了什么?

考察计算机网络基础的系统性和表达完整度。
22

接口响应特别慢时,你会如何系统排查?

考察线上问题定位的方法论和工程经验。
返回面试题库